控件窗口句柄 handle 转换字符串丢失

xuyufeng822 2017-11-01 11:12:11
别人写的方法,里面的参数是字符串,就是只能传字符串参数。
现在我要用他的方法给传递一个 picturebox 的 handle, 是 IntPtr 类型的,
我打算这样做:
string str = Marshal.PtrToStringAnsi(pictureBox1.Handle);
先转换成字符串,传过去,然后那边接收后,再用
IntPtr init = Marshal.StringToHGlobalAnsi(str); 的方式解析一下

但是这种方法不行,传递之前转换成字符串 str 是空 " ",不知道为什么。我在程序里测试,有时就算不空,再转回 intptr 也不是以前的那个指针了。

我的方法可能不对,怎么以字符串的形式传递指针呢?
...全文
155 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuyufeng822 2017-11-06
  • 打赏
  • 举报
回复
没有找到合适办法,最后重载了一个方法,参数是传递的intptr 类型。

110,526

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧