PDA

Просмотр полной версии : Компилятор в Dev-C++ В чем его особенность?


_nic
10.06.2009, 11:03
Ругается на такую строчку

(int(__stdcall*)())ZwQuerySystemInformation=GetPro cAddress(GetModuleHandle("ntdll.dll"),"ZwQuerySystemInformation");


"ISO C++ forbids cast to non-reference type used as lvalue"

В борланде такая конструкция работает без проблем.А тут что нужно?

ss88
10.06.2009, 15:25
ZwQuerySystemInformation=(int(__stdcall*)())GetPro cAddress(GetModuleHandle("ntdll.dll"),"ZwQuerySystemInformation");
Попробуй так, потому что обычно преобразовывают тип rvalue, но не lvalue

А особенности GNU Compilers Collection - это на целую книгу, но мне из них больше всего нравится то, что они хоть пытаются следовать принятым стандартам.

_nic
10.06.2009, 18:44
Попробуй так, потому что обычно преобразовывают тип rvalue, но не lvalue

А особенности GNU Compilers Collection - это на целую книгу, но мне из них больше всего нравится то, что они хоть пытаются следовать принятым стандартам.
Да нет к сожалению,неполучается :( Точнее уже другой тип ошибки,опять же которого небыло в борландском компиляторе.

invalid conversion from `int (*)()' to `dispp::NTSTATUS (*)(dispp()::SYSTEMINFOCLASS, void*, ULONG, long unsigned int*)'

metaldisc
11.06.2009, 15:58
_nic В DevC++ есть модуль ntdll

_Great_
12.06.2009, 02:36
*(FARPROC*)&ZwQuerySystemInformation = GetProcAddress(GetModuleHandle("ntdll.dll"),"ZwQuerySystemInformation");
RTFM type cast