Favorite Links

Standard disclaimers apply: I’m not responsible (legally or morally) for the content or availability of any of these links, nor for the accuracy of the information presented on any of those pages, or even on this one. I’ve tried as hard as I could to make this page both useful and accurate, but I can’t accept liability for anything anyone else does based on this information.



(unless noted otherwise, these are not “affinity” links – I get no credit of any kind for linking to them)


Updated hourly with deals on computer hardware and software, other electronics, and miscellaneous.

Fred Langa List

Newsletter with PC info, links, downloads, and advice.


Check out email urban legends and other hoaxes (or, maybe you got a real one!)


Ask Nick (Francesco): PC Guru (& media critic, apparently), in Rochester, NY.

PC Pit Stop

Online diagnosis of your PC, with suggestions and recommendations. No popups or annoying ads.


or    https://grc.com/x/ne.dll?bh0bkyd2

Check out the security of your internet connection and firewall.


Anti-popup software.

Google Toolbar

Download a toolbar: Allows you to search, and it blocks popups, too.


Displays links to sites whose content is similar to the one you’re currently on. (Note:  ucmore is reported as spyware by several anti-spyware programs; I’m comfortable that it’s not spyware.)

Techsupport.com: 46 Best Freeware Utilities

There’s also a newsletter to subscribe to, with a Free and a Paid Subscription version.

Trend Micro's Housecall Online Scan

A really good online scanner, detecting Malware (Spyware, Adware, and other –ware) and Viruses, as well as security holes in MS Windows. And unlike some other free scanners, it actually fixes problems (not the Windows security problems, though it tells how to resolve those), as well. A great addition to a toolkit.

Must be run from Internet Explorer.


Summarizes weekly specials in local stores by state. Mostly focuses on tech & electronics (computers, peripherals, video, audio). Also has a Free After Rebate page.

Snapfish - online photos

Along with printing of digital photos, tools for editing, etc. (I get “rewards” if you sign up through this link)

Computer Geeks



After some dissatisfying experiences with their support department, I’ve removed the link for ComputerGeeks.com



Miscellaneous Info

Here’s some stuff I wish I hadn’t had to find out the hard way:

Windows (2000) – Don’t disable the Window Service named RPC! Because if it’s disabled, all kinds of things won’t work (like Windows itself, for one thing). And it can’t be re-enabled through the Services interface.

But if you do (as I did) somehow disable it, there’s a registry fix for it here (external link).

Or (I’m told; I have not tried it) you can use MSCONFIG (copy it from Windows XP; it’s not included with Win2000) to re-enable it.


Microsoft Outlook Forms:

The assignment:

I had to design a custom email form, and the recipients needed to be able to print it in a meaningful format. The form was to contain checkboxes and other useful objects.

The problem(s):

The normal way of printing Outlook forms – File/Print – prints the values of the fields, but does a very bad job of making it look presentable, so that was not an option (this is well documented on the web, including on Microsoft’s site).

Microsoft has an add-in, called XPrint, that basically captures the screen and prints it. I found this solution unacceptable as well – the quality of the print was not nearly good enough.

The resolution:

I found several sites that discussed the issue (a very good one is http://www.outlookcode.com/d/forms.htm ). I ran into another problem where the recipient could print the form, but any additional recipients (if the initial recipient forwarded it, for example) could not print it (they could click the Print button, but nothing would happen). I eventually realized I was running into several different issues, not the least of which was “one-off” forms. Here’s the bottom line answer:

1. In creating the form, make sure there were separate “views” for Compose and Read (otherwise, the recipient will see a standard Outlook form, not the Custom form).

2. Put the print button on the “Read” page.

3. Create a Word document to do the actual printing (using fields and bookmarks, as explained in the link above).

4. Create the code for printing (in View/Code) – mostly what this does is copy the field values to the Word document, then print the Word doc.

5. On the form’s Properties page, Send Form Definition with Item should NOT be checked (otherwise, you run into the one-off problem, and the code won’t run for the recipient).

6. On the form’s Actions page, the Forward action should have the Create Form of Type should be the name of the custom form. Otherwise, any recipients after the initial batch will not be able to print.


ALSO: Here’s a quick note, not directly related: Saving the custom form is not the important thing in making it usable – Publishing it is necessary so users can access it.


Problem: Attempting to clear the custom forms cache in MS Outlook results in “The Forms Manager dialog box cannot be displayed”

Resolution: Delete (by renaming) the cache files – Search for and rename: outcmd.dat, extend.dat, frmcache.dat, views.dat

Outlook automatically (and silently) recreates them.

I found this information here: http://www.msusenet.com/archive/index.php/t-722911.html


Microsoft Outlook – Attachments

The problem: One user’s Outlook would not open or save a particular attachment. The message was Can’t create file: filename.pdf. Right-click the folder you want to create the file in, and then click Properties on the shortcut menu to check your permissions for the folder.

I checked the properties of the temp folders, and they were properly set.

The user was running Outlook 2000, but this apparently is an issue in Outlook 2003, as well.

I found several web pages indicating that the way to resolve this was to recreate the user profile, but that seemed like overkill (I hoped). I also found many references to this problem occurring with a .TIF, and/or a long file name, but I verified that the file name was not the problem in this case (though it was a long file name).

The resolution: Outlook has its own setting as to where it wants to store temp files. This is independent of the TEMP settings in Internet Explorer, and various environment variables. The setting for Outlook is stored in the registry (and all the standard caveats apply to editing the registry).

Bottom line: The temp files setting for Outlook (in the Outlook/Security key in the registry) has to point to a legitimate destination. If it doesn’t, this error is a result.

Here’s the MS page: http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q268744

Note that the MS article specifically mentions Terminal Server, and this user was definitely not running Terminal Server. Nevertheless, the fix worked.


Microsoft Access (2000 & XP)

Useful commands & functions (VBA)

Access/VBA syntax


Visual Foxpro (VFP) equivalent

Application.SysCmd(acSysCmdSetStatus, “Your Message Here”

Sets the text in the message bar to “Your Message Here”

VFP’s SET MESSAGE TO “Your Message Here”


Clears the text in the message bar



also use

CurrentProject.Connection.Execute <Sql Command>

Runs a SQL command (for UPDATE, INSERT, DELETE, etc.


The second method allows an user-defined message instead of Access’s built-in “Running Query”.




' use the current (Access) connection to retrieve rows in the Access query

Dim rsDefSegDates As ADODB.Recordset

Set rsDefSegDates = New ADODB.Recordset

rsDefSegDates.CursorLocation = adUseClient

Dim StrSql As String

StrSql = "Select * FROM <AccessQueryName> WHERE <Conditions>"

rsDefSegDates.Open StrSql0, CurrentProject.Connection

Create a record set, and attempt to populate from an Access query.


DCOUNT( “<TableIndexExpression>”, “<TableName>”, “<WhereExpression>”)

Returns the number of rows in the table meeting the WHERE criteria. Useful for limiting the number of rows for a particular subset (number of comment lines for an account, for example) to a maximum.


OpenArgs (property of form)

References parameters passed to form (form must be called with DoCmd.OpenForm, and <argumentlist> is last parm of call).




Windows 2000 (Win 2k): 

Network connection wizard:

Option to connect via vpn (Virtual Private Network) was disabled (grayed out)

This was a good one. I had played around with my Windows 2000 services, to try to improve performance and security, so I knew that something had changed, but couldn’t retrace my steps well enough to figure out what!

Here’s a link to a discussion of the problem and solution.

Additionally, I found that some of the services wouldn’t start because there were no profiles enabled for them (I don’t remember changing anything about that!). But enabling the profile was no big deal, and the VPN client looks like it’s working properly.


Windows Update

I was setting up an older laptop, and it was running Windows 2000 SP4. The user was knowledgeable, but not an expert. I wanted to make sure that all Windows Critical Updates were installed, but found that all menu links to Windows update were “gone.” It wasn’t available in Internet Explorer, nor from the Start menu. So I went to http://windowsupdate.microsoft.com. From there, the page told me that my system administrator had disabled Windows update. Which would have been ok, except that I’m the administrator! Another symptom/clue: The Control panel applet Automatic Updates was available, but all the options on the configuration screen were disabled.

I went through some standard types of attempts, including configuring the user as an administrator for the laptop. Didn’t work (I love that phrase!).

I found various web pages discussing this situation. Most referenced the Group Policy Editor, which is a tool I’d heard of but hadn’t used before, and it seems pretty useful (though Microsoft uses an awful lot of double negatives in it, by which I mean you have to Disable a Disable option in order to Enable something). I followed all the instructions, several times, but still had no success, in that the user still couldn’t access Windows update. Here are some links for that, in case they’re useful for someone:



Here’s another link I found later on, when Windows Update told me Network policy settings prevent you from using Windows Update to download and install updates on your computer and that I should contact an administrator (again – this was useless, because I’m the administrator!)


The information (above) link seems to have worked – I made the 2 registry changes, and it (seems to have) allowed me to install the Window patches.

I should note, though, that the information on the page refers to Windows XP, and I’m applying the information in Windows 2000, so the usual disclaimers apply even more than usual.


I also found some references to the registry, which (eventually) worked for me, but some didn’t. Basically, there were two registry settings – NOAUTOUPDATE and NOWINDOWSUPDATE that look like they should have been changed by the Group Policy Editor, but weren’t. Once I made the changes in the registry (standard warnings apply), it worked fine.

Here are sites I found helpful:





Microsoft SQL Server (2000) and ODBC DSN access

I was creating copies of SQL Server 2000 databases, because I needed to work in a test environment. The idea is to change the ODBC DSN so it points to the test copy, rather than the live, so the fact that the database is in a different location is transparent to the application.

When I copied a database from the live system to test, all looked good. I was able to view all the objects in the database in Enterprise Manager, and Query Analyzer showed the database as being online.

But the ODBC manager couldn’t find the database. When I clicked the Change the default database to: checkbox, the database didn’t show up in the list of available databases. When I typed in the database name, I got the error The database entered is not valid.

But I found a clue (duh!): When I logged in as SA (system administrator), the database showed in the list, and I no longer got the error. So it had to be a user issue: Once I added the user to the list of users for that database (apparently, it wasn’t copied properly, and I have no explanation for that), I was able to access the database.


Microsoft SQL Server (2000) Performance

We (a coworker pointed this out to me, then I investigated further) found that when passing parameters/arguments into a SQL Server stored procedure, performance can be *greatly* improved by storing the parameter values to variables, then executing any commands based on the variables, rather than the parameters. For example:

CREATE PROCEDURE usp_testparms (@parm1 VarChar(10))

SELECT * FROM mydb WHERE myfield = @parm1

has been noticeably slower than the functionally identical:

CREATE PROCEDURE usp_testparms (@parm1 VarChar(10))

DECLARE @strParm1 VarChar(10)

SET @strParm1 = @parm1

SELECT * FROM mydb WHERE myfield = @strparm1


This behavior is discussed in SQL Server Magazine, July 2004, by Karen Delaney (http://www.sqlmag.com/Articles/ArticleID/42801/42801.html#). She implies it has something to do with compilation and execution plans, and that certainly makes sense to me. She also implies (as I read it) that the performance difference may not always work in this direction. But so far, that’s been our (admittedly limited) observation. 


Running ASP Pages on a PC

This falls under the category of “everything’s easy once you know how to do it,” but it wasn’t so easy to figure out initially: A company web site was redesigned, and one of the old pages contained ASP pages that a (n important) user wanted to be able to run. We could get him the pages & code, but that wasn’t enough –an ASP page “opens” in a text editor, not as an executable page – even if you open it in Internet Explorer.

As I said, the answer turned out pretty straightforward, and can be found here: http://www.w3schools.com/asp/asp_install.asp

In summary, Windows must be running IIS, and the ASP pages need to be in a particular directory structure: C:\INETPUB\WWWROOT\<optional additional path>\<asppages.asp>


Login Script doesn’t run

The initial symptom of this problem was that our users didn’t see their “home” drives mapped. The problem started when we installed new PCs. The old PCs had been Windows 2000, and the new ones are XP Professional. Our investigation and anecdotal evidence showed that the system login script (NETLOGON.BAT) would run sometimes, and the home drive mapping would be successful if the script ran, and not otherwise. Further, we could see that if the user hit Ctrl-Alt-Del to log on to their PC “immediately” (as soon as the screen came up) the script was likely to not run. If the user waited about 15 seconds before attempting the log on, the network login script would likely run, and the home drive mapping would appear.

Turned out there were several issues involved here. The first is a “feature” of Windows XP, where it tries to speed up the login process. Basically, it allows the user to log into the PC even before the PC has established itself on the network domain. Since there’s no domain, there’s no login script to run. To force Windows to wait for the domain, there are a couple of Group Policy settings (use the Group Policy editor – Start/Run gpedit.msc – to make these changes):

Under Computer Configuration/Administrative Templates/System/Scripts: Run Logon Scripts synchronously – set to Enabled.

Under Computer Configuration/Administrative Templates/System/Logon: Always wait for the network at computer startup and login – set to Enabled.

(we have one PC that doesn’t have that second setting available, and I have not yet figured out why!)

Making those changes to Group Policy solved the problem for many of our PCs, but not all. We found that – for the PCs on which the problem still existed – the “Hit Ctrl-Alt-Del to sign on” screen was still coming up almost immediately, while on the “fixed” PCs, there would be a noticeable delay while the PC connected to the domain controller.

For the not-yet-working PCs, the event viewer gave us some additional information: We saw an Event 5719 (no domain controller available) in the system log, and Event 1053 (cannot determine user or computer name) in the application log.  Searching on the 5719 gave us the final piece of the puzzle: Windows XP has a problem with some gigabit Ethernet devices, and in those cases, Windows can’t connect to the domain, and can’t apply Group Policy. The fix is to disable Media Sensing in the registry.

Details are here: http://support.microsoft.com/?kbid=326152 and http://support.microsoft.com/kb/239924/



Internet Explorer 6 – Cannot Download file

One user – running Windows XP Professional, w/SP2 – had a problem attempting to download or open an Excel spreadsheet from a website. Other users on our network did not have the same problem, at the same site. The error message was Internet Explorer cannot download filename… Internet Explorer was not able to open this Internet site. The requested site is either unavailable or cannot be found. Please try again later.

I tried patching Windows (which led to a whole other nightmare – problem with COM components and DTC. That’s a discussion for another time), moving the site to the Trusted Sites zone, removing (then installing an upgraded version of) the AntiVirus software, deactivating the Windows XP firewall – none of these helped.

I finally found a solution that worked at http://www.openrdf.org/issues/browse/SES-63, which references http://support.microsoft.com/default.aspx?scid=KB;EN-US;q316431&, entitled “Internet Explorer is unable to open Office documents from an SSL Web site.” I don’t quite understand the answer (but I do understand that it works!) The bottom line (from the user’s perspective) is that the option “Do not save encrypted pages to disk” (why does Microsoft state everything in the negative?) needs to be turned off (the check box needs to be cleared). This option can be found near the bottom of the Advanced tab of Tools/Internet Options in IE6.

I don’t know if IE7 behaves the same way.


Find this stuff useful at all? Let me know:



Personal Web Page

Mark Ganchrow's resume

MSG Resume Supplement (the good stuff!)

Links & Technical Stuff

Web site feedback