Zabava s VS .NET

Pavel Hudeček edizon na seznam.cz
Středa Září 17 21:30:39 CEST 2014


Dobrý den všem,

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ž.

Pak problém: komponeny Indy UDP negenerují události, pokud jsou v DLL.

Pak byla nedávná diskuse, jaké použít vývojové prostředí s C pro Win.

Stáhnul jsem instalačku Visual studia 2010 express a nainstaloval VB a VC.

Zjistil jsem, že VC nemůžu donutit, aby generovalo 64b kód.

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.

Jenže od té doby zas veškeré pokusy o kompilaci čehokoli končily hláškou
Error 'LINK : fatal error LNK1123: failure during conversion to COFF: file 
invalid or corrupt'

Nakonec jsem musel odinstalovat framework 4.5 a nainstalovat 4.

OK, nyní to kompiluje a i 64b.

Jenže jakákoli snaha o výrobu DLL ve VC++  a použití ve VB se míjí účinkem.

Když např. zkusím tuto ukázku:
http://msdn.microsoft.com/cs-cz/library/ms235636.aspx
tak vše funguje, program ve VC volá DLL psané též ve VC

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
BadImageFormatException was unhandled
(tato hláška mi vznikala i s Builderem, pokud buildil 32b)

OK, asi se DLL vytvořené v .NET musí volat jinak.

Našel jsem tuto ukázku:
http://www.dreamincode.net/forums/topic/121314-creating-a-dll-and-using-it-
in-your-application/
vše funguje, program psaný ve VB volá DLL psané ve VB

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:
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.
A tato hláška se zobrazí při pokusu o import jakéhokoli jiného DLL než z té 
ukázky ve VB.

Tak teď už teda fakt nevim...

PH

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20140917/be96fbd4/attachment.html>


Další informace o konferenci Hw-list