akavel / rsrc

Tool for embedding .ico & manifest resources in Go programs for Windows.
MIT License
1.22k stars 122 forks source link

"bad magic number" when trying to run the command #35

Closed Muddz closed 3 years ago

Muddz commented 3 years ago

Description

I have installed the tool with go-get https://github.com/akavel/rsrc in GoLand's terminal in my project and I run this command: rsrc.exe -manifest manifest.xml -ico icon.ico and this: rsrc.exe -ico icon.ico but both gives me the message "bad magic number"

Go version: 1.14.6 OS: Windows 10

My Package structure is: -MyProject

manifest.xml This is copy-pasted from github.com/akavel/rsrc/tree/master/testdata

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <assemblyIdentity version="1.0.0.0" processorArchitecture="*" name="SomeFunkyNameHere" type="win32"/>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*"/>
    </dependentAssembly>
  </dependency>
<application xmlns="urn:schemas-microsoft-com:asm.v3">
  <windowsSettings>
    <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">True</dpiAware>
  </windowsSettings>
</application>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
  <application>
    <!-- Windows Vista -->
    <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
    <!-- Windows 7 -->
    <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
    <!-- Windows 8 -->
    <supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>
    <!-- Windows 8.1 -->
    <supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>
    <!-- Windows 10 -->
    <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
  </application>
</compatibility>
</assembly>
akavel commented 3 years ago

Thanks! I'm afraid this means that your .ico file is in some format that is not recognized by rsrc :/ how did you create it?

Muddz commented 3 years ago

You're right! I changed an .png files extension to .ico and thought that would be enough, but it worked when I used some random online png to ico converter.

Also for anyone else seeing this, the command: rsrc.exe -ico icon.ico is enough and no manifest is needed.

akavel commented 3 years ago

👌