![]() |
1
3
取决于你在做什么,你可能会陷入痛苦的世界。对于这些问题,没有一个简单而快速的答案,但是对于正在经历同样问题的人来说,我知道的是。 1)我应该在哪里存储应用程序数据或用户保存的文件? 这取决于你想做什么。如果您希望每个用户使用它们,请将它们存储在users/appdata中;如果您希望所有用户使用它们,请将它们存储在common/appdata中。
将其更改为用户appdata目录的csidl_appdata。注意:对于xp和vista,这些映射到文件系统上完全不同的地方,因此当您调试时,准备在不同的地方进行查找。 2)我是否也需要权限来创建文件夹和文件? 你需要管理员权限来写程序文件中的任何东西,如果可能的话,不要这样做!我们现在 running into issues 在程序文件中的文件上,用于VB的API和标准API的行为不同。 3)还有哪些常见的行为会引起问题? 有很多隐藏的哥特人。仅举几个例子,您不能通过IPC或命名管道与其他应用程序通信(我们有一个服务,我们通过托盘通知图标与之通信,必须完全重新编写)。任何你看到的UAC通知都是非常困难的。另外,如果没有管理员,您也无法写入本地计算机注册表中的任何内容,因此您必须坚持使用本地用户或提高凭据(请参见下文)。 4)程序有一个更新程序,它必须下载和注册文件,当发生这种情况时,如何提升特权(sic)? 祝你好运,我强烈建议你不要用vb6写它,就像我说的那样,vb6文件api看起来访问文件与标准api不同。如果你需要提升权限,请看这个 post 有人帮了我一把。 |
![]() |
2
0
在排序术语中 turning off UAC 和安装 ActiveX installer server 会有帮助的。长期而言,您需要将数据和配置信息放在\users下的users目录或\programdata中。 |
![]() |
3
0
从短期来看,可能根本不需要修改应用程序,因为 Vista提供了一组兼容性选项,允许运行遗留应用程序。这包括文件和注册表虚拟化,这是一个基本上将写操作重定向到受保护文件夹(如C:\Program Files)的功能,该功能只对以兼容模式运行的特定应用程序可见。 本文还提到了更多的细节: How To Manage Windows Vista Application Compatibility 在Dobb博士的诊所里。 |
![]() |
4
0
卡尔·彼得森写了一封信 nice article 使用vb6存储用户数据和应用程序数据的位置 class 它为您检索特殊路径的位置。 |