阅读:1366回复:3
在porting driver for AMD64,遇到的一个问题,很急的。
我在port一个虚拟的scsi port driver到AMD64平台上来,但是用DDK2003 for AMD64遇到一个Link的问题。错误信息显示如下:
vscsi.objerror LNK2019: unresolved external symbol __imp_ScsiPortNotification referenced in function \"unsigned char __cdecl chkMediaExist(struct _DEVICE_EXTENSION *)\" (?chkMediaExist@@YAEPEAU_DEVICE_EXTENSION@@@Z) vscsi.objerror LNK2019: unresolved external symbol __imp_ScsiPortGetDeviceBase referenced in function \"unsigned long __cdecl SCIFindAdapter(void *,void *,void *,char *,struct _PORT_CONFIGURATION_INFORMATION *,unsigned char *)\" (?SCIFindAdapter@@YAKPEAX00PEADPEAU_PORT_CONFIGURATION_INFORMATION@@PEAE@Z) vscsi.objerror LNK2019: unresolved external symbol __imp_ScsiPortValidateRange referenced in function \"unsigned long __cdecl SCIFindAdapter(void *,void *,void *,char *,struct _PORT_CONFIGURATION_INFORMATION *,unsigned char *)\" (?SCIFindAdapter@@YAKPEAX00PEADPEAU_PORT_CONFIGURATION_INFORMATION@@PEAE@Z) vscsi.objerror LNK2019: unresolved external symbol __imp_ScsiPortCompleteRequest referenced in function \"unsigned char __cdecl SCIResetBus(void *,unsigned long)\" (?SCIResetBus@@YAEPEAXK@Z) vscsi.objerror LNK2019: unresolved external symbol __imp_ScsiPortInitialize referenced in function DriverEntry thread.objerror LNK2019: unresolved external symbol ScsiPortNotification referenced in function SCSICallBack objfre_wnet_amd64\\amd64\\o2sd.syserror LNK1120: 6 unresolved externals 我已经把scsi.h miniport.h,包进来了,而且应该也连接了scsiport.lib文件,况且有两个这个lib里面的function没有报错。 我不知道为什么,我的source file是.cpp,所以我加了extern \"C\"来包含DDK里面的头文件,我觉得应该没有问题,但是就是出错了。 请各位大虾,指点下。 而且我不知道为什么,scsi.h会和ntddk.h 和wdm.h会冲突。 |
|
|
沙发#
发布于:2005-03-31 15:46
补充一下, 在XP DDK下build是没有问题的。
|
|
|
板凳#
发布于:2005-04-01 09:03
把工程贴出来看看......
|
|
|
地板#
发布于:2005-04-01 17:29
自己搞定了,谢谢
|
|
|