DLL编程的优点
现在好多程序都是使用.dll来实现一个特定的功能函数,但是现在看了下DLL编程,感觉这个和以前的编写普通的子程序好像没有多大改变,反而有的复杂了,所以她一定有什么优点,希望哪位大侠介绍下为什么我们选择.dll?
#include<stdio.h>
#include<windows.h>
#include<string.h>
__declspec(dllexport) void demo()
{
#define PASSWORD_SIZE 100
#define PASSWORD "myGOODpassword\n"
int count = 0;
char buff[PASSWORD_SIZE]="";
for(;;)
{
// 提示用户输入密码并且读取他
printf("enter password: ");
fgets(&buff[0],PASSWORD_SIZE,stdin);
// 针对参数值匹配输入的密码
if(strcmp(&buff[0],PASSWORD))
{
// “声诉”密码不匹配
printf("WRONG password\n");
}
else break;
// 鉴定失败计数值+1,并且在密码试输三次后终止程序运行
if(++count > 2) return ;
}
// 程序执行到这里,意味着用户输入的密码是正确的
printf("password ok!\n");
}
{
HMODULE hmod;
void (*zzz)();
if(( hmod=LoadLibrary("crackme.exe") )
&&(zzz=(void(*)())GetProcAddress(hmod,"Demo")))
zzz();
return 0;
}
那上面的程序怎么运行呀??因为直接编译,发现没有调用void demo()函数