BUILD: [01:0000000105:ERRORE] fsdmgr_lib.lib(fsdmain.obj) : error LNK2005: _DllMain already defined in JFS_Main.obj
BUILD: [01:0000000106:ERRORE] fsdmgr_lib.lib(mountedvolume.obj) : error LNK2019: unresolved external symbol _NotifyCreateFile referenced in function "public: void * __cdecl MountedVolume_t::NotifyCreateFile(unsigned short const *)" (
?NotifyCreateFile@MountedVolume_t@@QAAPAXPBG@Z)
BUILD: [01:0000000107:ERRORE] fsdmgr_lib.lib(mountedvolume.obj) : error LNK2019: unresolved external symbol _NotifyCreateVolume referenced in function "public: long __cdecl MountedVolume_t::Attach(void)" (
?Attach@MountedVolume_t@@QAAJXZ)
BUILD: [01:0000000108:ERRORE] fsdmgr_lib.lib(mountedvolume.obj) : error LNK2019: unresolved external symbol _NotifyDeleteVolume referenced in function "protected: void __cdecl MountedVolume_t::Destroy(void)" (
?Destroy@MountedVolume_t@@IAAXXZ)
BUILD: [01:0000000109:ERRORE] fsdmgr_lib.lib(volumeapi.obj) : error LNK2019: unresolved external symbol _NotifyPathChange referenced in function "public: void __cdecl MountedVolume_t::NotifyPathChange(unsigned short const *,int,unsigned long)" (
?NotifyPathChange@MountedVolume_t@@QAAXPBGHK@Z)
BUILD: [01:0000000110:ERRORE] fsdmgr_lib.lib(mounttable.obj) : error LNK2001: unresolved external symbol _NotifyPathChange
BUILD: [01:0000000111:ERRORE] fsdmgr_lib.lib(volumeapi.obj) : error LNK2019: unresolved external symbol _NotifyMoveFile referenced in function "public: void __cdecl MountedVolume_t::NotifyMoveFile(unsigned short const *,unsigned short const *)" (
?NotifyMoveFile@MountedVolume_t@@QAAXPBG0@Z)
BUILD: [01:0000000112:ERRORE] fsdmgr_lib.lib(volumeapi.obj) : error LNK2019: unresolved external symbol _NotifyMoveFileEx referenced in function "public: void __cdecl MountedVolume_t::NotifyMoveFileEx(unsigned short const *,unsigned short const *,int)" (
?NotifyMoveFileEx@MountedVolume_t@@QAAXPBG0H@Z)
BUILD: [01:0000000113:ERRORE] fsdmgr_lib.lib(volumeapi.obj) : error LNK2019: unresolved external symbol _NotifyCreateEvent referenced in function "public: void * __cdecl MountedVolume_t::NotifyCreateEvent(void *,unsigned short const *,int,unsigned long)" (
?NotifyCreateEvent@MountedVolume_t@@QAAPAXPAXPBGHK@Z)
BUILD: [01:0000000114:ERRORE] fsdmgr_lib.lib(fileapi.obj) : error LNK2019: unresolved external symbol _NotifyCloseHandle referenced in function "public: void __cdecl MountedVolume_t::NotifyCloseHandle(void *)" (
?NotifyCloseHandle@MountedVolume_t@@QAAXPAX@Z)
BUILD: [01:0000000115:ERRORE] fsdmgr_lib.lib(fileapi.obj) : error LNK2019: unresolved external symbol _NotifyHandleChange referenced in function "public: void __cdecl MountedVolume_t::NotifyHandleChange(void *,unsigned long)" (
?NotifyHandleChange@MountedVolume_t@@QAAXPAXK@Z)
BUILD: [01:0000000116:ERRORE] fsdmgr_lib.lib(pathapi.obj) : error LNK2019: unresolved external symbol _NotifyGetNextChange referenced in function _FSEXT_FindNextChangeNotification
BUILD: [01:0000000117:ERRORE] fsdmgr_lib.lib(pathapi.obj) : error LNK2019: unresolved external symbol _INT_NotifyGetNextChange referenced in function _FSINT_FindNextChangeNotification
BUILD: [01:0000000118:ERRORE] fsdmgr_lib.lib(pathapi.obj) : error LNK2019: unresolved external symbol _NotifyCloseChangeHandle referenced in function _FSEXT_FindCloseChangeNotification
BUILD: [01:0000000119:ERRORE] fsdmgr_lib.lib(pathapi.obj) : error LNK2019: unresolved external symbol _INT_NotifyCloseChangeHandle referenced in function _FSINT_FindCloseChangeNotification
BUILD: [01:0000000120:ERRORE] C:/WINCE600/platform/NaviCoreJ3Eval/target/SH4/retail/JacintoFSD.dll : fatal error LNK1120: 13 unresolved externals
第一个错误显示了DllMain重复定义。用记事本打开fsdmgr_lib.lib文件,在其中可以找到DllMain的信息。然后打开fsdmgr.lib文件,在里面找不到DllMain的信息。
一种是静态链接库。这种情况下,.lib文件不过是将需要的.obj文件进行了一个打包,并在相应的头文件中对其中的函数进行声明。在链接的时候,会将静态库的整个内容,包含到你的程序生成的EXE文件中。如果静态库中也定义了DLLMain函数,该静态库就不能被其他动态库(含有DLLMain函数)链接,否则会出现DLLMain重复定义的错误。需要说明的是,静态链接库和动态链接库的另外一个区别在于静态链接库中不能再包含其他的动态链接库或者静态库,而在动态链接库中还可以再包含其他的动态或静态链接库。
另一种.lib文件是动态链接库的导入库(Import Libraries)。使用导入库,并include了动态库的头文件,就可以直接使用头文件中声明的函数,而不需要自己LoadLibary调入DLL文件,然后再手工GetProcAddress获得对应函数了。
此处之所以链接fsdmgr.lib正常,而链接fsdmgr_lib.lib时出错,是因为fsdmgr_lib.lib是静态库,里面包含了DLLMain函数,以及其他函数的实现,所以会显示DLLMain重复定义,函数实现中使用到的一些接口,在自己的驱动中也是找不到的,所以出现了很多错误。而fsdmgr.lib是动态链接库fsdmgr.dll的导入库,所以,在驱动中链接该库一切OK。
相关推荐
Windows Ebedded CE6.0 SP1.msi 是用作Windows Ebedded CE6.0 SP1.msi的补丁之用
ce6.0中文绿色版免费奉送 ce6.0中文绿色版免费奉送 ce6.0中文绿色版免费奉送 ce6.0中文绿色版免费奉送
Windows Embedded CE 6.0安装程序 官方下载包
本书全面深入地介绍了Windows Embedded CE 6.0开发环境,通过一系列的示例练习揭示了CE 6.0的开发和应用。 本书全面深入地介绍了Windows Embedded CE 6.0开发环境,通过一系列的示例练习揭示了CE 6.0的开发和应用。...
Win CE 6.0 模拟器
讲座内容: 驱动的移植是嵌入式开发中的一个重要环节,我们这节课将以一个具体的I/O驱动为例,向大家介绍驱动的...2006 年,获推荐参加 Microsoft 全球 Windows CE6.0 讲师培训,经微软考核认证,获得TTT资深讲师资格。
Author and Embedded CE expert Samuel Phung encourages you to develop Windows Embedded CE 6.0 applications by adapting the skills you already have. You'll learn to produce a new breed of intriguing ...
windows embedded ce 6.0 全英文 适合嵌入式学习
ce6.0汉化版下载
导航仪上使用的地图和一些小程序及应用软件、小游戏是在WIN CE(有CE4.2,CE5.0,CE6.0)系统下运行的。 电脑的WIN XP系统不能直接运行CE的地图。 用CE模拟器就是在电脑的WIN XP系统下模拟出WIN CE的运行环境,达到...
完全安装wince6.0,必须先安装windows embedded ce6.0,再装R2
Windows CE 6.0下载地址列表(所有364个文件),wince6.0 只能是下载364个文件进行安装,其他的一个安装包的本人试过好几个都不行。
WindowCE 6.0 终端连接sql server SDK
windows embedded ce 6.0 适合嵌入式学习 上本请查找windows embedded ce 6.0(上)
最新的windows ce6.0bsp开发源码
windows ce 6.0 资源管理器
Windows Embedded CE 6.0 (CE 6.0) 引入了能突破先前内核局限性的新内核,同时从微小的 CPU 中榨出了更多的性能。在本文中首先介绍与新内核相关的 CE 6.0 操作系统新功能:新的 API 部署方案、新采用的内核模式以及...
windows embedded ce 6.0安装包,
Windows embedded ce 6.0开发指南及应用构建流程 作者姜波,这是书的随赠光盘。
车载CE6.0操作系统 放到SD卡使用 描述大于20字不是问题吧