Al.exe (linker sestavení)
Nástroj Assembly Linker generuje soubor, který obsahuje sestavení z jednoho nebo více souborů, které jsou buď moduly, nebo soubory prostředků. Modul je soubor jazyka IL, který nemá manifest sestavení.
Poznámka:
Počínaje sadou Visual Studio 2008 se kompilátory jazyka C# i Visual Basic automaticky vloží do sestavení manifest Win32. Další informace naleznete v tématu -win32manifest (možnosti kompilátoru jazyka C#).
Tento nástroj je automaticky nainstalován se sadou Visual Studio. Ke spuštění nástroje použijte Visual Studio Developer Command Prompt nebo Visual Studio Developer PowerShell.
Na příkazovém řádku zadejte následující:
Syntaxe
al sources options
Parametry
Můžete zadat jednu nebo více z následujících sources
možností .
Source | Popis |
---|---|
file [,target ] |
Zkopíruje obsah file souboru (modulu) do názvu souboru určeného .target Po zkopírování Al.exe kompilace target do sestavení. |
/embed[prostředek]: file [,name [,private ]] |
Vloží prostředek určený file do image, která obsahuje manifest sestavení; Al.exe zkopíruje obsah do bitové kopie přenosného spustitelného file souboru (PE).Parametr name je interní identifikátor prostředku. Ve výchozím nastavení jsou prostředky v sestavení veřejné (viditelné pro jiná sestavení). Zadáním private není prostředek viditelný pro jiná sestavení.Pokud file je soubor prostředků rozhraní .NET Framework vytvořený například generátorem souborů prostředků (Resgen.exe) nebo ve vývojovém prostředí, může být přístupný se členy v souboru System.Resources. Další informace najdete na webu ResourceManager. Pro všechny ostatní prostředky použijte GetManifestResource* metody v Assembly běhu pro přístup k prostředku.Pokud se do Al.exe předají jenom soubory prostředků, je výstupní soubor sestavením satelitního prostředku. |
/link[prostředek]: file [,name [,target [,private ]]] |
Propojuje soubor prostředků se sestavením. Prostředek určený file součástí sestavení; soubor se nezkopíruje. Parametr file může být v libovolném formátu souboru. Jako parametr můžete například zadat nativní knihovnu file DLL. Tím se nativní knihovna DLL stane součástí sestavení, aby mohla být nainstalována do globální mezipaměti sestavení (GAC) a mohlo k ní být přistupováno ze spravovaného kódu v sestavení. Můžete to provést také pomocí možnosti kompilátoru /linkresource . Další informace najdete v tématu -linkresource (možnosti kompilátoru jazyka C#).Parametr name je interní identifikátor prostředku. Parametr target určuje cestu a název souboru, do kterého Al.exe zkopíruje file . Po zkopírování Al.exe zkompiluje target do sestavení. Ve výchozím nastavení jsou prostředky v sestavení veřejné (viditelné pro jiná sestavení). Zadáním private není prostředek viditelný pro jiná sestavení.Pokud file je soubor prostředků rozhraní .NET Framework vytvořený například generátorem souborů prostředků (Resgen.exe) nebo ve vývojovém prostředí, může být přístupný se členy v System.Resources oboru názvů. Další informace najdete na webu ResourceManager. Pro všechny ostatní prostředky použijte GetManifestResource* metody ve Assembly třídě pro přístup k prostředku za běhu.Pokud se do Al.exe předají jenom soubory prostředků, je výstupní soubor sestavením satelitního prostředku. |
Můžete zadat následující options
: je nutné zadat /out.
Možnost | Popis |
---|---|
/algid: id |
Určuje algoritmus, který vytvoří hodnotu hash pro všechny soubory ve vícesouborovém sestavení s výjimkou souboru, který obsahuje manifest sestavení. Výchozí algoritmus je CALG_SHA1. Další algoritmy najdete v části ALG_ID v dokumentaci Platform SDK. U první verzi rozhraní .NET Framework jsou platné pouze hodnoty CALG_SHA1 a CALG_MD5. Hodnoty hash jsou uloženy v tabulce souboru manifestu sestavení. V době instalace a načítání jsou soubory sestavení kontrolovány proti jejich hodnotám hash. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyAlgorithmIdAttribute) ve zdrojovém kódu pro libovolný modul. |
/base[adresa]: addr |
Určuje adresu, na kterou budou v počítači uživatele za běhu načteny knihovny DLL. Aplikace se načítají rychleji při zadání základní adresy knihoven DLL, namísto dovolení operačnímu systému přemisťovat knihovny DLL v prostoru procesu. |
/bugreport: filename |
Vytvoří soubor (filename ), který obsahuje informace pro hlášení chyb. |
/comp[any]: text |
Určuje řetězec pro pole Company v sestavení. Pokud řetězec obsahuje mezeru, umístěte řetězec do uvozovek (" text "). Tento řetězec je vlastní atribut sestavení a lze ho zobrazit pomocí reflexe.Pokud nezadáte /win32res, text zobrazí se v Průzkumník souborů jako Company vlastnost souboru. Pokud zadáte /win32res, informace o společnosti v zadaném souboru prostředků se zobrazí jako Company vlastnost v Průzkumník souborů.Pokud je text prázdný řetězec (""), prostředek Win32 Company se zobrazí jako jedna mezera.Pokud zadáte /win32res, /company nebude mít vliv na informace o prostředku Win32. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyCompanyAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/config[uration]: text |
Určuje řetězec pro pole Configuration v sestavení. Pokud řetězec obsahuje mezeru, umístěte řetězec do uvozovek (" text "). Tento řetězec je vlastní atribut sestavení a lze ho zobrazit pomocí reflexe.Pokud je text prázdný řetězec (""), prostředek Win32 Configuration se zobrazí jako jedna mezera. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyConfigurationAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/copy[right]: text |
Určuje řetězec pro pole Copyright v sestavení. Pokud řetězec obsahuje mezeru, umístěte řetězec do uvozovek (" text "). Tento řetězec je vlastní atribut sestavení a lze ho zobrazit pomocí reflexe.Pokud nezadáte /win32res, /copyright se zobrazí v Průzkumník souborů jako zdroj autorských práv Win32. Pokud je text prázdný řetězec (""), prostředek Win32 Copyright se zobrazí jako jedna mezera. Pokud zadáte /win32res, /copyright neovlivní informace o prostředku Win32. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyCopyrightAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/c[ulture]: text |
Určuje řetězec jazykové verze přidružený k sestavení. Platné hodnoty pro jazykové verze jsou definovány dokumentem Internet Requests for Comments (RFC) číslo 1766 s názvem „Tags for the Identification of Languages (Značky pro identifikaci jazyků)“. Pokud řetězec obsahuje mezeru, umístěte řetězec do uvozovek (" text "). Neexistuje žádný výchozí řetězec jazykové verze. Tento řetězec lze zobrazit pomocí reflexe.Informace o platných text řetězcích naleznete v tématu CultureInfo.Tuto možnost můžete také zadat jako vlastní atribut (AssemblyCultureAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/delay[sign][+ or -] |
Určuje, zda bude sestavení zcela nebo částečně podepsáno. Pokud chcete plně podepsané sestavení, použijte /delaysign . Pokud chcete do sestavení zahrnout pouze veřejný klíč, použijte /delaysign+ . Když požádáte o plně podepsané sestavení, Al.exe zatřiďuje soubor, který obsahuje manifest (metadata sestavení) a podepíše hodnotu hash pomocí privátního klíče. Výsledný digitální podpis je uložen do souboru obsahujícího manifest. Když je sestavení podepsáno zpožděním, Al.exe nevypočítá a uloží podpis, ale pouze rezervuje místo v souboru, aby bylo možné podpis přidat později. Výchozí hodnota je /delaysign-. Možnost /delaysign nemá žádný vliv, pokud se nepoužívá s parametrem /keyfile nebo /keyname. Například použití /delaysign+ umožňuje testeru umístit sestavení do globální mezipaměti. Po otestování je možné plně podepsat sestavení včetně soukromého klíče v sestavení. Poznámka: Před použitím Gacutil.exe (nástroj globální mezipaměti sestavení) k vložení sestavení podepsaného zpožděním do globální mezipaměti použijte Sn.exe (Nástroj silného názvu) k registraci sestavení pro přeskočení ověření. Například Sn.exe –Vr delaySignedAssembly . Tato možnost slouží pouze pro vývoj.Tuto možnost můžete také zadat jako vlastní atribut (AssemblyDelaySignAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/descr[iption]: text |
Určuje řetězec pro Description pole v sestavení. Pokud řetězec obsahuje mezeru, umístěte řetězec do uvozovek (" text "). Tento řetězec je vlastní atribut sestavení a lze ho zobrazit pomocí reflexe.Pokud nezadáte /win32res, zobrazí se v Průzkumník souborů jako prostředek Komentáře Win32 . Pokud je text prázdný řetězec, prostředek Win32 Comments se zobrazí jako jedna mezera. Pokud zadáte /win32res, /description neovlivní informace o prostředku Win32. Tuto možnost můžete také zadat jako vlastní atribut (Description) ve zdrojovém kódu pro libovolný modul CIL. |
/e[vidence]: file |
file Vloží se do sestavení s názvem prostředku Security.Evidence.Security.Evidence nelze použít pro běžné prostředky. |
/fileversion: version |
Určuje řetězec pro pole Verze souboru v sestavení. Tento řetězec je vlastní atribut sestavení a lze ho zobrazit pomocí reflexe. Pokud nezadáte /win32res, použije se jako prostředek verze souboru Win32 /fileversion. Pokud nezadáte /fileversion, prostředek verze souboru Win32 bude naplněn prostředkem verze sestavení Win32. Pokud je zadán /win32res , /fileversion nemá vliv na prostředek Win32. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyFileVersionAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/vlajky: flags |
Určuje hodnotu pole Flags v sestavení. Možné hodnoty pro flags :0x0000 Sestavení je souběžně kompatibilní. 0x0010 Sestavení nelze spustit s jinými verzemi, pokud jsou spuštěny ve stejné doméně aplikace. 0x0020 Sestavení nelze spustit s jinými verzemi, pokud jsou spuštěny ve stejném procesu. 0x0030 Sestavení nelze spustit s jinými verzemi, pokud jsou spuštěny na stejném počítači. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyFlagsAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/fullpaths | Způsobí , že Al.exe použít absolutní cestu pro všechny soubory, které jsou hlášeny v chybové zprávě. |
/Pomoc | Zobrazí syntaxi příkazu a možnosti nástroje. |
/keyf[ile]: filename |
Určuje soubor (filename ), který obsahuje pár klíčů nebo jen veřejný klíč pro podepsání sestavení. Kompilátor vloží veřejný klíč do manifestu sestavení a poté podepíše konečné sestavení soukromým klíčem. Informace o generování souborů klíčů a instalaci párů klíčů do kontejnerů klíčů najdete v nástroji Strong Name Tool (Sn.exe).Při použití zpožděného podepisování bude tento soubor obvykle mít veřejný klíč, ale ne soukromý klíč. Údaje o veřejném klíči (z dvojice klíčů) se zobrazí v poli .publickey sestavení. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyKeyFileAttribute) ve zdrojovém kódu pro libovolný modul CIL. Pokud jsou ve stejné kompilaci zadány parametry /keyfile i /keyname (buď pomocí možnosti příkazového řádku nebo vlastního atributu), Al.exe nejprve vyzkouší kontejner zadaný pomocí parametru /keyname. Pokud je tato operace úspěšná, sestavení je podepsáno informacemi z kontejneru klíčů. Pokud Al.exe kontejner klíčů nenajde, zkusí se soubor zadaný pomocí souboru /keyfile. Pokud je to úspěšné, sestavení je podepsáno informacemi v souboru klíče a informace o klíči budou nainstalovány v kontejneru klíčů (podobně jako parametr -i v Sn.exe), takže při další kompilaci bude možnost /keyname platná. |
/keyn[ame]: text |
Určuje kontejner obsahující pár klíčů. Toto podepíše sestavení (dá sestavení silný název) tak, že vloží veřejný klíč do manifestu sestavení. Al.exe pak podepíše konečné sestavení privátním klíčem. K vygenerování páru klíčů použijte Sn.exe . Informace o klíči se zobrazí v poli .publickey sestavení. Umístit text do dvojitých uvozovek (" ") pokud je vložený prostor.Tuto možnost můžete také zadat jako vlastní atribut (AssemblyKeyNameAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/hlavní: method |
Určuje plně kvalifikovaný název (class .method ) metody, který se má použít jako vstupní bod při převodu modulu na spustitelný soubor. |
/nologo | Potlačí banner nebo logo zobrazené na příkazovém řádku při vyvolání Al.exe. |
/ven: filename |
Určuje název souboru vytvořeného Al.exe. Tato možnost je povinná. |
/nástupiště: text |
Omezuje platformy, na kterých lze tento kód spustit. Musí být jedna z možností x86, Itanium, x64, anycpu (výchozí) nebo anycpu32bitpreferred. |
/prod[uct]: text |
Určuje řetězec pro pole Product v sestavení. Pokud řetězec obsahuje mezeru, umístěte řetězec do uvozovek (" text "). Tento řetězec je vlastní atribut sestavení a lze ho zobrazit pomocí reflexe.Pokud nezadáte /win32res, /product se zobrazí v Průzkumník souborů jako prostředek Název produktu Win32. Pokud je text prázdný řetězec, prostředek Název produktu Win32 se zobrazí jako jedna mezera. Pokud zadáte /win32res, /product nebude mít vliv na informace o prostředku Win32. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyProductAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/productv[ersion]: text |
Určuje řetězec pro pole Verze produktu v sestavení. Pokud řetězec obsahuje mezeru, umístěte řetězec do uvozovek (" text "). Tento řetězec je vlastní atribut sestavení a lze ho zobrazit pomocí reflexe.Pokud nezadáte /win32res, použije se jako prostředek verze produktu Win32 /productversion. Pokud nezadáte /productversion, prostředek verze produktu Win32 se naplní prostředkem verze souboru Win32. Pokud zadáte /win32res, /productversion nebude mít vliv na informace o prostředku Win32. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyInformationalVersionAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/t[arget]: lib[rary] | exe | win[exe] |
Určuje formát souboru výstupního souboru: lib[rary] (knihovna kódu), exe (konzolová aplikace) nebo win[exe] (aplikace založená na Systému Windows). Výchozí hodnota je lib[rary] . |
/šablona: filename |
Určuje sestavení, filename z něhož se mají dědit všechna metadata sestavení s výjimkou pole jazykové verze.Sestavení, které vytvoříte pomocí /template , bude satelitní sestavení. |
/titul: text |
Určuje řetězec pro pole Název v sestavení. Pokud řetězec obsahuje mezeru, umístěte řetězec do uvozovek (" text "). Tento řetězec je vlastní atribut sestavení a lze ho zobrazit pomocí reflexe.Pokud nezadáte /win32res, zobrazí se v Průzkumník souborů jako prostředek Popis Win32, který prostředí používá jako popisný název aplikace. Zobrazí se také v podnabídce Otevřít v místní nabídce pro typ souboru, pro který existuje více podpůrných aplikací. Pokud je text prázdný řetězec, prostředek Popis Win32 se zobrazí jako jedna mezera. Pokud zadáte /win32res, /title neovlivní informace o prostředku Win32. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyTitleAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/trade[mark]: text |
Určuje řetězec pro pole Ochranné známky v sestavení. Pokud řetězec obsahuje mezeru, umístěte řetězec do uvozovek (" text "). Tento řetězec je vlastní atribut sestavení a lze ho zobrazit pomocí reflexe.Pokud nezadáte /win32res, zobrazí se v Průzkumník souborů jako prostředek ochranné známky Win32 . Pokud je text prázdný řetězec, prostředek ochranné známky Win32 se zobrazí jako jedna mezera . Pokud zadáte /win32res, /ochranná známka neovlivní informace o prostředku Win32. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyTrademarkAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/v[ersion]: version |
Určuje informace o verzi pro toto sestavení. Formát řetězce verze je major .minor .build .revision . Výchozí hodnota je 0.Pokud zadáte /version, musíte zadat major . Pokud zadáte major a minor , můžete zadat hvězdičku (*)pro build . To způsobí build , že se bude rovnat počtu dnů od 1. ledna 2000, místního času a revision bude se rovnat počtu sekund od půlnoci aktuálního dne, místního času děleného číslem 2.Pokud zadáte major , minor a build , můžete zadat hvězdičku pro revision . To způsobí revision , že se bude rovnat počtu sekund od půlnoci aktuálního dne, místního času děleného číslem 2.Platné řetězce verze jsou tedy tyto: X X.X X.X.* X.X.X X.X.X.* X.X.X.X kde X je libovolná konstanta typu unsigned short s výjimkou 65535 (0–65534). Pokud nezadáte /win32res, /version se použije jako prostředek verze sestavení Win32. Pokud nezadáte /win32res, /productversion a /fileversion, /version, použije se pro prostředky win32 verze sestavení, verze souboru a verze produktu Win32. Pokud zadáte /win32res, /version neovlivní informace o prostředku Win32. Tuto možnost můžete také zadat jako vlastní atribut (AssemblyVersionAttribute) ve zdrojovém kódu pro libovolný modul CIL. |
/win32icon: filename |
Vloží soubor .ico do sestavení. Soubor .ico dává výstupnímu souboru požadovaný vzhled v Průzkumníku souborů. |
/win32res: filename |
Vloží prostředek systému Win32 (soubor .res) do výstupního souboru. Soubor prostředků Win32 lze vytvořit pomocí nástroje Resource Compiler. Nástroj Resource Compiler je vyvolán při kompilaci programu Visual C++; soubor .res je vytvořen ze souboru .rc. |
@filename |
Určuje soubor odpovědi, který obsahuje příkazy Al.exe . Příkazy v souboru odpovědí se mohou objevit na samostatných řádcích nebo na stejném řádku, oddělené jednou nebo více mezerami. |
/? | Zobrazí syntaxi příkazu a možnosti nástroje. |
Poznámky
Všechny kompilátory sady Visual Studio vytváří sestavení. Pokud ale máte jeden nebo více modulů (metadata bez manifestu), můžete pomocí Al.exe vytvořit sestavení s manifestem v samostatném souboru.
Chcete-li nainstalovat sestavení v mezipaměti, odeberte sestavení z mezipaměti nebo vypište obsah mezipaměti pomocí nástroje Globální mezipaměť sestavení (Gacutil.exe).
Chyby a upozornění
Následující tabulka uvádí chyby vygenerované Al.exe.
Chyba | Popis |
---|---|
al1001 | vnitřní chyba kompilátoru Pokuste se zjistit, jestli Al.exe selhává kvůli nemožnosti parsovat neočekávanou syntaxi. Pak se obraťte na služby technické podpory společnosti Microsoft. |
al1002 | Nedostatek paměti Al.exe nedostatek paměti a zastavil se. Zvyšte množství dostupné paměti. |
al1003 | Za možností kompilátoru "option" musí následovat argument. Al.exe očekávali předání argumentu do možnosti příkazového řádku. Pokud například zadáte /algid:, musíte předat identifikátor algoritmu. |
al1004 | Neočekávaná chyba inicializace modulu CLR (Common Language Runtime) – reason Al.exe oznámili chybu při instalaci sady Visual Studio nebo modulu CLR (Common Language Runtime) ze zadaného důvodu. |
al1005 | Soubor 'soubor' příliš velký na otevření Všechny soubory otevřené Al.exe musí být menší než 4 gigabajty (GB). |
al1006 | Soubor odpovědi "file" už byl zahrnutý. Stejný soubor odpovědi byl zadán @file () více než jednou na příkazovém řádku. Soubor odpovědi lze zahrnout pouze jednou. |
al1007 | Při otevírání souboru odpovědi "file" došlo k chybě – reason Al.exe nelze otevřít zadaný soubor odpovědi z zadaného důvodu. |
al1008 | Chybí specifikace souboru pro možnost příkazového řádku option Al.exe očekávali předání souboru do možnosti příkazového řádku. Pokud například zadáte možnost /out , musíte zadat soubor. |
al1009 | Nelze otevřít soubor pro zápis Al.exe nemohl zapisovat do souboru, jako je výstupní soubor sestavení. Disk může být plný, soubor může být jen pro čtení nebo nemáte oprávnění k souboru. |
al1010 | Chyba syntaxe příkazového řádku: U možnosti option chybí :text. Al.exe očekávali předání argumentu do možnosti příkazového řádku. Pokud například zadáte možnost /title , musíte předat řetězec. |
al1011 | Soubor 'file' je spustitelný soubor a nelze ho otevřít jako textový soubor. Byl zadán binární soubor, ve kterém byl očekáváný textový soubor. K této chybě dochází například v případě, že se binární soubor předá na příkazovém řádku jako soubor odpovědi. |
al1012 | Hodnota není platným nastavením pro možnost Option. Do možnosti příkazového řádku byla předána neočekávaná hodnota. K této chybě dochází například v případě, že zadáte neplatnou hodnotu možnosti /target . |
al1013 | Nerozpoznaná možnost příkazového řádku: option Byla zadána neplatná možnost příkazového řádku. |
al1014 | Neočekávaná chyba inicializace – důvod Al.exe zjistilo selhání inicializace modelu COM. Příčinou může být nedostatek paměti, ale s větší pravděpodobností příčinou jsou systémové soubory DLL. Podobná chyba by se měla zobrazit, pokud spustíte jakýkoli program podporující automatizaci nebo program modelu COM, například Microsoft Visual Studio. Přeinstalujte operační systém. |
al1015 | Nepodařilo se najít soubor zpráv alinkui.dll Al.exe vyžaduje Alinkui.dll. Ujistěte se, že je tento soubor ve vaší cestě. V případě potřeby ho zkopírujte z disku CD produktu. |
al1016 | Nebyly zadány žádné platné vstupní soubory. Al.exe vyžaduje jeden nebo více vstupních souborů, které nemají informace o sestavení. |
al1017 | Nebyl zadán žádný cílový název souboru. Požadovaná možnost /out určující název cílového souboru nebyla nalezena. |
al1018 | Požadovaný soubor "soubor" nelze načíst. Některé soubory DLL nelze načíst. Přeinstalujte Sadu Visual Studio nebo sadu Windows SDK. |
al1019 | Selhání metadat při vytváření sestavení – důvod Generování sestavení bylo přerušeno z určeného důvodu. K této chybě dochází například v případě, že nebyl nalezen soubor, který zadáte s možností /win32res . |
al1020 | Ignorování zahrnuté sestavení "file" Byl zadán vstupní soubor, který obsahoval sestavení. Al.exe vstupní soubory nemohou obsahovat sestavení. |
al1021 | 'setting' : přepsání předchozího nastavení Modul měl hodnotu pro konkrétní nastavení, pravděpodobně přiřazené prostřednictvím vlastních atributů, které byly přepsány hodnotou předanou pomocí možnosti příkazového řádku Al.exe . |
al1022 | Při čtení vloženého prostředku "soubor" došlo k chybě – důvod Al.exe nelze přečíst soubor předaný do parametru /embedresource z zadaného důvodu. |
al1023 | Chyba při vkládání prostředku "soubor" – důvod Operační systém nemůže vložit soubor prostředků do sestavení z určeného důvodu. |
al1025 | Záznam ComType odkazuje na neplatný záznam "záznam" souboru Metadata ve vstupním modulu jsou neplatná. Nástroj, který modul vytvořil, musí být opraven. |
al1026 | Zadaná verze verze je neplatná. Viz informace o možnosti /version pro platné formáty. |
al1028 | V souboru klíče "file" chybí privátní klíč potřebný k podepisování. Soubor klíče, který obsahuje pouze veřejný klíč, byl předán do možnosti /keyfile . Pomocí nástroje Strong Name (Sn.exe) vygenerujte soubor, který má veřejný i privátní klíč, jak je znázorněno v následujícím příkazu. sn -k keypair.snk. |
al1029 | Název kontejneru klíčů "kontejner" neexistuje. Hodnota předaná do parametru /keyname není platný kontejner. K vytvoření kontejneru použijte nástroj Strong Name Tool (Sn.exe). |
al1030 | Kryptografická služba není správně nainstalována nebo nemá vhodného zprostředkovatele klíčů. Možná budete muset přeinstalovat operační systém nebo nainstalovat nějaký kryptografický nástroj, který se použil k vytvoření klíče. |
al1031 | Chyba při čtení ikony "soubor" – důvod Al.exe nelze přečíst soubor předaný do parametru /win32icon z zadaného důvodu. |
al1032 | Chyba při generování prostředků pro soubor – důvod Al.exe nemůže vytvořit soubor kvůli nedostatku místa na disku nebo jiné chybě. K této chybě dochází, když zadáte možnost /win32icon (která generuje soubor .ico) nebo nezadáte možnost /win32res (která generuje soubor s informacemi o prostředku). Pokud nemůžete problém s generováním souborů vyřešit, použijte /win32res, který určuje soubor, který může obsahovat informace o verzi nebo rastru (ikona). |
al1033 | Atribut "attribute" sestavení byl zadán vícekrát s různými hodnotami. Různé hodnoty byly předány dvěma výskytům stejného vlastního atributu ve zdrojových modulech, které jsou zadány jako vstup pro Al.exe. |
al1034 | Sestavení "soubor" nelze zkopírovat ani přejmenovat. Při použití syntaxe Al.exe , která umožňuje zadat vstupní soubor a zkopírovat ho, vznikl konflikt názvů, který zastavil kompilátor. K této chybě dochází například v případě, že zadáte input.dll,somename.dll /out:somename.dll . |
al1035 | Knihovny nemohou mít vstupní bod. Nelze zadat možnost /target:lib (výchozí) i možnost /main . |
al1036 | Vstupní bod vyžadovaný pro spustitelné aplikace Při použití parametru /target:exe nebo /target:win je nutné zadat také možnost /main . |
al1037 | Nelze najít metodu vstupního bodu main. Al.exe nelze najít metodu Main v umístění určeném parametrem /main. |
al1039 | Inicializace globálního správce mezipaměti sestavení selhala – důvod Přeinstalujte Sadu Visual Studio nebo sadu Windows SDK. |
al1040 | Instalace sestavení do mezipaměti se nezdařila – důvod Do mezipaměti lze nainstalovat pouze podepsaná sestavení. Další informace naleznete v tématu Globální mezipaměť sestavení. |
al1041 | 'method': nemůže být vstupním bodem, protože podpis nebo viditelnost je nesprávný nebo je obecný. Byla zadána metoda s parametrem /main , ale tato metoda není statická, nevrací int nebo void , byla obecná nebo má neplatné argumenty. |
al1042 | 'exe': ExEs nelze přidat moduly. Soubor .exe , který nemá sestavení, byl zadán jako vstupní soubor pro Al.exe. Al.exe mohou přijímat pouze soubory dll bez sestavení jako vstupní soubory. |
al1043 | Název souboru manifestu name nemůže být stejný jako žádné moduly. Název zadaný parametrem /out nemůže být stejný jako žádný z názvů souborů zadaných jako vstup pro Al.exe. |
al1044 | Chyba při čtení souboru klíče "soubor" – důvod Při otevírání nebo čtení ze souboru zadaného pomocí /keyfile nebo souboru AssemblyKeyFileAttributedošlo k chybě. |
al1045 | Název souboru je příliš dlouhý nebo neplatný. Název souboru delší než 260 znaků byl předán Al.exe. Zvolte název souboru s menším počtem znaků nebo kratší cestou nebo soubor přejmenujte. |
al1046 | Identifikátor prostředku 'ID' již byl použit v tomto sestavení. Dva prostředky, vložené nebo propojené, mají stejný identifikátor nebo název (druhý argument). Odeberte nebo přejmenujte jeden z konfliktních prostředků. |
al1047 | Při importu souboru "soubor" došlo k chybě – důvod Soubor modulu nelze otevřít z zadaného důvodu. |
al1048 | Chyba při importu modulu sestavení assembly assembly – důvod Při otevírání souboru jiného souboru vícesouborového sestavení došlo k chybě. Tato chyba není generována přímo Al.exe, ale lze ji předat programově procesu, který používá Al.exe. |
al1049 | Nelze automaticky vygenerovat čísla verzí sestavení a revizí pro kalendářní data před 1. lednem 2000. Systémové hodiny v počítači jsou nastavené na datum dřívější než 1. ledna 2000. |
al1050 | Funkce, kterou používáte , se už nepodporuje. Místo toho prosím použijte novou funkci. Funkce, kterou dříve podporoval Al.exe , je teď zastaralá. Místo toho použijte doporučenou funkci. |
al1051 | Chyba při generování atributu attribute – důvod Vlastní atribut sestavení nebyl zpracován Al.exe z zadaného důvodu. |
al1052 | Soubor "název_souboru" není sestavení Soubor zadaný pomocí /template musí obsahovat metadata sestavení. Tato chyba značí, že soubor určený parametrem /template neobsahoval sestavení. |
al1053 | Verze verze zadaná pro možnost není v normálním formátu major.minor.build.revision. Al.exe zjistila informace o špatně vytvořené verzi zadané pomocí možností /fileversion nebo /productversion. |
al1054 | Verze verze zadaná pro možnost není v normálním formátu major.minor.build.revision. Al.exe zjištěny informace o neformulované verzi zadané pomocí SatelliteContractVersionAttribute. |
al1055 | Odkazované sestavení název souboru nemá silný název. Tato chyba se zobrazí při sestavování sestavení se silným názvem a odkazem na sestavení, které nemá silný název. Chcete-li tento problém vyřešit, je nutné znovu vygenerovat sestavení silným názvem nebo připojit silný název sestavení pomocí Sn.exe (viz dokumentace pro Sn.exe). Běžným výskytem této chyby je, že používáte objekty MODELU COM prostřednictvím sestavení obálky, například když přidáváte odkaz na modul COM do projektu C# prostřednictvím integrovaného vývojového prostředí sady Visual Studio. Chcete-li se této chybě vyhnout, můžete zadat soubor klíče silného názvu pro sestavení obálky COM ve vlastnosti projektu "Soubor/název klíče sestavení obálky" Pokud vytváříte sestavení obálky prostřednictvím tlbimpu, přečtěte si dokumentaci k tlbimpu , kde najdete informace o tom, jak přiřadit silný název sestavení obálky. Pokud má sestavení silný název, lze jej nainstalovat do globální mezipaměti sestavení. Odkazovaná sestavení by proto také přešla do globální mezipaměti sestavení. Do globální mezipaměti sestavení mohou přejít pouze sestavení se silnými názvy. |
al1056 | Odkazované sestavení "název souboru" je lokalizované satelitní sestavení. Sestavení vytvořené pomocí atributu AssemblyCultureAttribute bylo odkazováno při vytváření aktuálního sestavení. Atribut AssemblyCultureAttribute označuje, že soubor je lokalizované satelitní sestavení a není vhodné odkazovat na satelitní sestavení. Místo toho odkazujte na hlavní nadřazené sestavení. |
al1057 | Spustitelné soubory nelze lokalizovat, jazyková verze by měla být vždy prázdná. Sestavení je vytvářeno pomocí /target:exe , ale /culture byl zadán. Sestavení v .exe nemohou mít informace v poli Jazyková verze. |
al1058 | Soubor je sestavení a nelze ho přidat jako modul. V kompilaci jazyka C++ bylo předáno /assemblymodule (možnost linkeru) soubor, který obsahoval sestavení. |
al1059 | Neznámá chyba (kód) Al.exe obdržel neznámý kód chyby ( code ).Mezi možná řešení patří: Přeinstalujte Visual Studio. Přeinstalujte sadu Windows SDK. Zkontrolujte chybějící soubory. Zkontrolujte odpovídající místo na disku. Zkontrolujte odpovídající paměť. Zastavte jiné procesy, které můžou přistupovat k souborům. Restartujte počítač. |
al1060 | Selhání kryptografie při vytváření hodnot hash – důvod Při vytváření hodnot hash souborů pro vícesouborové sestavení došlo k chybě. |
al1061 | Možnost option 'option' nejde nastavit, protože 'reason' Hodnota zadaná pro tuto možnost je pro zadaný důvod neplatná. |
al1062 | Modul "module" byl zadán několikrát; bude zahrnuta pouze jednou. Toto upozornění se vygeneruje, když se na příkazovém řádku několikrát zadá stejný zdrojový, vstupní nebo modulový soubor. Ujistěte se, že název souboru zadáte pouze jednou. |
al1063 | Veřejný typ "type" je definován ve více umístěních v tomto sestavení: "file1" a 'file2' Stejný typ byl nalezen ve více než jednom modulu v sestavení. V sestavení může být přítomna pouze jedna verze každého typu. |
al1064 | Nelze zadat více možností /bugreport. Je povolena pouze jedna možnost /bugreport . |
al1065 | Název souboru Název souboru je příliš dlouhý nebo neplatný. Zadaný název souboru je delší než maximální povolený. |
al1066 | Znak znaku není povolen na příkazovém řádku nebo v souborech odpovědí. Byl nalezen neplatný znak, a to buď na příkazovém řádku, nebo v souboru. |
al1067 | Název souboru je binární soubor místo textového souboru. Soubor je v binárním formátu místo textu. |
al1068 | Modul ModuleName je již definován v tomto sestavení. Každý propojený prostředek a modul musí mít jedinečný název souboru. Modul se v tomto sestavení vyskytuje více než jednou. |
al1069 | Krátký název souboru název souboru nelze vytvořit, pokud již existuje dlouhý název souboru se stejným krátkým názvem. Aktuální soubor má název, který je krátká verze názvu souboru, který již existuje. Kompilace LongFileName.cs a následné překompilování s názvem LongFi~1.cs způsobí podobnou chybu kompilátoru. Pokud byly odstraněny výstupní soubory kompilátoru s dlouhými názvy, ale podobné soubory linkeru zůstaly, může k této chybě dojít. |
al1070 | Nezávislé sestavení nemůže mít modul specifický pro procesor –Název modulu Pokud vytváříte pomocí /platform:agnostic (nebo nezadáte /platformu), vygeneruje se chyba, pokud se pokusíte přidat modul (pomocí /addmodule), který není nezávislý. To se podobá pokusu o propojení souboru i386 obj s obj ia64 obj. Hlavním zdrojem modulů, které nejsou nezávislé, je C++. Pokud používáte /addmodule s modulem C++, možná budete muset upravit skripty sestavení tak, aby určily příslušné nastavení /platformu . |
al1072 | Sestavení a modul Název modulu nemohou cílit na různé procesory. Sestavení a modul, které jsou cílem různých procesorů, nelze propojit, protože výsledek musí běžet na jednom procesoru. |
al1073 | Odkazované sestavení sestavení cílí na jiný procesor. Nelze propojit sestavení cílená na různé procesory, protože výsledek musí běžet na jednom procesoru. |
al1074 | Název modulu "Název modulu" uložený v názvu souboru se musí shodovat s názvem souboru. To je vyžadováno u linkeru. Pokud chcete tento problém vyřešit, nastavte shodu dvou názvů. |
al1075 | Bylo požadováno zpoždění podepisování, ale nebyl udělen žádný klíč. Když je sestavení podepsáno zpožděním, kompilátor nevypočítá a uloží podpis, ale rezervuje místo v souboru, aby bylo možné podpis přidat později. Například použití /delaysign+ umožňuje testeru umístit sestavení do globální mezipaměti. Po otestování můžete sestavení plně podepsat přidáním privátního klíče do sestavení pomocí nástroje Assembly Linker. |
al1076 | Typ type 'type' se předává do více sestavení: 'assembly' a 'assembly'. Typ lze předat pouze do jednoho sestavení. |
al1077 | Veřejný typ 'type' je definován v 'sestavení' a předán do 'assembly'. V sestavení, které se generuje, je duplicitní veřejný typ. Jedna je platná definice typu a druhá je předávání typů. |
Příklad
Následující příkaz vytvoří spustitelný soubor t2a.exe sestavením z t2.netmodule
modulu. Vstupním bodem je Main
metoda v MyClass
.
al t2.netmodule /target:exe /out:t2a.exe /main:MyClass.Main