我们已经编写了一个在XP中运行得很好的应用程序,但是对Vista和Windows 7有严重的迁移问题,可能是由于正在编写用户数据的地方。域兼容性:共享数据应该写在哪里?
用例如下: 单个用户需要登录到机器并使用它来获取数据。主管用户需要能够查看个人用户的肩膀并确认他们正在正确地执行工作。这些主管还需要检查系统日志以确保系统正常运行。
我们在XP中完成这些任务的方式是直接写入C:\驱动器上的文件夹。也许这是不好的做法,也许不行,但基本上系统的所有用户都需要能够以共享数据的形式访问这些数据。在该程序的某些安装中,IT环境根本就不安全,并且计算机有一个用户,然后每个用户分别登录到我们的程序。在其他程序安装中,IT人员能够胜任并为不同用户提供不同的登录,但每个用户仍然可以访问C:并且每个用户仍然可以根据需要检查其他用户。
在Vista/Windows 7中,所有更改。如果IT人员将所有内容锁定到单个用户,那么这些用户仍然需要共享这些公共数据,并且只是不允许将应用程序特定的配置参数和用户列表写入应用程序目录。如果系统位于具有域的位置,则用户不具有本地管理员权限,甚至安装也可能是问题。
解决方案是让安装程序创建一个每个用户都可以写入的目录,然后将所有用户特定的数据放入该目录中?如果是这样,是否有可能让安装程序以这种方式行事(即使必须给予管理员权限)?或者有没有办法让Vista/7以更自由的XP方式运行?
因此,根据我们安装在哪个操作系统,我们转到该目录或其他目录XP?两者有共同之处吗? – mmr 2009-07-01 00:34:53
我相信XP有一个类似的文件夹下的文件和设置 - 如果你想只有一个代码路径,我认为%PUBLIC%环境变量将工作 – 2009-07-01 00:37:45
%公众%是vista新的,根据:http:// vistaonwindows.com/environment_variables.html – mmr 2009-07-01 00:38:55