Migration von PureBasic 5.20 LTS nach 5.40 LTS

Billboard Bibliothek

AddBillboard(): Code-Änderung
  ; Alt
  AddBillboard(Billboard, BillboardGroup, x, y, z)

  ; Neu
  Billboard = AddBillboard(BillboardGroup, x, y, z)

Cipher Bibliothek

ExamineMD5Fingerprint(): Code-Änderung
  ; Alt
  ExamineMD5Fingerprint(#FingerPrint)

  ; Neu
  UseMD5FingerPrint()  
  StartFingerprint(#FingerPrint, #PB_Cipher_MD5)

ExamineSHA1Fingerprint(): Code-Änderung
  ; Alt
  ExamineSHA1Fingerprint(#FingerPrint)
  
  ; Neu
  UseSHA1FingerPrint()
  StartFingerprint(#FingerPrint, #PB_Cipher_SHA1)

MD5FileFingerprint(): Code-Änderung
  ; Alt
  Ergebnis$ = MD5FileFingerprint(Dateiname$)
  
  ; Neu
  UseMD5FingerPrint()
  Ergebnis$ = FileFingerprint(Dateiname$, #PB_Cipher_MD5)

MD5Fingerprint(): Code-Änderung
  ; Alt
  Ergebnis$ = MD5Fingerprint(*Puffer, Größe)
  
  ; Neu
  UseMD5FingerPrint()
  Ergebnis$ = Fingerprint(*Puffer, Größe, #PB_Cipher_MD5)

SHA1FileFingerprint(): Code-Änderung
  ; Alt
  Ergebnis$ = SHA1FileFingerprint(Dateiname$)
  
  ; Neu
  UseSHA1FingerPrint()
  Ergebnis$ = FileFingerprint(Dateiname$, #PB_Cipher_SHA1)

SHA1Fingerprint(): Code-Änderung
  ; Alt
  Ergebnis$ = SHA1Fingerprint(*Puffer, Größe)
  
  ; Neu
  UseSHA1FingerPrint()
  Ergebnis$ = Fingerprint(*Puffer, Größe, #PB_Cipher_SHA1)

CRC32FileFingerprint(): Code-Änderung
  ; Alt
  Ergebnis = CRC32FileFingerprint(Dateiname$)
  
  ; Neu
  UseCR32FingerPrint()
  Ergebnis.l = Val("$"+FileFingerprint(Dateiname$, #PB_Cipher_CRC32))

CRC32Fingerprint(): Code-Änderung
  ; Alt
  Ergebnis = CRC32Fingerprint(*Puffer, Größe)
  
  ; Neu
  UseCR32FingerPrint()
  Ergebnis.l = Val("$"+Fingerprint(*Puffer, Größe, #PB_Cipher_CRC32))

NextFingerprint(): nur Umbenennung
  ; Alt
  NextFingerprint(#FingerPrint, *Puffer, Größe)
  
  ; Neu
  AddFingerprintBuffer(#FingerPrint, *Puffer, Größe)

Mail Bibliothek


SendMail(): Code-Änderung, wenn der 'Asynchron' Parameter verwendet wurde
  ; Alt
  SendMail(#Mail, Smtp$, Port, 1)
  
  ; Neu
  SendMail(#Mail, Smtp$, Port, #PB_Mail_Asynchronous)

Packer Bibliothek


RemovePackFile(): entfernt
PackerEntrySize(): #PB_Packer_CompressedSize Unterstützung für ZIP- und 7z-Archive entfernt

XML Bibliothek


CreateXMLNode(): Code-Änderung
  ; Alt
  Node = CreateXMLNode(ParentNode)
  SetXMLNodeName(Node, "Name")
  
  ; Neu
  Node = CreateXMLNode(ParentNode, "Name")

Screen Bibliothek


AvailableScreenMemory() entfernt, da die neue API diese Information nicht mehr unterstützt. Es wurde ohnehin zumeist '0' zurückgegeben.

Window Bibliothek


#PB_Event_SizeWindow und #PB_Event_MoveWindow arbeiten auf Windows nicht mehr in Echtzeit, verwenden Sie BindEvent() um Echtzeit-Updates zu erhalten.

Engine3D Bibliothek


WorldCollisionAppliedImpulse() gibt jetzt einen Fließkomma-Wert über den angewandten Impuls zurück. GetX/Y/Z() werden nicht mehr unterstützt.

Verschiedenes


DataSection Sprungmarken ("Labels") innerhalb einer Procedure sind jetzt lokale Sprungmarken.
ASM lokaler "Label-Prefix" wurde von "l_" in "ll_" geändert, um mögliche Konflikte mit "main" Labels zu vermeiden.
#PB_LinkedList Konstante wurde im Sinne einer besseren Konsistenz in #PB_List umbenannt.