Я пытаюсь программно получить IntPtr для отправки сообщений и ключей внешним программам. Я могу получить правильное шестнадцатеричное значение для дескрипторов кнопок.
Console.WriteLine(myIntPtr) //If I take the number here as, say, XXX
IntPtr manualIntPtr = (IntPtr)0x0XXX; //I type this in so I can confirm I need the 0x0 portion
SendMessage(manualIntPtr, 0x0F5, 0, IntPtr.Zero); //This successfully clicks a button with handle 0x0XXX
Моя проблема заключается в том, что мой программно полученный IntPtr не имеет формат "0x0XXX". Если я делаю что-то вроде
myIntPtrString = "0x0" + Convert.ToString(myIntPtr);
myIntPtr = IntPtr(Convert.ToString(myIntPtrString)); // I'm brand new to C#, there's probably a better way to do this
, то 0x0 теряется и SendMessage () больше не работает. Есть ли какой-нибудь способ сохранить "0x0" внутри IntPtr? Спасибо за вашу помощь!