05. september 2006 - 08:43
Der er
10 kommentarer og 1 løsning
Compact Framework og DllImport
Hej, Jeg har nu kastet mig ud i at programmere til en PDA (Windows CE 5.0 og Compact Framework 2.0) Jeg har problemer med at få indlæst en dll med DllImport: [DllImport("dll\\KMSTRLIB.dll", SetLastError = true)] private static extern int KMSTR_InitLibrary(); [DllImport("dll\\KMSTRLIB.dll", SetLastError = true)] private static extern int KMSTR_Transform(string InLabel, string OutLabel, double XIn, double YIn, double ZIn, out double Xout, out double Yout, out double Zout); [DllImport("dll\\KMSTRLIB.dll", SetLastError = true)] private static extern int KMSTR_TerminateLibrary(); [DllImport("dll\\KMSTRLIB.dll", SetLastError = true)] private static extern int KMSTR_InitialiseGeoidLibrary(string IPath); Jeg ved at det virker i den normale Framework 2.0, men i compact framework siger den: "PInvoke DLL 'dll\KMSTRLIB.dll' blev ikke fundet." når jeg køre: int Res3 = KMSTR_InitLibrary(); Jeg ved at dll'erne ligger i program mappe fordi Visual Studio kopier den over på pda'en, men hvorfor den ikke kan finde den ved jeg ikke :/ Håber nogen kan hjælpe.
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
05. september 2006 - 09:10
#1
Prøv at ændre stierne fra: dll\\KMSTRLIB.dll (alm. Windows notation) - til: dll/KMSTRLIB.dll (Windows Mobile notation) - eller måske til: /dll/KMSTRLIB.dll
05. september 2006 - 09:59
#2
Nu har jeg prøvet både: dll/ og /dll/ men den vil bare ikke finde den dll. Kan det være fordi at dll'en ikke er specefikt lavet til WinCE?
05. september 2006 - 10:36
#3
Er det en DLL du selv har lavet? Hvad er den skrevet i?
05. september 2006 - 12:36
#5
Ok, så kan jeg ikke svare på det. Du bliver nok nødt til at kontakte dem direkte og spørger om den 1) kan køre på en PDA og 2) om den kan køre under Windows Mobile 5.
05. september 2006 - 12:41
#6
Det vil jeg så gøre, men hvis der er andre der har nogle ider, skal de være velkommen.
05. september 2006 - 18:47
#7
En bemærkning. Hvia det ikke er en .Net DLL, skal den formentlig også registreres før at det kan lade sig gøre. I Windows foregår dette normalt via regsvr32.dll, men jeg ved egentlig ikke hvad man gør i Windows Mobile 5.
06. september 2006 - 15:49
#8
har personligt haft bedst erfaring med abselute paths, og ikke relative paths på pda, så nok det første jeg ville prøve.
20. september 2006 - 20:51
#9
Er du kommet vidre?
04. oktober 2006 - 09:36
#10
Beklager den sene tilbage melding, men vi måtte selv til at omskrive koden til dll'en så den blev .net compatibel. Men vi fik det til at virke.
14. juli 2009 - 10:29
#11
Hej hvis du har lyst til at dele din kode vil jeg blive meget glad. Ja jeg ved at det er lidt naivt at spørger :-)
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.