我有一個函數返回record
的結果。我需要將它傳遞給另一種方法,如Pointer
。它適用於32位模式,但在64位模式下會出現Invalid type cast
錯誤。我該如何解決它?如何將記錄轉換爲Delphi上的64位平臺上的指針?
我試圖尋找已知的解決方案,但發現只有record
到TObject
轉換方法:Invalid typecast: convert record to tobject on 64-bit platform
aTList.Add(Pointer(aRecord)); // aRecord is a result of the function
你可以發佈的代碼工作,並導致編譯器錯誤的代碼? –
它不能在32位模式下工作,您的記錄不是指針。你想要記錄的地址(@aRecord)。 –
它適用於32位模式!這是流行的Toolbar2000組件的代碼。 – Dmitry