Search code examples
winapiutf-8manifestbyte-order-mark

Application manifest - does it require UTF-8 BOM?


If I am to create application manifest and embed it as resource into my application, should my MyApplication.manifest file contain UTF-8 BOM or not (0xEF,0xBB,0xBF) before compiling it as an application resource?

The same question applies if I am to use manifest file separated from the main EXE (by adding it next to main EXE e.g. MyApp.exe and MyApp.manifest)?

If you have any references to this, it would be useful, I could not find any.


Solution

  • No, the manifest is an XML file. Which states the text encoding used in the rest of the file with the processing instruction:

    <?xml version='1.0' encoding='UTF-8' standalone='yes'?>
    

    The resource compiler will embed the file as-is. It does come to a good end if the file starts with a BOM anyway, the operating system knows how to skip it. As long as it matches the processing instruction anyway.