PureBasic

Миграция с PureBasic 5.20 LTS на 5.40 LTS

Библиотека Billboard

AddBillboard(): изменение кода

; Старое
AddBillboard(Billboard, BillboardGroup, x, y, z)

; Новое
Billboard = AddBillboard(BillboardGroup, x, y, z)

Библиотека Cipher

ExamineMD5Fingerprint(): изменение кода

; Старое
ExamineMD5Fingerprint(#FingerPrint)

; Новое
UseMD5Fingerprint()
StartFingerprint(#FingerPrint, #PB_Cipher_MD5)


ExamineSHA1Fingerprint(): изменение кода

; Старое
ExamineSHA1Fingerprint(#FingerPrint)

; Новое
UseSHA1Fingerprint()
StartFingerprint(#FingerPrint, #PB_Cipher_SHA1)


MD5FileFingerprint(): изменение кода

; Старое
Result$ = MD5FileFingerprint(Filename$)

; Новое
UseMD5Fingerprint()
Result$ = FileFingerprint(Filename$, #PB_Cipher_MD5)


MD5Fingerprint(): изменение кода

; Старое
Result$ = MD5Fingerprint(*Buffer, Size)

; Новое
UseMD5Fingerprint()
Result$ = Fingerprint(*Buffer, Size, #PB_Cipher_MD5)


SHA1FileFingerprint(): изменение кода

; Старое
Result$ = SHA1FileFingerprint(Filename$)

; Новое
UseSHA1Fingerprint()
Result$ = FileFingerprint(Filename$, #PB_Cipher_SHA1)


SHA1Fingerprint(): изменение кода

; Старое
Result$ = SHA1Fingerprint(*Buffer, Size)

; Новое
UseSHA1Fingerprint()
Result$ = Fingerprint(*Buffer, Size, #PB_Cipher_SHA1)


CRC32FileFingerprint(): изменение кода

; Старое
Result = CRC32FileFingerprint(Filename$)

; Новое
UseCRC32Fingerprint()
Result.l = Val("$"+FileFingerprint(Filename$, #PB_Cipher_CRC32))


CRC32Fingerprint(): изменение кода

; Старое
Result = CRC32Fingerprint(*Buffer, Size)

; Новое
UseCRC32Fingerprint()
Result.l = Val("$"+Fingerprint(*Buffer, Size, #PB_Cipher_CRC32))


NextFingerprint(): только переименовать

; Старое
NextFingerprint(#FingerPrint, *Buffer, Size)

; Новое
AddFingerprintBuffer(#FingerPrint, *Buffer, Size)

Библиотека Mail


SendMail(): изменение кода если был использован параметр 'Асинхронный'

; Старое
SendMail(#Mail, Smtp$, Port, 1)

; Новое
SendMail(#Mail, Smtp$, Port, #PB_Mail_Asynchronous)


Библиотека Packer


RemovePackFile(): удалено
PackerEntrySize(): #PB_Packer_CompressedSize удалена поддержка для архивов ZIP и 7z

Библиотека XML


CreateXMLNode(): изменение кода

; Старое
Node = CreateXMLNode(ParentNode)
SetXMLNodeName(Node, "Name")

; Новое
Node = CreateXMLNode(ParentNode, "Name")


Библиотека Screen


Функция AvailableScreenMemory() удалена, поскольку новый API больше не поддерживает эту информацию. Во всяком случае, это возвращало в основном '0'.

Библиотека Window


#PB_Event_SizeWindow и #PB_Event_MoveWindow больше нет realtime в Windows, используйте BindEvent(), чтобы получать обновления в реальном времени.

Библиотека Engine3D


WorldCollisionAppliedImpulse() теперь возвращает значение с плавающей точкой о примененном импульсе. GetX/Y/Z() больше не поддерживаются.

Various


Метка DataSection в Процедуре теперь является локальной меткой.
Префикс локальной метки ASM был изменен с "l_" на "ll_", чтобы избежать возможного конфликта с основными метками.
Константа #PB_LinkedList была переименована в #PB_List для лучшей согласованности.