Question

In a .LST file for my VB6 installer there are two lines as follow:

File1=@VB6STKIT.DLL,$(WinSysPathSysFile),......
File2=@wshom.ocx,$(WinSysPath),.....

After installing my application, I found out that both go to the same \Windows\System32 folder. Do you know what is the difference between both paths?

Thanks

Was it helpful?

Solution

This dates back from VB4, I think, a version that could still generate 16-bit executables. Where the system directory was c:\windows\system, the synonym of $(WinSysPath). $(WinSysPathSysFile) is c:\windows\system32. There should be no difference on a 32-bit operating system, but worth a check. wshom.ocx really does belong in system32. It is already there on any recent operating system.

OTHER TIPS

They both go to the same system folder (The windows folder if it's not writable). The latter just marks it as a system file so it's not uninstalled.

Snippets from Setup1.bas in the PDW:

fSystem As Boolean 'whether the file is a system file (i.e. should be installed but never removed)

If InStr(strInitialDestDir, gstrWINSYSDESTSYSFILE) Then
  sFile.fSystem = True
End If

Case gstrWINSYSDEST, gstrWINSYSDESTSYSFILE
  strResolved = gstrWinSysDir
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top