Postupy: Uspořádání výstupních souborů projektu pro sestavení
Toto téma popisuje osvědčené postupy pro uspořádání výstupních souborů projektu. K chybám sestavení může dojít při nesprávném nastavení výstupních souborů projektu. Toto téma také popisuje výhody a nevýhody každé alternativy pro uspořádání výstupních souborů projektu.
Odkazování na sestavení CLR
Odkazování na sestavení pomocí #using
Sestavení můžete odkazovat přímo z kódu pomocí direktivy #using, například
#using <System.Data.dll>
. Další informace naleznete v tématu #using směrnice.Zadaným souborem může být .dll, .exe, .netmodule nebo .obj, pokud je v prostředí MSIL. Odkazovaná komponenta může být sestavena v libovolném jazyce. Pomocí této možnosti budete mít přístup k IntelliSense, protože metadata se extrahují z knihovny MSIL. Příslušný soubor musí být v cestě k projektu; jinak projekt nebude kompilován a IntelliSense nebude k dispozici. Snadný způsob, jak určit, jestli je soubor v cestě, je kliknout pravým tlačítkem myši na #using řádek a zvolit příkaz Otevřít dokument . Pokud soubor nebyl nalezen, zobrazí se vám oznámení.
Pokud nechcete vložit úplnou cestu k souboru, můžete pomocí možnosti kompilátoru /AI upravit cestu hledání pro #using odkazy. Další informace najdete v tématu /AI (určení adresářů metadat).
Odkazování na sestavení pomocí /FU
Místo odkazu na sestavení přímo ze souboru kódu, jak je popsáno výše, můžete použít možnost kompilátoru /FU . Výhodou této metody je, že do každého souboru, který odkazuje na dané sestavení, nemusíte přidávat samostatný příkaz #using.
Chcete-li nastavit tuto možnost, otevřete stránky vlastností projektu. Rozbalte uzel Vlastnosti konfigurace a pak rozbalte uzel C/C++ a vyberte Upřesnit. Přidejte požadovaná sestavení vedle vynucení #using. Další informace naleznete v tématu /FU (název vynucený #using soubor).
Odkazování na sestavení s přidáním nového odkazu
Toto je nejjednodušší způsob, jak používat sestavení CLR. Nejprve se ujistěte, že je projekt zkompilován s možností kompilátoru /clr . Potom klikněte pravým tlačítkem myši na projekt z Průzkumník řešení a vyberte Přidat, Odkazy. Zobrazí se dialogové okno Stránky vlastností.
V dialogovém okně Stránky vlastností vyberte Přidat nový odkaz. Zobrazí se dialogové okno se seznamem všech sestavení .NET, COM a dalších sestavení dostupných v aktuálním projektu. Vyberte požadované sestavení a klepněte na tlačítko OK.
Jakmile je odkaz na projekt nastavený, odpovídající závislosti se automaticky zpracovávají. Vzhledem k tomu, že metadata jsou součástí sestavení, není navíc nutné přidávat hlavičkový soubor ani prototyp prvků, které se používají ze spravovaných sestavení.
Odkazování na nativní knihovny DLL nebo statické knihovny
Odkazování na nativní knihovny DLL nebo statické knihovny
Pomocí direktivy #include použijte odkaz na příslušný hlavičkový soubor v kódu. Soubor záhlaví musí být v cestě k zahrnutí nebo části aktuálního projektu. Další informace najdete v tématu #include – direktiva (C/C++).
Můžete také nastavit závislosti projektu. Nastavení závislostí projektu zaručuje dvě věci. Nejprve zajistí, aby projekty byly sestaveny ve správném pořadí, aby projekt mohl vždy najít závislé soubory, které potřebuje. Za druhé implicitně přidá výstupní adresář závislého projektu do cesty, aby bylo možné snadno najít soubory v době propojení.
Chcete-li nasadit aplikaci, budete muset knihovnu DLL umístit na příslušné místo. Může to být jedna z následujících možností:
Stejná cesta jako spustitelný soubor.
Kdekoli v systémové cestě ( proměnná prostředí cesty ).
V souběžné montáži. Další informace naleznete v tématu Sestavení sestavení C/C++ vedle sebe.
Práce s více projekty
Ve výchozím nastavení se projekty vytvářejí tak, aby se všechny výstupní soubory vytvořily v podadresáři adresáře projektu. Adresář je pojmenovaný na základě konfigurace sestavení (např. Ladění nebo vydání). Aby projekty na stejné straně odkazovaly na sebe, musí každý projekt explicitně přidat další výstupní adresáře projektu do cesty, aby bylo propojení úspěšné. To se provádí automaticky při nastavování závislostí projektu. Pokud ale závislosti nepoužíváte, musíte to pečlivě zpracovat, protože sestavení se můžou velmi obtížně spravovat. Pokud má například projekt konfiguraci ladění a vydávání verzí a obsahuje externí knihovnu z projektu na stejné straně, měl by použít jiný soubor knihovny v závislosti na konfiguraci, která se sestavuje. Proto může být obtížné tyto cesty zakódovat.
Všechny základní výstupní soubory (například spustitelné soubory, přírůstkové soubory linkeru a soubory PDB) se zkopírují do společného adresáře řešení. Proto při práci s řešením, které obsahuje řadu projektů C++ s ekvivalentními konfiguracemi, jsou všechny výstupní soubory centralizované pro zjednodušené propojení a nasazení. Pokud budou tyto soubory uchovávat pohromadě (protože je zaručeno, že soubory budou v cestě), bude jejich aplikace nebo knihovna fungovat podle očekávání.
Umístění výstupních souborů může být hlavním problémem při nasazování do produkčního prostředí. Při spouštění projektů v integrovaném vývojovém prostředí nejsou cesty k zahrnutým knihovnám nutně stejné jako v produkčním prostředí. Pokud máte například v kódu, ale pak nasadíte #using "../../lib/debug/mylib.dll"
mylib.dll do jiné relativní pozice, aplikace selže za běhu. Abyste tomu zabránili, měli byste se vyhnout použití relativních cest v #include příkazech v kódu. Lepší je zajistit, aby potřebné soubory byly v cestě sestavení projektu a podobně zajistily správné umístění odpovídajících produkčních souborů.
Určení umístění výstupních souborů
- Umístění nastavení výstupu projektu najdete na stránkách vlastností projektu. Rozbalte uzel vedle vlastností konfigurace a vyberte Obecné. Umístění výstupu se zadává vedle výstupního adresáře. Další informace naleznete v tématu Stránka obecné vlastnosti (projekt).