我被要求更新过去6年一直在WinXP上运行的VB6应用程序.客户端想要使用Windows 7.到目前为止,应用程序将其设置存储在位于应用程序目录中的INI文件中.XP和7之间的一个关键区别是你不能再写C:\Program Files\AppFolder了.
我试图找出文件系统应该存储设置的位置?鉴于应用程序仍然需要在WinXP上运行,我有点困惑.
在WinXP上,我有以下内容:
C:\Documents and Settings\profilename\Application Data
C:\Documents and Settings\profilename\Local Settings\Application Data
Run Code Online (Sandbox Code Playgroud)
在Windows 7上,我有以下内容:
C:\Users\profilename\AppData\Local
C:\Users\profilename\AppData\LocalLow
C:\Users\profilename\AppData\Roaming
Run Code Online (Sandbox Code Playgroud)
这些文件夹中的每一个都有子文件夹,似乎存储各种产品的设置/文件
那2个问题:
基本上与这个问题相同,但对于VB6.
客户的应用程序"AppName"将其配置文件存储在CommonAppData中.
- 在Windows XP下,即C:\ Documents and Settings\All Users\Application Data\AppName
- 在Windows Vista下,即C:\ ProgramData\AppName
如何使用VB6获得正确的foldername ??
附加说明,我更喜欢使用API调用而不是添加对shell32.dll的引用