生成dll程序

extern "C"_declspec(dllexport) void maopao(int *p,int count);
void maopao(int *p,int count)
{
 int temp=0;
 for(int i=1;i<count;i++)
 {
  for(int j=count-1;j>=i;j--)
  {
   if(p[j]>p[j-1])
   {
    temp=p[j];
    p[j]=p[j-1];
    p[j-1]=temp;
   }
  }
 }
}

调用dll文件(在调用dll时再)

#include<iostream>
#include<Windows.h>
#include<time.h>

typedef int(*Dllfun)(int *,int);
using namespace std;

int main()
{
 Dllfun maopao1;
 HINSTANCE hdll;
 hdll=LoadLibrary("D:\\company\\soft\\C\\maopao_dll\\Debug\\maopao_dll.dll");
 if(hdll==NULL)
 {
  FreeLibrary(hdll);
 }

maopao1=(Dllfun)GetProcAddress(hdll,"maopao");
 if(maopao1==NULL)
 {
  FreeLibrary(hdll);
 }
 int a[10];
 srand(time(0));
 for(int i=0;i<10;i++)
  a[i]=rand()%50;

for(int i=0;i<10;i++)
  cout<<a[i]<<' ';
  cout<<endl;

maopao1(a,10);
 for(int i=0;i<10;i++)
  cout<<a[i]<<' ';

FreeLibrary(hdll);

}

把“unicode”改成支持多字符扩展

C++ exe调用dll文件的更多相关文章

  1. 有关windows系统的EXE和DLL文件说法错误

    正确答案: B C   你的答案: C (错误) EXE和DLL文件都是PE文件 EXE不能有导出函数,DLL可以有导出函数 EXE有x86和x64之分,则DLL没有 EXE可以单独运行,DLL则不行 ...

  2. delphi 基础之三 编写和调用dll文件

    delphi 编写和调用dll文件   Windows 的执行文件可以划分为两种形式程序和动态连接库 (DLLs).一般程序运行是用.EXE文件,但应用程序有时也可以调用存储在DLL的函数. 在如下几 ...

  3. PE头的应用---插入代码到EXE或DLL文件中

    三.代码实现(DELPHI版本),采用第三种方式实现代码插入. 1. 定义两个类,一个用来实现在内存中建立输入表:一个用来实现对PE头的代码插入. DelphiCode: const MAX_SECT ...

  4. exe调用DLL的方式

    假设被调用的DLL存在一个导出函数,原型如下: void printN(int); 三种方式从DLL导入导出函数 生成DLL时使用模块定义 (.def) 文件 在主应用程序的函数定义中使用关键字__d ...

  5. java中调用dll文件的两种方法

    一中是用JNA方法,另外是用JNative方法,两种都是转载来的, JNA地址:http://blog.csdn.net/shendl/article/details/3589676   JNativ ...

  6. Java调用.dll文件

    因为项目的需求,要在JAVA项目中调用Windows的Dll(动态链接库)文件,之前用Jni调用过C写的Dll文件,比较麻烦,这里不多说,网上也有很多这方面的文档.在网上找到一个开源的组件JNativ ...

  7. 使用ILmerge合并Exe、Dll文件的帮助类

    原文:使用ILmerge合并Exe.Dll文件的帮助类 using System; using System.Collections.Generic; using System.Text; using ...

  8. LabVIEW如何方便地调用DLL文件

    转自:http://bbs.elecfans.com/jishu_469502_1_1.html   LabVIEW调用DLL文件 LabVIEW支持通过调用DLL文件的方式与其它编程语言混合使用.比 ...

  9. C#调用Dll文件中方法的简单应用

    参考:http://www.cnblogs.com/Asuphy/p/4206623.html 直接看代码,最简单的引入,只需要3步: using System; using System.Colle ...

随机推荐

  1. 运行R 报错R cannot R_TempDir, 继而发现/dev/mapper/VG00-LV01 磁盘空间已满

    今天在运行R脚本的时候报了个错:Fatal error: cannot create 'R_TempDir'.排除了是自己写的代码的问题,想着应该是某个没见过的原因,google之,发现网上的说法是/ ...

  2. discuz中方法

    discuz中检验是否是邮箱 function isemail($email) { && strlen($email) <= && preg_match(&quo ...

  3. openssl生成rsa密钥对和密钥格式转换

    首先要下载安装好openssl,下载地址:https://www.openssl.org/source/,安装完成后可以进到命令行运行以下命令: 1. 生成私钥: openssl genrsa -ou ...

  4. hbase hmaster故障分析及解决方案:Timedout 300000ms waiting for namespace table to be assigned

    最近生产环境hbase集群出现停掉集群之后hmaster无法启动现象,master日志报异常:Timedout 300000ms waiting for namespace table to be a ...

  5. DUBBO参数验证

    public class ValidationParameter implements Serializable {           private static final long seria ...

  6. Can’t Activate Reporting Services Service in SharePoint

    访问sharepoint的reporing service 的报表的时候莫名其妙的报错: The requested service, 'http://amatltapp02:32843/1dacf4 ...

  7. nodejs安装心得

    首先下载nodejs,http://nodejs.org/download/ 配置系统环境变量 管理员运行cmd, 输入命令 node -v 查看版本 安装npm Npm安装命令 npm-1.3.15 ...

  8. LESS初探

    1. 安装less $ npm install -g less 2. less文件编译成css文件 $ lessc styles.less styles.css <!DOCTYPE html&g ...

  9. ubuntu使用 服务

    在这里写了很多篇linux,习惯了在这里写 centos中定时任务命令是crond ubuntu中定时任务命令是cron 这两种linux系统不一样的地方还是挺多的, 既然我目前的专注点是ubuntu ...

  10. 使用WebClient 或者 HttpWebRequest均报:"The Remote name can't be solved"

    错误原因: 未配置代理服务器设置的问题, 需要在配置节做如下操作. ============================================ 文章编号: 318140 - 查看本文应用 ...