Задать вопрос
gazes12
@gazes12

Почему выдает ошибку: Arithmetic operation resulted in an overflow.?

Process process = Process.GetProcessesByName("notepad")[0]; 
        IntPtr baseAddress = process.MainModule.BaseAddress;
        
        int address = (int) baseAddress -  202384;
        Console.WriteLine(address);


Выдает ошибку: Arithmetic operation resulted in an overflow.
Если вывести результат выполнения baseAddress - 202384 - то работает.
Console.WriteLine(baseAddress -  202384); /*Работает*/

Помогите, пожалуйста, решить данную проблемку ;)
  • Вопрос задан
  • 241 просмотр
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Software-testing.ru
    Программирование на C# для тестировщиков
    10 недель
    Далее
Решения вопроса 1
freeExec
@freeExec
Участник OpenStreetMap
Потому что IntPtr это машинное слово, и если у вас не древний мамонт, то но равно 64 битам (оно же long). И оно никак не может поместиться в ваш int
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы