zoukankan      html  css  js  c++  java
  • C# 调用VC++的DLL,VC++封装DLL

    VS中新建一个动态库项目

    文件生成一个工程名对应的.cpp文件,该文件定义 DLL应用程序的导出函数。

    工程内新建一个类OutputInt,我用类向导生成,工程中会添加OutputInt.cpp和OutputInt.h两个文件,

    在.h文件中声明函数

    #pragma once
    class OutputInt
    {
    public:
        OutputInt();
        ~OutputInt();
        
        static _declspec(dllexport)  int TestFunction();
    };

    在.cpp文件中实现 构造函数、析构函数和 自定义函数

    #include "stdafx.h"
    #include "OutputInt.h"
    
    
    OutputInt::OutputInt()
    {
    }
    
    
    OutputInt::~OutputInt()
    {
    }
    
    
    int OutputInt::TestFunction()
    {
        return 111;
    }

    类和头文件都实现了。

    然后在Win32Project1.cpp中定义对外暴露的函数

    #include "stdafx.h"
    #include "OutputInt.h"
    
    extern "C" __declspec(dllexport) int TestFunction()
    {
        OutputInt outPut;
        return outPut.TestFunction();
    }

    编译,生成对应工程项目名的DLL文件,动态链接库生成完成。

    在C# WPF应用程序中调用以上生成的DLL

    把生成的DLL文件拷贝到 WPF工程的DEBUG文件夹下,调用方式:

    [DllImport("Win32Project1.dll", ExactSpelling = false)]
     public static extern int TestFunction();

    调用完成。

  • 相关阅读:
    linux----安装jdk
    docker安装gitlab
    Centos7 安装docker
    容易混淆的字符
    nodejs 简单从淘宝的有好货根据关键词获取列表以及详情
    bash设置终端提示符
    C# NuGet打包和离线安装
    Shell 遍历文件夹中所有文件并进行相关操作
    css中“~”和“>”
    双击编辑表格字段
  • 原文地址:https://www.cnblogs.com/pangkang/p/5856144.html
Copyright © 2011-2022 走看看