Python For Delphi搭建了Delphi和強大的指令碼語言Python的橋樑,使用起來非常方便,讓Delphi華麗的介面配合Python強大、簡潔、穩定的後台邏輯處理能力,讓應用程式模組清晰、介面漂亮、後台複雜邏輯不再複雜,大幅提高開發效率。使用的時候出現了一些容易忽視造成的問題,現總結如下。
版本
Python For Delphi支援的Python版本為2.3,而最新最穩定的Python是2.4,使用時會提示找不到python23.dll的錯誤。按下述方法解決:
設定TPythonEngine的屬性,DllName設為python24.dll,RegVersion設為2.4,最關鍵的是UseLastKnownVersion設為False,不然DllName,RegVersion是不起作用的。
OnPathInitialization
OnPathInitialization是TPythonEngine設定Python路徑的時候調用的事件,但有時卻不調用,怎麼回事呢?
原來TPythonEngine在初始化的時候首先尋找註冊表中有沒有對應的路徑設定資訊,如果有,則直接從註冊表讀取而不再執行OnPathInitialization,如TPythonEngine的RegVersion為2.4,它就去註冊表尋找是否有[HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/2.4/PythonPath],如果有直接讀取,沒有調用OnPathInitialization,在OnPathInitialization中可以通過程式設定Python的庫路徑,設定成功後會寫入註冊表。
分發
1、 安裝整個標準Python模組、庫,即Lib目錄。
2、 選擇性的安裝整個DLLs目錄下的Python標準模組。
3、 安裝python24.dll到系統目錄,如c:/winnt/system32。
4、 在自己寫的Delphi程式中,用TPythonEngine的OnPathInitialization事件設定Lib和DLLs的路徑,並且將自己編寫的模組所在的目錄也加到路徑中。
注意:每個路徑都要用分號分隔(’;’)。