2012-08-31 32 views
1

如果我使用COM控件(如.NET窗體上的按鈕),是否有風險?.NET窗體上的COM控件?

我不希望表單在未來某個隨機點崩潰。

將.NET控件添加到.NET窗體有哪些風險和後果?

+1

什麼是按鈕,你不能使用.NET WinForm按鈕嗎? –

+0

我認爲他只是在尋找一個例子,這不是他正在做的一件特定事情。 – PhonicUK

+2

真的只有一個考慮因素:當COM代碼行爲不當時,你打電話給誰?任何*代碼的普遍考慮因素,您沒有源代碼並且無法修復。如果你沒有很好的答案,並且有一個很難得到,那麼使用這樣的控制並不是一個好主意。 –

回答

3

有沒有特別的風險,但COM對象是位跨線程的問題更加敏感,如果您嘗試訪問在不同的線程的方法從生成該對象的一個​​(相同的WinForms)

還有一點需要注意的是,如果您的應用程序構建爲AnyCPU並使用32位COM組件,則它可能會在64位系統上失敗。因此,確保構建目標與您使用的任何COM組件相匹配(因爲.Net爲COM組件生成託管包裝,但它是需要注意的東西,因此在所有情況下都不是這樣)

+0

PhonicUK爲什麼downvote? –