必须在Windows XP下的多台计算机上部署VBA应用程序,我需要在通用位置自动创建特定文件,独立于硬盘驱动器,目录结构,甚至操作系统语言:C驱动器的根目录,即C:\
这很好......直到这些计算机开始迁移到Vista或Windows 7,我发现它不容易在C盘上写入。 什么是可替代的通用可写位置,可以在任何语言版本的Windows下,适用于所有用户?
答案 0 :(得分:1)
调用Windows API,在相应的计算机上返回SpecialFolder
的路径并使用它 - 例如,非常适合
CSIDL_COMMON_DOCUMENTS
(非特定于用户)CSIDL_COMMON_APPDATA
(非特定于用户)CSIDL_APPDATA
(用户/应用专用)CSIDL_MY_DOCUMENTS
(特定于用户)Windows API处理您描述的所有内容 - 上述位置可写,适用于所有Windows版本,而不依赖于语言。
对于VBA源代码和示例,请参阅http://www.cpearson.com/excel/SpecialFolders.aspx
对于MSDN参考,请参阅: