从文本框偏移为十六进制

时间:2010-02-09 13:01:54

标签: c# offset nemerle

我正在使用lpBaseAddress : IntPtr

但是......我需要输入十六进制值: - /像普通偏移量

像在VB上那样可能是:

offset = CLng("&H" + text)

所以我需要从文本框中获取一个值并在C#(或Nemerle ^ _)上制作相同的魔法

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:1)

如果您只想解析hex:

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

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