Env: VS 2008, C ++
У меня есть код, подобный приведенному ниже:
void HopeException(LPVOID nVerify)
{
char *p = NULL;
p = (char *)nVerify;
delete []p;
}
Когда я вызываю функцию " HopeException " с параметром not-NULL,например:
HopeException(123);
тогда я надеюсь, что программа выдаст исключение.
Но когда я скомпилирую код на VS 2008 с Release режим, программа работает хорошо.
Я не знаю почему.Может ли кто-нибудь дать мне помощь по этому вопросу?
Или у вас есть хорошая идея реализовать эту функцию другим методом?
Редактировать:
Мне очень жаль, я думаю, что ранее отправил неправильный код.
На самом деле, я защищаю свое программное обеспечение.Мое программное обеспечение получит значение CRC файла DLL, а затем мое программное обеспечение проверит значение CRC, как показано ниже:
unsigned int VerifyCRC = FF234322;
unsinged int CRC = getCRC("Fun.dll");
LPVOID lpResult = CRC & (~VerifyCRC);
HopeException(lpResult);
Таким образом, согласно приведенному ниже коду, если взломщик взломает Fun.dll файл, выполнение выдаст исключение.
Это действительно я хочу.