<html><body>Dobrý den všem,<br><br>Tak nejprve jsem měl DLL vytvořené v Builderu a testoval ho ve VB 2008. To fungovalo, jen když jsem v builderu nechal udělat 64b. No budiž.<br><br>Pak problém: komponeny Indy UDP negenerují události, pokud jsou v DLL.<br><br>Pak byla nedávná diskuse, jaké použít vývojové prostředí s C pro Win.<br><br>Stáhnul jsem instalačku Visual studia 2010 express a nainstaloval VB a VC.<br><br>Zjistil jsem, že VC nemůžu donutit, aby generovalo 64b kód.<br><br>Strávil jsem celý den různými marnými pokusy, až jsem se nakonec dobral k instalaci jakéhosi SDK, které způsobí, že se tam oběví kromě Win32 i možnosti x64 a Itanium.<br><br>Jenže od té doby zas veškeré pokusy o kompilaci čehokoli končily hláškou<br>Error 'LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt'<br><br>Nakonec jsem musel odinstalovat framework 4.5 a nainstalovat 4.<br><br>OK, nyní to kompiluje a i 64b.<br><br>Jenže jakákoli snaha o výrobu DLL ve VC++  a použití ve VB se míjí účinkem.<br><br>Když např. zkusím tuto ukázku:<br>http://msdn.microsoft.com/cs-cz/library/ms235636.aspx<br>tak vše funguje, program ve VC volá DLL psané též ve VC<br><br>Když totéž DLL zavolám z VB, jako jsem to dělal s tím DLL z Builderu, tedy s použitím Declare, skončí to chybou<br>BadImageFormatException was unhandled<br>(tato hláška mi vznikala i s Builderem, pokud buildil 32b)<br><br>OK, asi se DLL vytvořené v .NET musí volat jinak.<br><br>Našel jsem tuto ukázku:<br>http://www.dreamincode.net/forums/topic/121314-creating-a-dll-and-using-it-in-your-application/<br>vše funguje, program psaný ve VB volá DLL psané ve VB<br><br>Když jsem ovšem zkusil udělat program, kde stejným způsobem importuji DLL MathFuncs z té ukázky pro VC, import se nezdaří, zobrazí se msgbox s chybou:<br>A reference 'C:\ ... .dll' could not be added. Please make sure that the file is acessible, and that it is valid assembly or COM component.<br>A tato hláška se zobrazí při pokusu o import jakéhokoli jiného DLL než z té ukázky ve VB.<br><br>Tak teď už teda fakt nevim...<br><br>PH<br><br></body></html>