0

在我的 VB6 安装程序的 .LST 文件中,有如下两行:

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

安装我的应用程序后,我发现两者都进入同一个\Windows\System32文件夹。你知道这两条路有什么区别吗?

谢谢

4

2 回答 2

2

我认为这可以追溯到 VB4,一个仍然可以生成 16 位可执行文件的版本。其中系统目录为 c:\windows\system,$(WinSysPath) 的同义词。$(WinSysPathSysFile) 是 c:\windows\system32。在 32 位操作系统上应该没有区别,但值得一试。wshom.ocx 确实属于 system32。它已经存在于任何最近的操作系统上。

于 2011-08-16T19:46:44.077 回答
0

它们都进入同一个系统文件夹(如果它不可写,则为 windows 文件夹)。后者只是将其标记为系统文件,因此不会被卸载。

PDW 中 Setup1.bas 的片段:

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
于 2011-08-24T11:00:12.303 回答