我試圖端口一個偉大的Windows窗體程序,Linux和得到這個錯誤:如何在Lubuntu 16.04.1的Mono上使用NativeMethods.GetUpdateRect?
System.EntryPointNotFoundException: GetUpdateRect
at (wrapper managed-to-native)
CDBurnerXP.Controls.NativeMethods:GetUpdateRectInternal
(intptr,System.Drawing.Rectangle&,bool)
at CDBurnerXP.Controls.NativeMethods.GetUpdateRect
(System.Windows.Forms.Control cntl) [0x0000f] in
<ce4ca0f630654e4c8c1f96509f1eae82>:0
有沒有辦法來支持C#調用
NativeMethods:對Lubuntu 16.04.1 GetUpdateRect中午單?
編輯:
感謝,knocte,爲您的評論。此編輯爲引用的代碼試圖引用這個功能(因爲意見不容許任何格式)位:
[DllImport("user32.dll", EntryPoint = "GetUpdateRect", CharSet = CharSet.Auto)]
private static extern IntPtr GetUpdateRectInternal(IntPtr hWnd, ref Rectangle r, bool eraseBackground);
如果您的Windows窗體程序使用本機P /調用,它已經是一個非跨平臺的程序,依賴於Windows系統調用 – knocte
謝謝,nocte,但我太新,這個場景以確保我理解你正確。我添加了一些試圖引用GetUpdateRect到我原來的問題的代碼,所以代碼部分可以正確格式化。 – JimH44
是的,該程序沒有考慮跨平臺的使用 - 只考慮Windows。所以我猜我是問有沒有人知道在Linux上是否有單聲道的東西可以完成GetUpdateRect在Windows上的操作。或者Windows上的函數與Linux上的等價物之間的任何關聯表。再次感謝您考慮這些問題。我堅持不懈,因爲Ketarin是一個非常有用的程序,我希望能夠在Linux上本地運行。 (它曾經在WINE上工作過,但有些事情已經破裂,我無法修復它。) – JimH44