Keine Strings in CallFunction()?

Hier werden, insbesondere in den Beta-Phasen, Bugmeldungen gepostet. Das offizielle BugForum ist allerdings hier.
Pandorra
Beiträge: 124
Registriert: 10.02.2007 12:15

Keine Strings in CallFunction()?

Beitrag von Pandorra »

seit PB.4.40 Beta 1 krieg ich bei

Code: Alles auswählen


Procedure.s SqlNew(id.l, table.s, primarykey.l)

ProcedureReturn PeekS(CallFunction(1, "SqlNew", id, table, primarykey))

EndProcedure

Die Meldung Zahl anstelle eines Strings erwartet.
Wenn ich table.l oder ähnliches schreibe kommt keine Meldung.

Hier der Code aus der DLL:

Code: Alles auswählen


ProcedureDLL.s SqlNew(id.l, table.s, primarykey.l)
  String$ = ""
   yy = 0
  If DatabaseQuery(id, "SELECT * FROM " + table) 
    While NextDatabaseRow(id)
    yy+1
    If yy = primarykey
      For z0.l = 1 To DatabaseColumns(id) - 1
        String$ + "'" + GetDatabaseString(id, z0) + "'"
        
        If z0 < DatabaseColumns(id) - 1
        String$ + ", "
        EndIf
      Next z0 
      ProcedureReturn String$
     EndIf
    Wend 
    
    If z0 > 0 
    
      ProcedureReturn String$
    Else 
    
    EndIf 
  Else 
  
  EndIf 
EndProcedure

nach dem "zurückpatchen" auf PB. 4.31 erhalte ich keinen Fehler.
Mache ich einen Fehler , den PB 4.31 nicht erkennt oder handelt es sich um einen Bug?
Benutze PB v 4.40 Beta 3
Benutzeravatar
Deluxe0321
Beiträge: 336
Registriert: 19.05.2006 00:31
Kontaktdaten:

Beitrag von Deluxe0321 »

http://forums.purebasic.com/german/view ... 051#253051:
- Changed: Call(C)Function(Fast) parameters have been changed from 'Any' to 'Integer'.
Also entwerder @"Dein String" verwenden oder Prototyps

Grüße Marv
Ich habe keine Lösung, aber ich bewundere das Problem.
Pandorra
Beiträge: 124
Registriert: 10.02.2007 12:15

Beitrag von Pandorra »

ah danke...

Hab ich wohl überlesen.
Benutze PB v 4.40 Beta 3
LCD
Beiträge: 107
Registriert: 23.01.2008 13:13
Wohnort: Wien

Beitrag von LCD »

Pandorra hat geschrieben:ah danke...

Hab ich wohl überlesen.
Ich auch! :oops:
PB 4.61Beta1 32/64Bit. AMD FX6100, 8 GB RAM, ATI Radeon 5750, Win7 64 (64 bit ist mist weil 16-Bit Programme wie MakeTZX nicht mehr darauf funktionieren).
Antworten