在运行时用c++创建dll
Create dll on runtime in c++
Im使用代码块和c++。
当我在大型项目中工作时,我遇到的问题是很多代码都花在了创建接口上。这需要大量的时间和大量的bug修复。
我想创建一个程序,让我编辑未来项目中的c++代码。让我们称之为A。A将能够通过修改c++代码为我的项目创建一个接口。现在,在运行时,当A创建一个新项目时,它会创建其cpp文件和dll文件。例如,当A添加一个按钮时,它将更改其c++并将结果保存在dll中。然后,当我决定我的项目结束时,我想把dll变成一个exe。我尽力用寥寥数语解释事情。希望你明白的想法
我知道你可以通过点击新项目手动创建dll,然后选择动态链接库,但在运行时可以创建dll吗?基本上是这样的:
#include <iostream>
using namespace std;
int main()
{
const char* str=
"
///c++ code
for(i=0;i<5;i++)
if(i%2==0)
cout<<i;
"
const char* path="dllName.dll";
f(str,path);
return 0;
}
str是一个数组,我在其中存储一些正确的c++代码f函数是我需要你给出的答案。
我是这个话题的新手(dll文件,所以如果我问了一些愚蠢和明显的问题,我道歉)
您可以将str的内容写入一个临时文件,并让您的程序使用该文件作为输入来执行编译器。
将源代码生成到文件中,然后调用编译器作为外部进程来编译cpp文件。
{
ofstream f("hello.cpp");
f << "your hello world code";
}
system("msvc.exe hello.cpp -some_dll_make_command hello.dll");
C++程序无法在运行时编译代码。你能做的最好的事情就是要求你的程序调用编译器,然后编译器会创建你的dll。
检出LoadLibrary
、FreeLibrary
和GetProcAddress
。我假设您想要的是在运行时动态加载/卸载dll。
相关文章:
- 函数指针分配在创建 DLL 后导致错误
- 无法创建 DLL:获取 DLL "is not a valid Win32 application"
- 如何从支持linux/mac操作系统的第三方代码为我的c#项目创建dll
- 在 c++ 中创建 dll 并在 delphi 中调用的标准方法
- Windows错误:异常:使用从C++到Python的ctypes创建DLL时出现访问冲突或Windows错误193
- 如何从标头和库创建 DLL
- 如何在 c++ 生成器 6 中从应用程序源代码创建 dll
- 使用VCPKG下载依赖项而无需创建DLL
- 在运行时用c++创建dll
- 使用 C++ 创建 DLL 文件
- 使用不同的C++环境创建DLL
- 使用Cygwin创建DLL时
- 从 C# 调用C++代码而不创建 dll
- 创建DLL导出对象时发生堆栈溢出错误
- 在C++中创建DLL以在VS2005中导入C++DLL
- 正在用现有代码创建.dll
- r语言 - 在 Windows 上使用 Rcpp 创建.dll文件并编译C++代码
- 创建 Dll 文件
- Winbase.h 不支持创建 DLL 文件
- 从现有 mfc 项目创建 dll