2009-11-10 37 views
2

我最近重新安裝了我的開發計算機,並從32位Windows Vista遷移到了64位Windows 7.我運行的是VS2008。Visual Studio註冊表捕獲實用程序遇到問題

我的一些.NET應用程序仍然使用J#,這會導致問題。該方案仍然運行,但是當我想部署它(我使用一個安裝項目創建的.msi),我得到這個錯誤:

「Visual Studio中的註冊表捕獲實用工具遇到了問題」

我該如何解決這個問題? 與其他程序(純粹用C#編寫的程序)不會發生此錯誤。

回答

8

是的,這是一個已知的Win7和VS2008的bug,用於創建一個暴露COM對象的安裝程序。

Here is the workaround

感謝@RogerFraser爲尖端,因爲我是有同樣的問題

爲了解決。

  1. 找到這裏regcap.exe:C:\ Program Files文件\微軟的Visual Studio 9.0 \ Common7 \工具\部署
  2. 點擊右鍵,選擇屬性。
  3. 選擇兼容性選項卡
  4. 複選框以兼容模式運行此程序。
  5. 在操作系統下拉列表中選擇Windows Vista SP2。
  6. 單擊確定並重新編譯。

HTH。

+0

我想你不應該相信你在互聯網上閱讀的所有內容。這並不妨礙我解決問題。 – Noam 2009-11-18 14:39:59

+0

它爲我做了。謝謝。 – DanielR 2009-11-23 08:49:07

+0

爲我工作......謝謝! – 2010-06-22 20:32:30

0

不幸的是,它並沒有爲我工作,仍然得到同樣的錯誤。使用 Windows 7企業版,64位。

這是錯誤的詳細信息(僅德語,不好意思):

Problemereignisname: BEX 
    Anwendungsname: REGCAP.EXE 
    Anwendungsversion: 9.0.21022.8 
    Anwendungszeitstempel: 47316c84 
    Fehlermodulname: MSVCR90.dll 
    Fehlermodulversion: 9.0.30729.4926 
    Fehlermodulzeitstempel: 4a1743c1 
    Ausnahmeoffset: 0003689c 
    Ausnahmecode: c0000417 
    Ausnahmedaten: 00000000 
    Betriebsystemversion: 6.1.7600.2.0.0.256.4 
    Gebietsschema-ID: 3079 
    Zusatzinformation 1: 0a73 
    Zusatzinformation 2: 0a7372810d093ef4e8ab14e85634e08a 
    Zusatzinformation 3: 6150 
    Zusatzinformation 4: 6150f9546d0a47d70659c34cf83b2016 
3

這並沒有爲我工作,直到我碰到this blog post哪兒來的海報看了看調試信息,發現與長路徑的一個緩衝區溢出錯誤。我將解決方案放到C:\ temp中,然後按照Noam和Kris發佈的步驟進行編譯。這是在Windows 7 x64上從VS2005升級到VS2010的項目。

+0

我發現這對Win7 x64上的VS2005很有用:https://connect.microsoft.com/VisualStudio/feedback/details/466157/registry-capture-utility-win-7-rc1?wa=wsignin1.0 – winwaed 2010-12-03 01:15:43

相關問題