2017-01-05 34 views
0

我已經建立了一個VB應用程序VS2012編程訪問。最近,我發現我無法訪問我的應用程序開發文件夾中的HELP(.chm)文件(並且就此而言,導致該文件夾的幾個文件夾)。現在,我已將.chm文件的副本放置在構成應用程序開發文件夾路徑的所有文件夾中。作爲參考,應用開發文件夾是:.chm文件是不是在某些文件夾

C:/用戶/加里/我的文檔/的Visual Studio 2012 /項目/醫生醫生/醫生醫生/醫生醫生/斌/調試

直到一個星期前, 沒問題。現在,奇怪的行爲。

這裏有一段代碼,「作品」 - 這意味着,當我運行應用程序,並在基本形式單擊菜單項(mnuHelp),幫助文件顯示出來,符合市場預期:

Private Sub mnuHelp_Click(sender As Object, e As EventArgs) Handles mnuHelp.Click 
    Dim str As String = "C:/Users/Gary/My Documents/Doctor21.chm" 
    Help.ShowHelp(Me, str, System.Windows.Forms.HelpNavigator.KeywordIndex, "Welcome") 
End Sub 

當我現在嚮應用程序開發文件夾「靠攏」時,單擊菜單項會導致暫停(包括沙漏)一秒鐘左右,但沒有其他任何內容。修改後的代碼是

Private Sub mnuHelp_Click(sender As Object, e As EventArgs) Handles mnuHelp.Click 
    Dim str As String = "C:/Users/Gary/My Documents/Visual Studio 2012/Doctor21.chm" 
    Help.ShowHelp(Me, str, System.Windows.Forms.HelpNavigator.KeywordIndex, "Welcome") 
End Sub 

請注意,唯一的區別是在路徑中包含「Visual Studio 2012」。 .chm文件的副本位於「我的文檔」和「Visual Studio 2012」文件夾中。另外,我跟着前面的帖子,明確列入項目中.chm文件,設置生成操作=內容並複製到輸出目錄=複製如果較新

任何想法對於這種行爲?

,可能是相關的一些附加信息....項目包含了大量的地方HELP可以訪問。所有這些地方(除了如上所示的基本形式),都嘗試訪問應用程序文件夾中的HELP。

如果基本形式幫助無法訪問幫助,那麼所有的地方無法獲得幫助。如果基本形式的幫助路徑設置爲訪問成功的位置,則所有其他位置都會成功(即使它們隱式地在應用程序文件夾中查找.chm文件)。然而,對於其他地方的工作,我必須首先從基本形式訪問HELP。

回答

0

我試圖與Visual Studio 2015年重現您的問題 - 但好像不是我的系統上發生。一些想法 - 但要小心的第一個暗示:


的hh.dat文件存儲用戶特定的所有HTML幫助文件(* .CHM)你的系統(位置,最喜愛的主題上的信息,搜索歷史記錄,等等),並且如果它以某種方式被損壞,可能會導致錯誤。刪除或重命名文件hh.dat以將系統上的所有(!)CHM窗口重置爲其默認設置。你應該在這個目錄中找到hh.dat:

\的Documents and Settings \%USERNAME%\應用數據\微軟\ HTML幫助

或(根據您的Windows版本)

C:\用戶\%USERNAME%\ AppData的\漫遊\微軟\ HTML幫助

Windows將創建hh.dat的新版本,當你下次打開任何的.c hm文件。


你會檢查你的CHM是否沒有改變,並以不同的方式編譯。確保兩個測試文件夾中都有相同的CHM文件。搜索並檢查文件例如doctor21.chw是否即時創建(在您的測試文件夾中刪除此文件)。


確保您在CHM的索引中具有索引選項卡和關鍵字「歡迎」。

相關問題