我试图通过pinvoke将指向"ref“的指针传递到某些C++代码,以便通过委托回调(然后将其转换回ref)将其传递回C#,以避免由于结构不可闪烁而发生的默认封送处理(请参阅我的另一个问题)。通过使用Unsafe.AsPointer,我可以获得一个指向包含非闪烁字段的普通结构的指针。但是,这不会为ref结构编译(CS0306),如下代码所示:{
public int value;
所以我尝试在C#中从库中PInvoke一个非托管动态链接库。我目前正在寻找正确的方法来封送非托管库中的函数返回和获取的结构指针。,我需要为C结构创建一个对应的对象,但我不需要访问C#中的结构。当在C#中调用该函数时,我得到以下错误:
A call to PInvoke function 'CacheExplorer!This is likely because the managed PInvoke sig