Search code examples
visual-studiovsix

The "VSCTCompiler" task failed unexpectedly with OutOfMemoryException


What I did is:

I created a new VSIX Project from the Extensibility Template. I added a new Item for ToolWindow1.

Then I compiled and got the message. It is on Visual Studio 2015. Memory on computer is 8GB and Visual Studio is installed on brand new computer.

The message I got is as follows:

Severity    Code    Description Project File    Line    Suppression State
Error       The "VSCTCompiler" task failed unexpectedly.
System.OutOfMemoryException: Out of memory.
   at System.Drawing.Image.FromFile(String filename, Boolean useEmbeddedColorManagement)
   at Microsoft.VisualStudio.CommandTable.BitmapItem.Read(TextReadVSCTCStream s, XmlElement itemNode)
   at Microsoft.VisualStudio.CommandTable.ItemList.Read(TextReadVSCTCStream s, XmlElement listNode)
   at Microsoft.VisualStudio.CommandTable.CommandTable.ReadCMDSSection(TextReadVSCTCStream s, XmlElement listNode)
   at Microsoft.VisualStudio.CommandTable.CommandTable.Read(TextReadVSCTCStream s)
   at Microsoft.VisualStudio.CommandTable.CommandTable.Read(String fileName, ReadOptions ro, IMessageProcessor errorProcessor)
   at Microsoft.VisualStudio.CommandTable.CommandTable.Read(String fileName, IMessageProcessor errorProcessor)
   at Microsoft.VisualStudio.CommandTable.Compiler.Compile()
   at Microsoft.VisualStudio.CommandTable.VSCTCompiler.Execute()    VSIXProject1

Is there any way out on this?


Solution

  • It seems that the File created by Visual Studio is corrupted. You can check the file yourself in the File Explorer in the Folder "/Resources" (which should lie next to your .csproj file) and try to open it with another program.

    To fix the error, replace the file with a valid .png file. For me it worked by creating a new "ItemTemplate" Project from the Extensibility Templates. Then Add Item -> Custom Command.

    This created a valid .png, which can be used to replace the corrupt .png file from the VSIX Project.

    Solution found here: https://dotblogs.com.tw/rainmaker/2016/08/23/132552.

    If you cannot speak Korean, here is the google translation: https://translate.google.at/translate?hl=de&sl=zh-TW&u=https://dotblogs.com.tw/rainmaker/2016/08/23/132552&prev=search