社区
C#
帖子详情
请教大神,winform程序能否直接对内存地址进行读写
超级大咸鱼
2012-10-15 10:16:16
比如把一个内存地址中的值读取出来然后直接修改掉。
完全没思路,不知是winform不好操作内存还是这领域我还尚未涉及....
...全文
127
7
打赏
收藏
请教大神,winform程序能否直接对内存地址进行读写
比如把一个内存地址中的值读取出来然后直接修改掉。 完全没思路,不知是winform不好操作内存还是这领域我还尚未涉及....
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
超级大咸鱼
2012-10-15
打赏
举报
回复
试 了下 已经可以了 并不是有项目需要改内存,只是个人好奇,多谢各位大神的关注。结贴了
threenewbee
2012-10-15
打赏
举报
回复
[Quote=引用 3 楼 的回复:]
地址一般是32位的。16位的一般是offset,得通过base address计算出实际地址。
[/Quote]
哦,看错了,你说的是16进制。
16进制和10进制只是人阅读时候的两种方式。
C#约定,前面加0x的就是16进制。因此 int i = 0xA; int i = 0x000A; 和 int i = 10; 都是一样的。
__天涯寻梦
2012-10-15
打赏
举报
回复
[Quote=引用 2 楼 的回复:]
引用 1 楼 的回复:
你只要能找到那地址就可以
C# code
unsafe
{
int* p = (int*)地址;
*p = 1;
}
这个地址是如何赋值的呢
地址是16进制的, 需要把16进制转int,然后再转int*?
[/Quote]
进制只是一种显示方式,本质还是数值,只要地址找对,直接就可以转换为合适类型的指针并操作。
比如 32 位下 16 进制的地址 int* p = (int*)0x11111111;
Dobzhansky
2012-10-15
打赏
举报
回复
System . Runtime . InteropServices . Marshal 就是为所欲为
threenewbee
2012-10-15
打赏
举报
回复
地址一般是32位的。16位的一般是offset,得通过base address计算出实际地址。
超级大咸鱼
2012-10-15
打赏
举报
回复
[Quote=引用 1 楼 的回复:]
你只要能找到那地址就可以
C# code
unsafe
{
int* p = (int*)地址;
*p = 1;
}
[/Quote]
这个地址是如何赋值的呢
地址是16进制的, 需要把16进制转int,然后再转int*?
__天涯寻梦
2012-10-15
打赏
举报
回复
你只要能找到那地址就可以
unsafe
{
int* p = (int*)地址;
*p = 1;
}
198个经典C#
WinForm
实例源码 超赞的完整版
"198个经典C#
WinForm
实例源码"包括: 1-窗体技巧 2-控件操作 3-图像操作 4-报表打印 5-系统操作 6-文件处理 7-网络操作 8-数据库操作 9-加密解密 10-硬件
读写
11-游戏设计 "超赞的198个经典C#
WinForm
实例源码.zip " ...
winform
实现360、QQ窗体与控件
利用
winform
的gdi+控件实现的QQ窗体与控件
winform
嵌套chrome浏览器,.net开发谷歌内核浏览器。
.net
winform
嵌套谷歌浏览器,flash插件已安装。
直接
能运行。
winform
模仿QQ聊天窗口皮肤控件
CSharp
winform
模仿QQ聊天窗口皮肤控件
198个经典C#
WinForm
实例源码(超赞)
198个经典C#
WinForm
实例源码 超赞 超赞~! 必看 必看~! 值得收藏~! 涉及全面 窗体技巧 控件操作 图像操作 报表打印 系统操作 文件处理 网络操作 数据库操作 加密解密 硬件
读写
游戏设计 入门必看实例~!!值得收藏...
C#
110,536
社区成员
642,578
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章