2014_03_30工作日志:error创建dll时,只生成了dll,却没有发现lib文件

错因:只记着写在这个头文件Dll_Md5_Test.h中写函数的声明

__declspec(dllexport) BOOL DLL_Test(IN LPTSTR lpFilePath,IN LPTSTR lpMd5Content);

,却忘记了

在含有

BOOL APIENTRY DllMain(HINSTANCE hInstance,DWORD fdwReason,PVOID pvReserved)
{
	switch( fdwReason ) 
    { 
	case DLL_PROCESS_ATTACH:
		_tsetlocale(LC_CTYPE,TEXT(""));	
		LI_SetLogFilePathString(hInstance);
		break;
	case DLL_PROCESS_DETACH:	
		LI_FreeLogFilePathString();
		break;		
	case DLL_THREAD_ATTACH:
		break;	
	case DLL_THREAD_DETACH:
		break;	
    }
	
	return TRUE; 
}

这段代码的cpp文件中引用该头文件#include"Dll_Md5_Test.h".

                另外,在引用该头文件的cpp文件中,必须含有被调用的函数的定义。

注意:如果被掉函数调用了其他函数,则头文件的顺序应该是Dll_Md5_Test.h文件在其他头文件的最上方,如:

#include <Windows.h>
#include <LOCALE.H>
#include <STDIO.H>
#include <IOSTREAM.H>
#include <TCHAR.H>

#include "InitialDisk_DLL.h"
#include "FormatDrive.h"
#include "SetPartitionName.h"
#include "InitialDisk.h"
一定要注意这一点,写成
#include "FormatDrive.h"
#include "SetPartitionName.h"
#include "InitialDisk.h"
#include "InitialDisk_DLL.h"
的话就不能产生lib文件。

          对于我来说,这个错误隐藏的可真深,一开始,我还真没发现呢。然后就一点一点地对着尧哥的正确代码,想想他的运行机制,才慢慢发现这个严重的问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值