我想在MSI打包COM DLL。我希望安裝程序在之後運行批處理文件。 批處理文件基本上指向WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727文件夾並運行regasm命令來註冊程序集。創建一個COM DLL設置
我該如何獲得設置?
謝謝。
我想在MSI打包COM DLL。我希望安裝程序在之後運行批處理文件。 批處理文件基本上指向WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727文件夾並運行regasm命令來註冊程序集。創建一個COM DLL設置
我該如何獲得設置?
謝謝。
你不能直接從VS安裝項目運行批處理文件,但我認爲你可以運行腳本來執行它們。像這樣的東西可能會奏效:
Set s = CreateObject("WScript.Shell")
cmd = "yourbat.bat"
s.Run ("cmd /C " & """" & command & """")
Set s = Nothing
這可能不是在所有計算機上工作,但如果他們沒有腳本主機已安裝的,所以它可能是最好拿出一個非批處理文件的方式。
編輯:只記得一個可能更好的方式做到這一點。
我認爲它會工作,在您的電腦上運行RegAsm
與/regfile
參數,它創建一個regfile包含所需的所有設置。然後,只需將該regfile添加到您的安裝項目中,您就不必在客戶端的計算機上運行RegAsm
。
VS安裝項目已經知道如何註冊ComVisible程序集。將DLL的Register屬性設置爲「vsdrpCOM」。不需要額外的安裝後命令。
我在哪裏編寫腳本? – user20358 2010-06-01 07:32:00
@daemonkid - 在一個文件中,然後創建一個自定義操作來執行該文件。不過,請看我更新的答案,因爲我認爲有更好的解決方案。 – 2010-06-01 07:50:07