马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 我叫学得会 于 2021-4-19 21:53 编辑
各位师傅,我复现网上资料学习写dll文件,报错是LNK的是漏了什么呢?
CSDN,百度一堆设置属性的解决方案并没有解决这个问题!
以下是网络教程里的示例,动态加载二进制数
// dllmain.cpp : 定义 DLL 应用程序的入口点。
#include "pch.h"
#include <windows.h>
#include <stdio.h>
#include <iostream>
extern "C" _declspec(dllexport) void testdll();
typedef void(_stdcall* CODE)();
#pragma comment(linker,"/subsystem:"console" /entry:"mainCRTStartup"")
unsigned char shellcode[] = "弹出MessageBox十六进制";
void testdll()
{
MessageBox(NULL, "信息框调用成功", "提示框", MB_OK);
PVOID p = NULL;
p = VirtualAlloc(NULL, sizeof(shellcode), MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
if (p == NULL)
{
return;
}
memcpy(p, shellcode, sizeof(shellcode));
CODE code = (CODE)p;
code();
}
BOOL APIENTRY DllMain( HMODULE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
testdll();
return TRUE;
}
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 LNK2019 无法解析的外部符号 main,函数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 中引用了该符号 dlltest E:\mytest\x64\Debug\MSVCRTD.lib(exe_main.obj) 1
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 LNK1120 1 个无法解析的外部命令 dlltest E:\mytest\x64\Debug\dlltest.dll 1
首先看报错信息,肯定是你配置错了
我帮你看看吧
qq:1440332527
|