Конвертация string в IntPtr - C#

Узнай цену своей работы

Формулировка задачи:

Привет Всем Знающие, помогите, как можно конвертировать string в IntPtr Мой код:
VAM = new VAMemory("PointBlank.exe");
            byte[] bytess = new byte[3];
            bytess = VAM.ReadByteArray((IntPtr)(textBox1.Text),3);//0x63878A
            string s = "";
            for (int i = 0; i < bytess.Length; i++)
            {
                s += " " + "0x" + bytess[i].ToString("X");
            }
            MessageBox.Show(s);
Пробывал так:
bytess = VAM.ReadByteArray((IntPtr)(Convert.ToInt32(textBox1.Text)), 3);
И так:
Int32 lab = Convert.ToInt32(textBox1.Text);
bytess = VAM.ReadByteArray((IntPtr)(lab), 3);
Как результат - программа компилиться нормально, но при вводе в текстбокс пишет что "Входная строка не имела нужный формат" Еще я пробывал сделать через Marshal, вот так:
IntPtr bas = Marshal.StringToHGlobalUni(textBox1.Text);
bytess = VAM.ReadByteArray((IntPtr)(bas), 3);
Результат: Программа компилиться нормально, но при вводе ЛЮБОГО слова, значения, мата оно выдает рандомные байты..

Решение задачи: «Конвертация string в IntPtr»

textual
Листинг программы
int val = Convert.ToInt32(textBox1.Text, 16); //Парсим шестнадцатеричное число
IntPtr ptr = new IntPtr(val); //получаем указатель

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5