Už je to nějaký ten pátek, co Microsoft vydal express edice svých vývojových nástrojů, a přesto se na některých programátorských fórech objevují dotazy, zda se dají použít tyto nástroje na vývoj aplikací ve Windows API. V tomto článku popíšu, jak si toto prostředí přizpůsobit tak, aby v něm bylo možno tyto aplikace vytvářet. Ještě dodám, že všechny express edice jsou zcela free, a to i na tvorbu komerčních aplikací.
- Instalace
- Resource editor
- Nastavení Visual C++ 2005 Express Edition
- Na MFC si nechte zajít chuť
- Kde získat MSDN
- Závěrem
Instalace
Předem upozorňuji, že se jedná o velké soubory a pokud někdo vlastní pomalé připojeni, přeji hodně trpělivosti a ty z vás, které Telecom (nebo jak se teď jmenují) obdařil v dnešní době i tak závratnou technologií, jako je třeba dial-up (hlavně všechny vesnice), tak s vámi soucítím a doporučuji raději zakoupit Visual C++ 2005 Standard Edition, a to z toho důvodu, že vás to vyjde levněji než Express Edice stažená přes dial-up. Ale to jsem trošku odbočil.
Nejprve si tedy pořídíme potřebné instalační soubory, a sice hlavně instalaci Visual C++ 2005 Express Edition na jeho domácí stránce, anebo přímo na stránce, kde jsou image instalačních CD i dalších produktů z řady express edition. Dále budete potřebovat instalaci Platform SDK, která je dostupná u Microsoftu, a to opět jako image CD disku. Ze získaných image CD pak lze vytvořit vypálením fyzická instalační CD, anebo je dál zpracovat třeba v IsoBuster a Daemon Tools.
Nejprve nainstalujte Visual C++ 2005 Express Edition, instalace by neměla činit potíže. Jediné, co je potřeba dodržet, je mít poslední service pack systému. V případě Windows XP je to service pack 2.
Po instalaci Visual C++ 2005 Express Edition nainstalujte ještě Platform SDK. Zde je dobré u obou instalací ponechat defaultní adresáře instalace. Po úspěšné instalaci Visual C++ 2005 Express Edition a Platform SDK je vše připraveno pro další kroky, které jsou popsány dále.
Resource editor
Problém absence Resource editoru ve Visual C++ 2005 Express Edition bude asi pro ty, co jsou zvyklí dělat GUI z resource souboru. Bohužel, cílem express edicí je poukázat na výhody aplikací typu winform. Co se týká čistého API, tomu už Microsoft moc neholduje a jejich podporu třeba ve Windows Vista drží jen kvůli zpětné kompatabilitě. Existuje však mnoho resource editorů třetích stran. Nejčastěji je doporučován resource editor RADASM. Ale já jsem nedávno nalezl resource editor, který je hodně vyhovující pro Visual C++ 2005 Express Edition, a to ResEdit:
Zip archiv rozbalte a soubory nakopírujte do adresáře C:\Program Files\Microsoft Visual Studio 8\Common7\Tools. Jak zakomponovat tento resource editor do Visual C++ 2005 Express Edition, to si povíme v následujícím textu.
Nastavení Visual C++ 2005 Express Edition
Tato část je více rozsáhlá, a proto si ještě připomeňme, co už by jste měli mít hotové.
- Nainstalované Visual C++ 2005 Express Edition
- Nainstalované Platform SDK
- Stažený ResEdit a nakopírovaný do C:\Program Files\Microsoft Visual Studio 8\Common7\Tools
Spusťte Visual C++ 2005 Express Edition, v menu zvolte Tools> Options…. V okně Options na levé straně vyberte Project and Solutions> VC++ Directories. V pravé části pak postupně vybírejte v položce Show directories for a přidejte ke zde uvedeným položkám tyto adresáře:
- Executable files:
- C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin
- Include files:
- C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include
- Library files:
- C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib
Změny potvrďte a ukončete Visual C++ 2005 Express Edition.
Jako další krok editujte například v Notepadu soubor corewin_express.vsprops, který se nachází v C:\Program Files\Microsoft Visual Studio 8\VC\VCProjectDefaults. Pozor, tento soubor má attribut „pouze pro čtení“, tak ho nezapomeňte změnit. V souboru vyhledejte řádek AdditionalDependencies a za ním následuje znak „=“, kde je uvedeno „kernel32.lib“. Tento text změňte na kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib, takže řádek bude vypadat takto:
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
Dalším krokem je editace souboru AppSettings.htm, který naleznete v adresáři C:\Program Files\Microsoft Visual Studio 8\VC\VCWizards\AppWiz\Generic\Application\html\1033\. V tomto souboru vyhledejte řádky 441 až 444, kde naleznete tento text:
WIN_APP.disabled = true;
WIN_APP_LABEL.disabled = true;
DLL_APP.disabled = true;
DLL_APP_LABEL.disabled = true;
Vy před každý řádek přidejte dvě lomítka jako poznámka, tak, aby z toho vyšlo něco jako toto:
//WIN_APP.disabled = true;
//WIN_APP_LABEL.disabled = true;
//DLL_APP.disabled = true;
//DLL_APP_LABEL.disabled = true;
Změny uložte a spusťte znovu Visual C++ 2005 Express Edition.
Teď nastal čas, kdy můžeme oveřit, zda je vše, jak má. Zvolte v menu File> New> Project. V okně New project vyberte project types: Win32. V Templates pak Win32 Console Application, zvolte adresář projektu a jeho jméno a klikněte na OK. V dalším okně pokračujte kliknutím na Next a v okně následujícím zvolte Windows Applications a ukončite kliknutím na Finish.
Za malou chvilku se před vámi objeví pracovní okno Visual C++ 2005 Express Edition, kde v
No a to je vše, co se týká nastavení Visual C++ 2005 Express Edition. Pokud jste postupovali tak, jak je to zde popsané, a neudělali jste někde chybu, mělo by vše fungovat na první pokus.
Na MFC si nechte zajít chuť
Ty z vás, kteří jsou zvyklí dělat za pomoci MFC, musím zklamat. Tato knihovna není bohužel free a je součástí pouze placených verzí Visual Studia. Takže pokud máte třeba Visual C++ 6 Standard Edition, můžete použít MFC z něj. Ale co třeba zapomenout na MFC a začít používat multiplatformní free alternativu wxWidGets? To, jak jí zakomponovat do Visual C++ 2005 Express Edition, naleznete v krátkém popisu.
Kde získat MSDN
Tak tohle je nejčastější dotaz na programátorských fórech a opakuje se tam pořád dokola. Na uživatele těchto dotazů mám jedno pojmenování, a to „lama“. Jsou natolik líní, aby si prošly dané fórum a podívali se, zda už se to tam neřešilo, nebo se alespoň sami pokusili použít Google. Místo toho však vytvářejí ve fórech zbytečné thready.
Způsobů, jak získat MSDN, je několik. Buď si to objednat přímo u Microsoftu, nebo si to zkopírovat od kámoše. Můžete taky hledat na Internetu, a tím se dostanete zpět k Microsoftu a na stránky, kde jsou image tří CD. Vidíte, takto se dá získat MSDN a přitom stačí Google a zadání slovního výrazu „MSDN DOWNLOAD“.
Závěrem
Visual C++ 2005 Express Edition je takové malé DD (dodělej doma), ale sami vidíte, že při malých úpravách z toho lze vytvořit nástroj, ve kterém se dá už něco udělat. Tím nechci tvrdit, že toto je jediná cesta, jak lze zdarma a legálně získat vývojové prostředí (jsou i jiné projekty, ať už open source či GPL). Ze strany komerčního Microsoftu se mi však toto jeví jako velmi slušné gesto.