VC写的应用程序,安装时WIN7用户安装到C:\program files,应该是用户权限引起的,程序无法在安装目录创建文件了,安装时附带的ACCESS数据库也只有读权限,写不进去了。应该怎么调整,最好是在程序或部署安装时调整,总不能叫人家不要装到C盘或一定要用管理员帐户吧,分不在多,望不吝赐教。

解决方案 »

  1.   

    这个应该是win7的用户安全限制(个人估计是NTFS文件系统权限),估计要跳过去不太好跳,还是检查当前用户是否具有管理员权限,没有就提示取消安装.
      

  2.   

    装已经装上去了,我在部署安装的时候设了UAC,我是想不管装哪里都能创建成功文件和写入数据库.
    打开数据库我用了:ADO
    CString constr = _T("Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=")+dbPath+_T(";Persist Security Info=False;Jet OLEDB:Database Password=123"); 
    rs = connect->Open(_bstr_t(constr),"","",adConnectUnspecified);
    创建和写文件我用了WIN32:
    HANDLE handle = ::CreateFile(path,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,0,NULL);
    在WIN7装到C:\Program files后创建不了,数据库也只能读不能写.
      

  3.   

    搞定,是WIN7万恶的UAC引起的.在配置里把UAC屏蔽掉就可以了,不过传说这样不安全.不管了...