首页 > 编程学习 > c++ 在项目中创建DLL,并调用

c++ 在项目中创建DLL,并调用

发布时间:2022/8/29 14:51:05

创建DLL分为两种方法,先介绍第一种

一、创建DLL

(1)

// dll.h
#pragma once
//dll.h
#ifndef DLL_H_
#define DLL_H_

void printhello();
void callPython();
extern "C" _declspec(dllexport) void start();
#endif
//dll.cpp
#pragma once
#include <iostream>
#include <Python.h>

using namespace std;

void printhello() {
	cout << "hello c++ dll !" << endl;
}


void callPython() {
	Py_Initialize();
	if (!Py_IsInitialized()) PyErr_Print();
	PyRun_SimpleString("import sys");
	PyRun_SimpleString("sys.path.append('D:\\CodeDemo')");
	PyObject* pModule = NULL;
	PyObject* pFunc = NULL;
	PyObject* pDict = NULL;
	PyObject* pKey = NULL;
	PyObject* pSubDict = NULL;
	if (!(pModule = PyImport_ImportModule("hellopython"))) PyErr_Print();
	if (!(pFunc = PyObject_GetAttrString(pModule, "hellopython"))) PyErr_Print();
	PyObject_CallObject(pFunc, NULL);
}

extern "C" _declspec(dllexport)void start()
{
	printhello();
	callPython();
}


Configuration Properties-> General -> Configuration Type 改为dll。


Configuration Properties-> Linker-> General -> output file 按图修改。

然后Build->build soultion, 就可以在debug或者release目录下看到生成的DLL 文件

(2) 待补充

二、使用DLL文件

参考这篇文章:https://docs.microsoft.com/zh-cn/cpp/build/walkthrough-creating-and-using-a-dynamic-link-library-cpp?view=msvc-170

分为四步:
(1)
指到要引用的头文件路径。

(2)
输入链接中使用的lib文件

(3)
这是上一步lib文件的路径,

(4)把dll文件放在调用project的exe目录下即可

Copyright © 2010-2022 mfbz.cn 版权所有 |关于我们| 联系方式|豫ICP备15888888号