Ahoj,
nevite, proc se mi pri snaze o pridat odkaz na knihovnu objevi hlaska:
Odkaz na ...dll nemuze byt pridan. Zkontrolujte, zda je soubor dostupny a zda se jedna o platne sestaveni nebo soucast COM.
Jak si s tim poradit?
Dik za odpoved.
Ahoj,
nevite, proc se mi pri snaze o pridat odkaz na knihovnu objevi hlaska:
Odkaz na ...dll nemuze byt pridan. Zkontrolujte, zda je soubor dostupny a zda se jedna o platne sestaveni nebo soucast COM.
Jak si s tim poradit?
Dik za odpoved.
Promin ale na tvoji otazku se tezko odpovida.
V chybe mas napsano "jestli se jedna o platne sestaveni nebo soucast COM".
Mrkus se ptal co kam pridavas - neodpovedel jsi mu.
Z tve odpovedi citim ze se de facto jedna o API ciziho elektronics Equipments z popsaneho se neda vycist zdali se jedna o platne sestaveni (mysleno sestaveni .NET) ani o COM komponentu.
Pravdepodobne se snazis nareferncovat do projektu nativni C/C++ a tyto knihovny lze pripojit do .NET projektu pouze prostrednictvim reflexe. Tedy pokud to C/C++ neni kompilovane pro Linux a dalsi neslucitelne OS.
Pokud je tato info mimo tve znalosti tak zkus kouknout na server http://naucim.cz kde te zkuseni radi provedou Marshalingem a dalšími chuťovkami.
Good luck
#4 VladislavK
V pohode. Vim, ze se vyjadruju jak dement.
Asi to bude tak, jak rikas. Bude to nativni C/C++ knihovna. Docetl jsem se, ze API se deklaruji atributem DllImport (třída DllImportAttribute). K tomu musim znat presny predpis funkce, abych ji mohl upravit pro použití v C#?
#5 Rufus
Ano musíš znát název a parametry funkce, kterou chceš importovat.
Tady je příklad importu:
public static class UnsafeNativeMethods
{
[DllImport("user32.dll", EntryPoint = "FindWindow", CharSet = CharSet.Unicode)]
public static extern IntPtr FindWindowByCaption(IntPtr ZeroOnly, string lpWindowName);
}
pak použití:
if(IntPtr.Zero != UnsafeNativeMethods.FindWindowByCaption(IntPtr.Zero, "UPX24"))
{
// neco ...
}
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku