CallFunction(0,"Funktion")
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
CallFunction(0,"Funktion")
Hallo,
ich habe eine dll geschrieben und werwarte einen string zurück. nur ich bekomme stat den String eine zahl.
kann man das um conventieren? oder wie kann ich das machen das ich den string anstat eine zahl bekomme
ich habe eine dll geschrieben und werwarte einen string zurück. nur ich bekomme stat den String eine zahl.
kann man das um conventieren? oder wie kann ich das machen das ich den string anstat eine zahl bekomme

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Purebasic.chm / Erstellung einer DLL / Hinweise zur Rückgabe von Strings aus DLL's:
Ich hoffe der dort enthaltene Text hilft Dir weiter, weil besser könnte ich es
auch nicht erklären
Ich hoffe der dort enthaltene Text hilft Dir weiter, weil besser könnte ich es
auch nicht erklären
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Vielleicht so ?
Code: Alles auswählen
zahl.l = 1024
String$ = Str(zahl)
Debug String$
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
ich habe leider in der hilfe nichts gefunden was mir helfen könnte
aber der string der zurück gegeben wird ist sehr wichtig...
@al90 naja es war ein versuch deinerseits wert
aber in dem string seht ein name und keine zahl... wenn ich jetzt Str(variabel) mache dann habe ich dennoch die selbe zahl nur dann als string...

aber der string der zurück gegeben wird ist sehr wichtig...
@al90 naja es war ein versuch deinerseits wert


- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Magix-Soft <Kain> hat geschrieben:ich habe leider in der hilfe nichts gefunden was mir helfen könnte
Ich hab so das Gefühl, ihr seid zu Faul zum lesenPureBasic.chm hat geschrieben:String.s = PeekS(CallFunction(0,"FunctionName",Parameter1,Parameter2))

PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Wie Ts-Soft schon sagte stehts in der Hilfe,
aber ich habe dir mal den entsprechenden teil hier hin kopiert.
Hinweise zur Rückgabe von Strings aus DLL's:
Bei der Rückgabe von Strings aus einer DLL-Funktion muß der String als Global deklariert sein.
Beispiel:
Ohne die Deklaration als Global ist der String nur Lokal in der ProcedureDLL verfügbar und kann somit nicht außerhalb verwendet werden.
Edit:TS-Soft war schneller
aber ich habe dir mal den entsprechenden teil hier hin kopiert.
Hinweise zur Rückgabe von Strings aus DLL's:
Bei der Rückgabe von Strings aus einer DLL-Funktion muß der String als Global deklariert sein.
Beispiel:
Code: Alles auswählen
Global ReturnString$
ProcedureDLL.s MyFunction(var.s)
ReturnString$ = var + " test"
ProcedureReturn ReturnString$
EndProcedure
Edit:TS-Soft war schneller
Zuletzt geändert von roherter am 23.04.2007 23:01, insgesamt 2-mal geändert.
Purebasic 5.0 32bit und 64 bit
I'm back from hell
I'm back from hell
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
ja da bin ich ihm auch sehr dankbar 
aber ich habe schon wieder einen fehler
und zwar "Invalid memory access" und das in dieser Zeile:
CallFunction(0,"Upload",Loggin$)
Die funktion wird auf gerufen aber wenn sie beendet ist kommt der fehler
die funktion steht in diesem Zusammenhang:

aber ich habe schon wieder einen fehler

und zwar "Invalid memory access" und das in dieser Zeile:
CallFunction(0,"Upload",Loggin$)
Die funktion wird auf gerufen aber wenn sie beendet ist kommt der fehler

die funktion steht in diesem Zusammenhang:
Code: Alles auswählen
OpenLibrary(0,"upload.dll")
Loggin$ = PeekS(CallFunction(0,"Passwort"))
Debug Loggin$
If Loggin$ <> "-1"
CallFunction(0,"Upload",Loggin$)
EndIf
CloseLibrary(0)

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Dein Code sollte zumindest so aussehen:
wobei die Variablen davor bereits deklariert sein sollten.
Zu Deinem Problem:
Liegt wohl eher am Code der DLL!
Code: Alles auswählen
If OpenLibrary(0,"upload.dll")
Loggin$ = PeekS(CallFunction(0,"Passwort"))
Debug Loggin$
If Loggin$ <> "-1"
CallFunction(0,"Upload",Loggin$)
EndIf
CloseLibrary(0)
Else
Debug "upload.dll nicht gefunden"
EndIf
Zu Deinem Problem:
Liegt wohl eher am Code der DLL!
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
