Re: const char * als Parameter für DLL
- From: "Thomas Scheidegger [MVP]" <spam.netmaster@xxxxxxxxxxxxxx>
- Date: Fri, 11 Nov 2005 00:34:58 +0100
Hallo Rolf
vorab, deine Posts haben irgendwie diverse Probleme (Zeitstempel & Formatierung)
> ich habe Probleme mit der Parameterübergabe an eine DLL-Methode.
C++ ist keine strikte Programmiersprache,
vieles wird erst durch die Dokumentation oder Beispiele klar.
Ohne diese Angaben ist folgendes nur Spekulation und auch in managed .NET PInvoke
ein Risiko für Crashs (oder Heap/Stack/Memory corruption usw, oft sehr schwer zu finden!).
> const char *
Im Prinzip wäre +rein+ mal 1:1 von der Syntax her zB ein simpler Parameter:
ref char x
möglich. Aber du sprichst von einem 'Buffer', dann könnte es in:
char[] x
oder gar für Rohdaten:
byte[] x
umgesetzt werden.
Sehr oft (Indiz: 'const') könnte es sich aber auch um einen ganz simplen:
string x
Parameter handeln.
(Beachte: probieren gilt da nicht, PInvoke muss man bewusst definieren)
Mal sehr grob geschätzt etwas wie zB:
[DllImport("????.dll", CharSet=CharSet.Ansi, SetLastError=false)]
private static extern uint SSSSxx(
IntPtr hSession,
string pData,
uint ulDataSize,
uint nSType,
char[] pSBuffer,
ref uint pBufferSize,
char[] pSCBuffer,
ref uint pSCBufferSize,
int nDoH );
> Wo finde ich ein Tutorial oder Buch das dieses Thema fundiert abhandelt?
ohne sehr gute C++ / Win32 Kenntnisse und Erfahrung nicht so einfach zu lernen.
Vor kurzem wurde zB genannt:
http://groups.google.de/group/microsoft.public.de.german.entwickler.dotnet.csharp/msg/b4c069b668f4e4e1
http://groups.google.de/group/microsoft.public.de.german.entwickler.dotnet.csharp/msg/5888edb1ff359332
--
Thomas Scheidegger - MVP .NET - 'NETMaster'
http://www.cetus-links.org/oo_dotnet.html - http://dnetmaster.net/
.
- References:
- const char * als Parameter für DLL
- From: Rolf Ruisinger
- const char * als Parameter für DLL
- Prev by Date: Re: const char * an DLL übergeben
- Next by Date: Anwendung ausführen als...
- Previous by thread: const char * als Parameter für DLL
- Next by thread: 2 Prozesse - 1 File Frage
- Index(es):
Relevant Pages
|