2011-08-01 21 views
0

當打開Sqllite DB文件我用PostBuildevnt腳本啓動應用程序的形式鏈接無法lancuhing應用

http://blogs.msdn.com/b/astebner/archive/2006/08/12/696833.aspx?wa=wsignin1.0&CommentPosted=true

和啓動應用程序successfully.I現在用的是sqllite的應用。 我在應用程序文件夾/數據庫中添加了數據庫文件並使用以下代碼打開了該數據庫文件。

string ConnectionString = "data source=" + Path.GetFullPath(".") + "\\DataBase\\CATTDB.db"; 

如果我啓動從安裝嚮導的應用程序,它沒有連接到數據庫file.it拋出錯誤像「無法打開文件」。

如果我從開始菜單或桌面圖標啓動,它工作正常..

這裏有什麼問題嗎? 請幫助我..

回答

0

所有文件都複製正確..

我試着用的Application.ExecutablePath代替Path.GetFullPath(".")

它工作的偉大...

0

這可能是從安裝開始時,你的工作directoy是不同的...

是什麼在這種情況下Path.GetFullPath(".")回報(日誌和/或顯示值)?

總是存在權限/權限問題 - 根據您的操作系統(例如Windows 7 ...)和用戶使用(ia Administrator?)運行應用程序(出於安全原因),您不允許在應用程序目錄...如果你需要讀某處+寫,你應該使用http://msdn.microsoft.com/de-de/library/system.windows.forms.application.userappdatapath.aspx

只是檢查數據庫是否在這條道路 - 如果不能複製它那裏 - 並用它那裏...

其他位置可以是來自http://msdn.microsoft.com/de-de/library/14tx8hby.aspxhttp://msdn.microsoft.com/de-de/library/system.environment.specialfolder.aspx的ApplicationData/CommonApplicationData/LocalApplicationData