繁体   English   中英

在Windows的任何版本下以任何语言向其中写入文件的通用位置

[英]Universal location to write a file to, under any version of Windows in any language

必须在Windows XP下的多台计算机上部署VBA应用程序,我需要在一个通用的位置自动创建一个特定的文件,该文件与硬盘驱动器,目录结构乃至OS语言无关:C驱动器的根目录,即C: \\

效果很好...直到这些计算机开始迁移到Vista或Windows 7之前,我发现它们不容易允许在C驱动器上进行写入。 在所有版本的Windows下,对于所有用户而言,可以在任何版本的Windows下工作的替代通用可写位置是什么?

调用Windows API,该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参考,请参见:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM