CallFunction

Fragen und Bugreports zur PureBasic 4.0-Beta.
Benutzeravatar
Leonhard
Beiträge: 602
Registriert: 01.03.2006 21:25

CallFunction

Beitrag von Leonhard »

Kann man nicht, wenn man nicht ausreichend Parameter angegeben hat, einen Fehler ausgeben? Ich bekomme dann z.B. bei diesem Code einen 'Invalid memory access.':

Code: Alles auswählen

Procedure Proc()
	LibID=OpenLibrary(#PB_Any, "gdi32.dll")
	Output=CallFunction(LibID, "AboutDoc",0)
	If (LibID=0) Or (Output=0)
		ProcedureReturn #False
	Else
		ProcedureReturn #True
	EndIf
EndProcedure

Proc()
Zuletzt geändert von Leonhard am 04.06.2006 09:39, insgesamt 1-mal geändert.
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Re: CallFunction

Beitrag von DarkDragon »

Was soll bitteschön 'Wert' sein? Das ist ja keine gültige Library. Da musst du 'LibID' hinsetzen
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
Leonhard
Beiträge: 602
Registriert: 01.03.2006 21:25

Beitrag von Leonhard »

Hab ich geändert. Fehler immernoch da.
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

Dann nimmst du OnError um den InvalidMemoryAccess abzufangen oder TryCatch aus PBOSL.

[EDIT]
Außerdem: Was willst du damit bezwecken? Bringt doch nichts.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

die Funktion "AboutDoc" gibt es nicht. Mit CallFunction dürfen nur vorhandene Funktionen aufgerufen werden mit richtiger Anzahl von Parametern. Wenn man nicht sicher ist ob es die Funktion gibt, vorher prüfen mit GetFunction(...) und in der MSDN nachlesen.

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Gesperrt