Vista操作系統對於App.Path的引用錯誤問題
錯誤描述:
在一個主程序AppMain中使用ado打開AppMdb.mdb文件時,此mdb文件為主程序的下級文件夾FolderMdb,在打開ado時,使用了app.path方式打開connectionstring="provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\FolderMdb\Appmdb.mdb;Jet OLEDB",使用wise制作安裝包AppSetup,
第一次安裝時,AppMdb.mdb文件內Table1的值設定為20070909
第二次重新制作安裝包安裝時,AppMdb.mdb文件內Table1的值設定為20070911
安裝的路徑都為:C:\program FILES\AppMain\FolderMdb,主程序AppMain:C:\program FILES\AppMain
當vista以一個users的user登錄vista操作系統時,如果直接執行appMain時,取出Appmdb的Table1值是20070909{文件打開的是第一次安裝的值,文件所在路徑為:C:\users\使用者(user)\Appdata\local\VirtualStore\Program files\AppMain\FolderMdb\AppMdb.mdb)},如果以系統管理員方式執行主程序時,取出Appmdb的Table1值是20070911,{文件打開的是最後一次安裝(第二次安裝)的值,文件所在路徑為:C:\Program files\AppMain\FolderMdb\AppMdb.mdb)}
現在如果刪除C:\users\使用者(user)\Appdata\local\VirtualStore\Program files\AppMain\FolderMdb\AppMdb.mdb的文件,或以系統管理員身份執行時,則都能正常讀取出20070911的值
問:在VISTA使用App.path時,不以系統管理員身份執行主程式時,如何才能正常讀取出最新的數據,而不是vista的陰影複製的虛擬備份內的值???謝謝