为 IntPtr 赋值
时间: 2023-09-09 10:09:54 浏览: 129
C#向其他软件TextBox中写值SendMessage
5星 · 资源好评率100%
IntPtr 是一个平台特定(platform-specific)的类型,用于表示指针或句柄。它可以用于将非托管代码(如 C++)中的指针传递给托管代码(如 C#)。
为 IntPtr 赋值的方法取决于它所代表的指针或句柄的类型。以下是几个示例:
1. 将一个 int 类型的地址转换为 IntPtr:
```
int address = 0x1234;
IntPtr ptr = new IntPtr(address);
```
2. 将一个指向某个对象的指针转换为 IntPtr:
```
MyObject obj = new MyObject();
IntPtr ptr = Marshal.GetIUnknownForObject(obj);
```
3. 将一个句柄转换为 IntPtr:
```
IntPtr handle = OpenProcess(PROCESS_ALL_ACCESS, false, processId);
```
注意:以上示例中的函数和类型可能需要引入相应的命名空间或库。
阅读全文