Привет ребята. Сделал солюшен для х32 - норм компилится. При попытке откомпилировать для х64 вот такая штука:
1>------ Построение начато: проект: FDriver, Конфигурация: Release Win32 ------ 1>Компиляция... 1>main.cpp 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(8698) : error C3861: UnsignedMultiplyHigh: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(8702) : error C3861: UnsignedMultiplyHigh: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12733) : warning C4391: ULONG64 __readcr8(void): неправильный возвращаемый тип для подставляемой функции; требуется 'unsigned long' 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12744) : warning C4391: ULONG64 __readcr8(void): неправильный возвращаемый тип для подставляемой функции; требуется 'unsigned long' 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12774) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12784) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12794) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12804) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12816) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12817) : error C3861: __movsb: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12829) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12830) : error C3861: __movsw: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12842) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12843) : error C3861: __movsd: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12855) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12856) : error C3861: __movsq: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12869) : error C3861: FastFence: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12882) : error C3861: FastFence: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12895) : error C3861: FastFence: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12908) : error C3861: FastFence: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12921) : error C3861: __movsb: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12922) : error C3861: FastFence: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12935) : error C3861: __movsw: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12936) : error C3861: FastFence: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12949) : error C3861: __movsd: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12950) : error C3861: FastFence: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12963) : error C3861: __movsq: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12964) : error C3861: FastFence: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12977) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12978) : error C3861: __inbyte: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12979) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12992) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12993) : error C3861: __inword: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(12994) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13007) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13008) : error C3861: __indword: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13009) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13023) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13024) : error C3861: __inbytestring: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13025) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13038) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13039) : error C3861: __inwordstring: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13040) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13053) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13054) : error C3861: __indwordstring: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13055) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13067) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13068) : error C3861: __outbyte: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13069) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13081) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13082) : error C3861: __outword: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13083) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13095) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13096) : error C3861: __outdword: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13097) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13110) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13111) : error C3861: __outbytestring: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13112) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13125) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13126) : error C3861: __outwordstring: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13127) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13140) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13141) : error C3861: __outdwordstring: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13142) : error C3861: _ReadWriteBarrier: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13254) : error C3861: FastFence: идентификатор не найден 1>C:\WinDDK\7600.16385.0\inc\ddk\wdm.h(13255) : error C3861: LoadFence: идентификатор не найден 1>Журнал построения был сохранен в "file://c:\FDriver\FDriver\Release\BuildLog.htm" 1>FDriver - ошибок 64, предупреждений 2 ========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
#include <ntddk.h> // файл включения используемый нашей программой void UnloadDriver(IN PDRIVER_OBJECT DriverObject); PDRIVER_OBJECT MyDriver = 0; NTSTATUS DriverEntry(IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath) { UNREFERENCED_PARAMETER(RegistryPath); MyDriver = DriverObject; DriverObject->DriverUnload = UnloadDriver; HalGetBusDataByOffset(PCIConfiguration, 0, 0, 0, 0x1234, 0x5678); return STATUS_SUCCESS; } void UnloadDriver(IN PDRIVER_OBJECT DriverObject) { UNREFERENCED_PARAMETER(DriverObject); return; }
anatolymik на беглый взгляд у тебя что-то с параметрами проекта я собираю ддкашным билдом и тебе советую когда запускаеш ддкашный енверонмент, там ещё куча глобальных нужных переменных дефайнится, которых может не хватать у тебя. жди тех, кто дрова64 в студии делает
anatolymik У тебя не стоит компилер для х64. Когда студию ставишь полазь в свёрнутых ветках и галочки проставь - у мя тоже самое Г было.
А на западе это уже давно; именно поэтому они нас обгоняют. И только у нас домохозяйки очень часто зачем-то "правят государством". Вот в этом наша проблема