2015-07-21 95 views
4

我安裝了Visual Studio 2012,安裝了Wix 3.9.1208.0。我正嘗試以BootStrapper Project創建Bootstrapper。這裏是Bundle.wxs中的代碼。構建Wix項目時出現System.OutOfMemoryException錯誤

<?xml version="1.0" encoding="UTF-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" 
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension"> 
<Bundle IconSourceFile="D:\logo.png" Copyright="[email protected] Name" Name="Product Name" Version="1.0.0.0" Manufacturer="Company Name" UpgradeCode="ef645195-36e9-4b99-8374-86f8445714d8"> 
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense"> 
     <bal:WixStandardBootstrapperApplication 
     LicenseFile="D:\License.rtf" 
     ShowVersion="yes" 
     /> 
    </BootstrapperApplicationRef> 

    <Chain> 
    <ExePackage Id="Framework" Name="Microsoft .NET Framework 4.5.1 Setup" Cache="no" Compressed="yes" PerMachine="yes" Permanent="yes" Vital="yes" InstallCommand="/q" SourceFile="D:\NDP451-KB2858728-x86-x64-AllOS-ENU.exe"/> 
    <ExePackage Id="SQLCompact" Name="Microsoft SQL Compact 4.0 Setup" Cache="no" Compressed="yes" PerMachine="yes" Permanent="yes" Vital="yes" InstallCommand="/q" SourceFile="D:\SSCERuntime_x86-ENU.exe"/> 

    <MsiPackage Id="CRRuntime" Name="Crystal Report Runtime" Cache="no" Compressed="yes" Permanent="yes" SourceFile="D:\CRRuntime_32bit_13_0_13.msi" Vital="yes" /> 
    </Chain> 
</Bundle> 

每當我嘗試建立引導程序項目,我得到錯誤的exception of type 'System.OutOfMemoryException' was thrown和文件light.exe和構建失敗。

我有一個Core i3處理器和4GB內存,並在構建項目時,使用幾乎2GB內存和系統的VS部分無響應,直到關閉Visual Studio。停止生成過程不會釋放獲取的內存。

任何人都可以幫我嗎?

回答

1

不幸的是,我認爲這只是歸結爲計算機無法處理Visual Studio正在嘗試執行的所有操作。我遇到了同樣的問題,只有當擁有更多RAM的新計算機纔會消失。

說明

的RAM,使用起來是個人的過程要在啓動時分配的內存特定的量(當你做一個構建之前它退出的原因,很多的流程開始所有請求內存),但是當沒有足夠的內存分配請求時,系統會拋出異常。

而且在錯誤消息發生時您可能看不到完全用完的內存,因爲請求比您可用的內存大,所以它沒有分配內存,因此它仍然可用。

(你可以看看MSDN看電腦如何分配內存。)

而且異常後「停止構建」並不需要「停止建設。」開始編譯時啓動的許多進程可能仍在運行。

作爲一個經驗法則,無論何時出現內存不足異常,您都需要關閉並重新打開應用程序。直到你這樣做,它纔會正常工作。

還值得注意的是,如果您運行的是32位,則只能訪問3GB的RAM。

下面是我的舊32位4GB計算機的圖片,其中有一個在Visual Studio中打開的項目。注意Available內存只有827 MB。

enter image description here

現在想象所有想嘗試當我生成項目搶到更多的內存的進程。

對於我從4GB of RAM with a 32-bit processor16GB of RAM with a 64-bit processor完全解決了我所有的性能和內存問題。

0

您的IconSourceFilepng,應該是ico。這導致light.exeSystem.OutOfMemoryException

相關問題