2011-09-06 230 views
2

這是我第一次創建安裝。我需要一些幫助。使用高級安裝程序和C#創建安裝文件#

  1. 我在創建我的設置時使用發佈選項。當我完成安裝時,安裝程​​序安裝路徑包含所有.cs文件,因爲它們在開發過程中可見。這允許任何安裝了VS的人編輯我的應用程序。

    作爲替代,我嘗試使用高級安裝程序,但同樣的事情也發生在那裏。我想繼續使用高級安裝程序,因爲我想使用他們的主題和試用版和註冊功能。

  2. 我目前正在使用高級安裝程序的試用和註冊功能。此功能在安裝目錄中創建一個DLL。我如何使用相對路徑鏈接到我的DLL?

Environment.CurrentDirectory = Directory.GetCurrentDirectory(); 
    string dllPath = Path.GetFullPath(@"..\..\Trial.dll"); 

上面的代碼開發過程中正常工作。但是當我安裝EXE時,它會返回一個錯誤。根據我的說法,路徑中存在錯誤。

安裝時我使用此路徑:

C:\Program Files\ManufacturerName\AppName\ 

當安裝完成後,文件夾是這樣的:

C:\Program Files\ManufacturerName\AppName\<My CS files are here, on a silver platter> 
C:\Program Files\ManufacturerName\AppName\bin\release 
C:\Program Files\ManufacturerName\AppName\bin\release\<app.exe here> 
C:\Program Files\ManufacturerName\AppName\bin\debug 
C:\Program Files\ManufacturerName\AppName\obj\x86 
C:\Program Files\ManufacturerName\AppName\obj\x86\release 
C:\Program Files\ManufacturerName\AppName\obj\x86\debug 
C:\Program Files\ManufacturerName\AppName\Properties 
C:\Program Files\ManufacturerName\AppName\Service References 

沒有出現在這些文件夾中的文件。這與我的項目路徑相同。

我也打開使用其他安裝程序,讓我有一些東西,我可以有一次性安裝。

回答

2

當我完成安裝安裝程序安裝路徑包含所有的 cs文件,因爲它在開發過程中是可見的。

發生這種情況是因爲您在安裝項目中添加了整個輸出文件夾。你應該只添加你的應用程序文件。如果你不知道哪些是你的應用程序文件,你需要找出答案。

作爲替代方案,我嘗試使用高級安裝程序,但同樣的事情 也發生在那裏。

您是否嘗試過Visual Studio應用程序項目類型?它只導入你的應用程序文件。

如何使用相對路徑鏈接到我的dll。

許可DLL應放置在應用程序EXE旁邊。這樣,您可以直接按名稱訪問它,而不用嘗試使用相對路徑。

請注意,在您的安裝項目中,您可以將文件移動到您想要的任何文件夾中。

+0

我面臨着某些問題。首先,我不能添加一個新的設置嚮導項目,因爲我正在使用快速版。所以我不得不使用外部安裝程序。外部安裝程序輸出整個項目,我試圖找出爲什麼發生這種情況,但還沒有找到答案。一切都應該在一個文件夾中,高級安裝程序並不是這樣。 – Tanmay

+0

高級安裝程序可以導入您的Visual Studio應用程序項目。它不需要安裝項目。 –

+0

這是真的。我直接添加我的項目目錄並構建它。但輸出仍然是我前面說的方式 – Tanmay