Erőforrásokat jelölő C#-fordítóbeállítások

Az alábbi beállítások szabályozzák, hogy a C#-fordító hogyan hozza létre vagy importálja a Win32-erőforrásokat. Az új MSBuild szintaxis félkövér formátumban jelenik meg. A régebbi csc.exe szintaxis a .code style

  • Win32Resource / -win32res: Adjon meg egy Win32-erőforrásfájlt (.res).
  • Win32Icon / -win32icon: Referencia metaadatok a megadott szerelvényfájlból vagy fájlokból.
  • Win32Manifest / -win32manifest: Adjon meg egy Win32 jegyzékfájlt (.xml).
  • NoWin32Manifest / -nowin32manifest: Ne tartalmazza az alapértelmezett Win32-jegyzékfájlt.
  • EmbeddedResource / -resource: A megadott erőforrás beágyazása (rövid űrlap: /res).
  • LinkResource / -linkresource: A megadott erőforrás csatolása ehhez a szerelvényhez.

Feljegyzés

A projekt beállításainak konfigurálásáról további információt a Fordító beállításai című témakörben talál.

Win32Resource

A Win32Resource beállítás beszúr egy Win32-erőforrást a kimeneti fájlba.

<Win32Resource>filename</Win32Resource>

filename az az erőforrásfájl, amelyet hozzá szeretne adni a kimeneti fájlhoz. A Win32-erőforrások olyan verzió- vagy bitképadatokat (ikont) tartalmazhatnak, amelyek segítenek azonosítani az alkalmazást a Fájlkezelőben. Ha nem adja meg ezt a beállítást, a fordító a verzióinformációkat a szerelvény verziója alapján hozza létre.

Win32Icon

A Win32Icon beállítás beszúr egy .ico fájlt a kimeneti fájlba, amely a kívánt megjelenést adja a fájlnak a Fájlkezelőben.

<Win32Icon>filename</Win32Icon>

filename a kimeneti fájlhoz hozzáadni kívánt .ico fájl. Az erőforrás-fordítóval.ico fájlt hozhat létre. A Program meghívja az Erőforrás-fordítót egy Visual C++ program fordításakor. A rendszer létrehoz egy .ico fájlt az .rc fájlból.

Win32Manifest

A Win32Manifest beállítással megadhat egy felhasználó által definiált Win32-alkalmazásjegyzékfájlt a projekt hordozható végrehajtható (PE) fájljába való beágyazásához.

<Win32Manifest>filename</Win32Manifest>

filename az egyéni jegyzékfájl neve és helye. A C#-fordító alapértelmezés szerint beágyaz egy alkalmazásjegyzéket, amely megadja a kért végrehajtási szintet asInvoker. A jegyzékfájlt ugyanabban a mappában hozza létre, amelyben a végrehajtható fájl létre van hozva. Ha egyéni jegyzékfájlt szeretne megadni, például meg szeretné adni a kért végrehajtási szintet highestAvailable , requireAdministratorakkor ezzel a beállítással adhatja meg a fájl nevét.

Feljegyzés

A Win32Manifest és a Win32Resource lehetőség kölcsönösen kizárja egymást. Ha mindkét lehetőséget ugyanabban a parancssorban próbálja használni, buildelési hiba jelenik meg.

A kért végrehajtási szintet meghatározó alkalmazásjegyzéket nem tartalmazó alkalmazások fájl- és beállításjegyzék-virtualizálást igényelnek a Windows Felhasználói fiókok felügyelete szolgáltatásában. További információ: Felhasználói fiókok felügyelete.

Az alkalmazás virtualizálása akkor történik, ha az alábbi feltételek valamelyike teljesül:

  • A NoWin32Manifest lehetőséget használja, és a Win32Resource beállítással nem ad meg jegyzékfájlt egy későbbi buildelési lépésben vagy Egy Windows-erőforrás (.res) fájl részeként.
  • Olyan egyéni jegyzékfájlt kell megadnia, amely nem ad meg kért végrehajtási szintet.

A Visual Studio létrehoz egy alapértelmezett .manifest fájlt, és a végrehajtható fájl mellett a hibakeresési és kiadási könyvtárakban tárolja. Egyéni jegyzékfájlt úgy vehet fel, hogy létrehoz egyet bármelyik szövegszerkesztőben, majd hozzáadja a fájlt a projekthez. Vagy kattintson a jobb gombbal a Projekt ikonra Megoldáskezelő, válassza az Új elem hozzáadása, majd az Alkalmazásjegyzék-fájl lehetőséget. Az új vagy meglévő jegyzékfájl hozzáadása után megjelenik a Jegyzék legördülő listában. További információ: Application Page, Project Designer (C#).

Az alkalmazásjegyzéket egyéni buildelési lépésként vagy Win32-erőforrásfájl részeként is megadhatja a NoWin32Manifest beállítással. Ezt a lehetőséget akkor használja, ha azt szeretné, hogy az alkalmazás fájl- vagy beállításjegyzék-virtualizálásra legyen kitéve a Windows Vista rendszerben.

NoWin32Manifest

A NoWin32Manifest beállítással utasíthatja a fordítót, hogy ne ágyazzon be alkalmazásjegyzéket a végrehajtható fájlba.

<NoWin32Manifest />

Ha ezt a lehetőséget választja, az alkalmazás virtualizálásra kerül Windows Vista, hacsak nem ad meg egy alkalmazásjegyzéket egy Win32-erőforrásfájlban vagy egy későbbi buildelési lépés során.

A Visual Studióban állítsa be ezt a beállítást az Alkalmazástulajdonság lapon az Alkalmazás létrehozása jegyzék nélkül lehetőség kiválasztásával a Jegyzéklista legördülő listában. További információ: Application Page, Project Designer (C#).

EmbeddedResource

Beágyazza a megadott erőforrást a kimeneti fájlba.

<EmbeddedResource Include="filename">
  <LogicalName>identifier</LogicalName>
  <Access>accessibility-modifier</Access>
</EmbeddedResource>

filename A kimeneti fájlba beágyazni kívánt .NET-erőforrásfájl. identifier (nem kötelező) az erőforrás logikai neve: az erőforrás betöltéséhez használt név. Az alapértelmezett a fájl neve. accessibility-modifier (nem kötelező) az erőforrás akadálymentessége: nyilvános vagy privát. Az alapértelmezett érték nyilvános. Alapértelmezés szerint az erőforrások nyilvánosak a szerelvényben, amikor a C# fordítóval hozza létre őket. Az erőforrások privátsá tétele érdekében adja meg private az akadálymentesség-módosító lehetőséget. Más akadálymentesség nem engedélyezett. Ha filename egy .NET erőforrásfájl, amelyet például Resgen.exe vagy fejlesztési környezetben hoztak létre, a névtérben lévő System.Resources tagok használatával érheti el. További információ: System.Resources.ResourceManager. Az összes többi erőforrás esetében az GetManifestResource osztály metódusaival Assembly érheti el az erőforrást futásidőben. A kimeneti fájlban lévő erőforrások sorrendje a projektfájlban megadott sorrendből származik.

LinkResource

Egy .NET-erőforrásra mutató hivatkozást hoz létre a kimeneti fájlban. Az erőforrásfájl nem lesz hozzáadva a kimeneti fájlhoz. A LinkResource eltér az EmbeddedResource beállítástól, amely egy erőforrásfájlt ágyaz be a kimeneti fájlba.

<LinkResource Include="filename">
  <LogicalName>identifier</LogicalName>
  <Access>accessibility-modifier</Access>
</LinkResource>

filename Az a .NET-erőforrásfájl, amelyhez a szerelvényből szeretne kapcsolódni. identifier (nem kötelező) az erőforrás logikai neve: az erőforrás betöltéséhez használt név. Az alapértelmezett a fájl neve. accessibility-modifier (nem kötelező) az erőforrás akadálymentessége: nyilvános vagy privát. Az alapértelmezett érték nyilvános. Alapértelmezés szerint a csatolt erőforrások nyilvánosak a szerelvényben, amikor a C# fordítóval hozza létre őket. Az erőforrások privátsá tétele érdekében adja meg private az akadálymentesség-módosító lehetőséget. Más módosító nem engedélyezett. Ha filename egy .NET erőforrásfájl, amelyet például Resgen.exe vagy fejlesztési környezetben hoztak létre, a névtérben lévő System.Resources tagok használatával érheti el. További információ: System.Resources.ResourceManager. Az összes többi erőforrás esetében az GetManifestResource osztály metódusaival Assembly érheti el az erőforrást futásidőben. A megadott filename fájl bármilyen formátumú lehet. Előfordulhat például, hogy natív DLL-t szeretne a szerelvény részévé tenni, hogy az telepíthető legyen a globális szerelvény-gyorsítótárba, és elérhető legyen a szerelvény felügyelt kódjából. Ugyanezt megteheti a Assembly Linkerben is. További információ: Al.exe (Assembly Linker) és a Szerelvények és a Globális szerelvénygyorsítótár használata.