VB6 app completes 8.3 path conversion on one PC

I have a VB6 desktop application that is deployed to over 1200 desktops. All devices are a combination of Windows XP SP2 and SP3. All but one of these PCs (XP SP2) can successfully decrypt the DOS 8.3 path (i.e. C:\PROGRA~1\DATFOL~1\Config\

) that is used in the .ini file associated with this application. This particular computer is throwing a message saying "Runtime error 76: path not found."

The string is obtained from a .ini file using GetPrivateProfileString

. (The string is not hardcoded in the application - it is obtained from the ini file).

Since there is only one machine having the problem, I treat it as a value for some configuration value on that device. I looked at the NtfsDisable8dot3NameCreation setting in the registry to see if this might be the problem, but I was unable to reproduce the problem on any other machine when this setting was changed.

Anyone have any thoughts or perhaps some other direction I could take?

+2


source to share


3 answers


If someone messed up and did temp / backup / testing \DataFolder_Temp

, delete the original and then rename, the shortcut would be DATAFOL~2

. Delete the directory and recreate it.



+1


source


Don't use hardcoded paths or short file names. The Program Files folder may not be on the C: drive, it may not be named Program Files, and even if it is, it might not have the short filename PROGRA ~ 1 (and the same for DATAFOL ~ 1). Make a note of the installation path to the INI file or registry during installation and read + use it in your program.



+4


source


check your PC. PROGRA ~ 1 or DATFOL ~ 1 could actually be ~ 2 instead. Put the 8.3 name used in your code in explorer and see what it tells you.

0


source







All Articles