Dot-Net
D8045:無法使用 /clr 選項編譯 C 文件 ‘serialcommands.c’
我收到編譯器錯誤 D8045。無法使用 /clr 選項編譯 C 文件“serialcommands.c”。
該文件是一個 C 庫,已編寫為通過串列埠與 TI 處理器通信。我需要做的任務是用 CLR 包裝器包裝這個庫(如果您想從 CLI 問題中獲得更簡單的觀點,將會有關於來回編組數據的其他問題發佈到 stackoverflow。)
我只想從我的 CLR 包裝器中使用這個 C 庫。我去了 Properties->Configuration Properties->C/C++->General->Compile with Common Language runtime support = No Common Language Runtime support
這是正確的方法嗎?我以後會遇到令人討厭的奇怪錯誤,還是我需要做其他事情才能使用它?
是的。您需要在沒有 /CLR 的情況下編譯任何 C 對象,因為 clr 只理解類和對象。
你仍然可以在你的 C++/CLI 項目中使用它們,包裹在你的“ref 類”對像中。這是在 .NET 對像中包裝 C api 的正常方式。