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。
相关推荐
第20章 部署CE6.0设备 20.1 Windows网络投影仪 20.2 Windows网络投影仪OS设计 20.3 Windows网络投影仪的使用 20.4 小结 附录A Windows Embedded CE资源 附录B 安装和软件 附录C 示例应用程序和OS设计项目
**CE6.0模拟器详解** CE6.0模拟器是一种专为车载系统设计的软件模拟平台,它基于Microsoft的Windows Embedded CE 6.0操作系统。Windows Embedded CE 6.0是微软公司推出的轻量级操作系统,广泛应用于各种嵌入式设备...
在Windows Embedded CE 6.0中,驱动程序是连接硬件和操作系统的关键组件。开发者需要理解如何编写设备驱动程序,以确保硬件功能的充分利用和系统的兼容性。这包括了解驱动模型,如WDM(Windows Driver Model)和NDIS...
在Windows CE环境中,驱动程序是连接硬件和操作系统的重要桥梁。这一章将深入介绍如何为不同的硬件设备开发驱动程序,包括I/O控制、中断处理、DMA传输等机制。同时,还会讨论驱动模型,如WDM(Windows Driver Model...
标题中的“sms.rar_RIL wince S_ce6.0 s_sms_wince_wince ril”表明这是一个关于Windows CE 6.0系统下使用RIL(Radio Interface Layer)进行短信服务(SMS)操作的示例项目。RIL是操作系统与无线通信模块之间的一个...
标题中的“CE6.0 802.11B 无线网卡驱动源码(SDIO)”指的是在Windows CE 6.0操作系统环境下,针对802.11b标准的无线网卡开发的一套驱动程序源代码,且该驱动程序特别采用了SDIO(Secure Digital Input/Output)接口...
《Professional Microsoft Windows Embedded CE 6.0第14章》主要涵盖了Windows Embedded CE 6.0(简称WinCE 6.0)系统开发中的一个重要环节,即设备驱动程序的开发和管理。本章深入探讨了如何为WinCE 6.0平台设计、...
而Windows CE 6.0(简称WinCE6.0)是微软推出的一款嵌入式操作系统,特别适用于移动设备和小型化硬件系统。VS2005与WinCE6.0结合,可以为开发者提供一个强大的平台,用于创建、调试和部署基于WinCE6.0的应用程序。 ...
Windows CE 6.0相比于之前的版本,在用户界面、多媒体支持、网络连接等方面都有了显著的提升。 ### 下载链接解析 在给出的内容中,我们看到了一系列的下载链接,这些链接指向了不同的.CAB文件,例如`CE_10_1.cab`...
在Windows CE 6.0(简称WinCE6.0)这个嵌入式操作系统上进行TCP通信测试是非常重要的,尤其对于开发物联网设备、工业自动化设备或者移动设备应用的工程师来说。TCP(传输控制协议)是一种面向连接的、可靠的、基于...
在Windows CE(简称WinCE)操作系统环境下,对WiFi进行连接是一项关键的技术操作,尤其是在嵌入式设备和移动设备中。Windows CE是微软为小型设备设计的一种实时操作系统,它提供了丰富的API和工具,允许开发者实现...
在Windows CE 6.0(简称WinCE6.0)操作系统中,串行通信(Serial Port)是设备间进行数据交换的重要方式,特别是在嵌入式系统和开发阶段。本资源包含的是针对不同处理器架构的串口调试工具,包括SM_SH4_V2.1.exe...
1. WinCE 6.0调试器:Microsoft Platform Debugger (MSDbg) 是Windows CE 6.0的内置调试器,它可以连接到运行中的设备或模拟器进行实时调试。MSDbg提供了设置断点、查看内存、跟踪调用堆栈等功能,帮助开发者定位和...
### i.MX51 EVK Windows Embedded CE 6.0 用户指南知识点解析 #### 一、概述 **i.MX51 EVK Windows Embedded CE 6.0 用户指南**是针对基于Freescale i.MX51系列处理器的开发板(i.MX51 EVK)上运行Windows ...
在Windows CE (WINCE) 操作系统环境下,无线网卡驱动程序是确保设备与网络连接的关键组成部分。在本文中,我们将深入探讨如何在WinCE 5.0和WinCE 6.0上安装和配置USB无线网卡驱动,以及相关的技术细节。 标题...
标题中的“2440 wince6.0 BSP”指的是基于Samsung S3C2440微处理器的Windows CE 6.0 Board Support Package(BSP)。BSP是硬件平台与操作系统之间的桥梁,它包含了驱动程序、配置文件和其他必要的软件组件,确保操作...