C# 有一个 FastBitmap 类,可让您访问和修改位图的像素信息。我已经在一些 C# 项目中使用过它,但我现在在 VB.NET 中需要它。问题是该类使用了不安全的代码,VB.NET 不支持该代码。
问题是。我可以在 dll 中编译 FastBitmap 类并在 VB.NET 中使用它吗?
[编辑] 或者是否有一些库可用于在 VB.NET 中修改像素数据?
是的,你可以这么做。
如果该类没有在其公共接口中公开任何不安全的特性(例如,采用指针的方法),那么您在 VB.NET 中使用它应该不会有任何问题。公共语言运行时 (CLR) 支持不安全代码,因此当您编写不安全程序时, C# 不会发挥任何作用。
如果需要,您还可以使用Marshal 类FastBitmap
在 VB.NET 中重新实现该类,这使您可以使用可从 VB.NET 访问的标准 .NET 接口快速访问内存。但是在单个项目中混合多种语言的能力是 .NET 的一大优势。
快速回答,是的。顺便说一句,你试过了吗?