2011-02-14 47 views
1

我目前正在開發一個C#應用程序。我想將網站作爲幫助文件加載到軟件的Windows窗體中。嵌入c#項目中的網站

我已經將幫助網站存儲在其中的目錄與其餘的項目類和文件夾一起添加到項目中。

我在代碼

string appPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase); 
string openPath = Path.Combine(appPath, "HelpFiles/Introduction/index.htm"); 
helpContent.Navigate(openPath); 

我如何可以從主項目中引用站點目錄下面。目前我只能讓它工作,如果我可以將目錄複製到exe文件所在的bin/debug目錄中。我不想要這個,我想把HelpFiles目錄嵌入到軟件的主要部分。

+1

以防萬一我忘了提到幫助文件將顯示在TreeView窗格中。這就是helpContent.Navigate()在做什麼 – Boardy 2011-02-14 01:49:58

+0

`helpContent`是一個`System.Windows.Forms.WebBrowser`? – abatishchev 2011-02-14 11:51:11

回答

1

您打算如何部署您的項目?如果你打算使用VS安裝項目,那麼你應該標記您的幫助文件的內容文件,然後在安裝項目,將在安裝目錄中的內容文件 - 例如,你可以選擇結構,如:

<Installation Dir> 
    bin -> place project output here 
    help -> place project content files 

現在你可以使用從應用程序的基本路徑相對路徑即

string openPath = Path.Combine(appPath, "../help/Introduction/index.htm"); 

另一種方式可能是,以紀念所有的幫助文件作爲「複製到輸出」(從文件屬性),這將把您的所有文件在同一目錄作爲EXE。