从文本框偏移为十六进制

发布于 2024-08-20 23:20:28 字数 208 浏览 9 评论 0原文

我正在使用 lpBaseAddress : IntPtr

,但是...我需要输入十六进制值 :-/ 就像

VB 上的正常偏移量一样,可能是这样的:

offset = CLng("&H" + text)

所以我需要从文本框中获取一个值,然后在 C# 上发挥同样的魔力(或 Nemerle ^_)

I'm using lpBaseAddress : IntPtr

but ... I need to enter hex value :-/ like a normal offset

like on VB that could be something like :

offset = CLng("&H" + text)

So I need to take a value from textbox and make same magic on C# (or Nemerle ^_)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

入画浅相思 2024-08-27 23:20:28

如果您只想解析十六进制:

string hex = "0a12cc";
long ptr = Convert.ToInt64(hex, 16);
IntPtr newPtr = new IntPtr(ptr);

我在这里使用 long 进行说明,因为 IntPtr 可能是 32/64。

If you just want to parse hex:

string hex = "0a12cc";
long ptr = Convert.ToInt64(hex, 16);
IntPtr newPtr = new IntPtr(ptr);

I've used long here for illustration, as IntPtr could be 32/64.

层林尽染 2024-08-27 23:20:28
offset = System.Convert.ToInt64(this.yourTextBox.Text, 16);

您确定需要 Int64 (Long) 而不仅仅是 Int32 (Int) 吗?如果您是 VB6 编码员,您需要的是 Int32 (Int),而不是 Long。

offset = System.Convert.ToInt64(this.yourTextBox.Text, 16);

Are you sure you need an Int64 (Long) and not just an Int32 (Int)? If you're a VB6 coder, Int32 (Int) is what you're looking for, not Long.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文