Witam!
Muszę użyć pewnej prostej biblioteki, napisanej prawdopodobnie w C++. Dostałem 2 pliki: mf.dll i mf.tlb. Tego dll nie mogę bezpośrednio podpiąć w referencjach w VS, wychodzi komunikat, że nie jest to plik zgodny z COM. Mogę za to podpiąć tlb. Oglądam go wtedy w Object Browserze i zawiera 4 funkcje opisane w dokumentacji, z tym, że typy przyjmowanych przez nie argumenty to ref object. Próbując wykorzystać te funkcje, wychodzi mi error, że typy argumentów się nie zgadzają. Kombinuje w taki sposób:
iccard.DigiCard karta = new iccard.DigiCardClass();
object port = 3;
object baud = 9600;
karta.openport(ref port,ref baud);
(gdzie openport to ta funkcja z biblioteki).
Próbowałem też użyć dll'a korzystając z [DllImport], ale wychodzi, że nie może znajeźć EntryPoint (znam tylko nazwy funkcji). Dumpbin ich w ogóle nie widzi, wyrzuca:
File Type: DLL
Section contains the following exports for foxwd.dll
00000000 characteristics
35868ED9 time date stamp Tue Jun 16 17:27:21 1998
0.00 version
1 ordinal base
4 number of functions
4 number of names
ordinal hint RVA name
2 0 00001818 DllCanUnloadNow
1 1 000017C9 DllGetClassObject
3 2 00001869 DllRegisterServer
4 3 00001894 DllUnregisterServer
Summary
1000 .data
1000 .rdata
1000 .reloc
1000 .rsrc
1000 .text
Poradzcie w jaki sposób wykorzystać te funkcje. Aha, w dokumentacji (bardzo prosta) jest napisane, że należy przez użyciem zarejestrować bibliotekę z użyciem Regsvr32.Exe (co zrobiłem).
Pozdrawiam