使用C++ 调用 C# 程序

开发环境

操作系统: 64位win 7
Visual Studio: 2012
.Net Framework: 4.5
实现方式是: 使用C#开发一个dll, 在C++的控制台程序中调用C#中的方法。

开发步骤

1:创建C# 的 Class Library project。 名字为: CShartLibrary

2. 改动Class1.cs的文件内容(仅仅是自己主动产生的文件)
内容例如以下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CShartLibrary
{
    public class Class1
    {
        public void helloworld()
        {
            Console.WriteLine("Hello World");
        }
    }
}

3. 编译产生DLL 文件CShartLibrary.dll 位于 CShartLibrary\bin\Debug

4. 新建C++的Project。(类型: Win32 Project; 名字 CppProject)

5. 改动项目属性

6.  将上面产生CShartLibrary.dll 放入CppProject\CppProject中, 与CppProject.cpp 同文件夹

7. 假设要Ctrl + F5 直接执行的话。 还要将CShartLibrary.dll放入  CppProject\x64\Debug 这个文件夹中。
(注意: 仅仅有一层CppProject 文件夹哦)

时间: 2024-07-30 09:28:47

使用C++ 调用 C# 程序的相关文章

asp.net网页调用客户端程序

================================第一步:网注册表中(HKEY_CLASSES_ROOT)添加项 ================================第二步:在网页上写上标签调用 <a href="xishui://hello">zhangdi://hello</a> ================================显示效果:会弹出hello asp.net网页调用客户端程序,布布扣,bubuko.com

c# 调用外包程序 等待处理完成结果

string root = @"J:\yaoqianshu"; string pythonPath = "解压缩拷贝启动动画测试(新).py"; string ccccPath = ""; ProcessStartInfo myProcess = new ProcessStartInfo(); myProcess.WorkingDirectory = root; myProcess.FileName = pythonPath; Process o

Windows、Linux、Web安装及调用Matlab程序完整说明(大章)

本文档详细说明了Linux下Web项目调用Matlab函数的完整操作,文章适合对Java.Linux有一定基础了解的人群(不了解也没什么,无非是多试几次).因Linux作为服务器,所以未在其上安装Matlab主程序,只安装了运行环境MCR. 本文档内所述的所有版本软件均以32位为准,JDK与MCR也使用32位.若你的系统为64位,Linux系统同样为64位,则请尽量选择使用64位版本的JDK与MCR. 由于Matlab的版本限制问题,请保证Matlab主程序和MATLABCompiler Run

在C#中调用控制台程序

需求:  想在C#中调用一个带有参数 dos命令  whoami,并处理返回的文本信息 调查:  一查看 发现是个 .exe 的问件, 并且这个.exe可以根据不同的参数,得到不同的系统信息 解决方案:问度娘要了一点资料,度娘很爽快地答应了我,解决需求 参考的网页我放到了文章的末尾 关键代码: 新建了个窗体程序,代码在载入窗体的时候执行,只是个小demo,就不多说了 private void Form1_Load(object sender, EventArgs e)         { //实

【Qt】使用QProcess调用其它程序或脚本

大概试了一下,还是不错的,不过字符编码问题还不太好解决: 代码: #include "mainwindow.h" #include "ui_mainwindow.h" #include <QMessageBox> #include <QProcess> #include <QTextCodec> #include <QCloseEvent> MainWindow::MainWindow(QWidget *parent)

WEB程序调用客户端程序

最近一个项目中要点击WEB页面上的链接启动自己编写的程序,而且还要接收参数,google了1.5小时,终于初步试验通过了. 尝试google了:web send message windows form, bs call cs program, custom protocol...多个关键字组合,发现这种技术叫 registered URL protocol,在这篇文章里介绍得比较详细: http://msdn.microsoft.com/en-us/library/aa767914(v=vs.

[转]自定义URL Protocol Handler,从网页调用EXE程序

转自:http://www.cnblogs.com/zjneter/archive/2008/01/08/1030066.html 迅雷,电驴等软件可以在浏览器中点击一个url后自动启动,并执行操作.这是咋实现的呢? 要实现这个功能笼共分3步.(我们注册一个xishui:// 这样的 protocol-handler,实现在网页中点击xishui://hello,就弹出一个对话框,上面显示"hello")1 按照如下结构建立注册表  其中 [xishui] 是建立在注册表的 [HKEY

C#调用Exe程序示例

在编写程序时经常会使用到调用可执行程序的情况,本文将简单介绍C#调用exe的方法.在C#中,通过Process类来进行进程操作. Process类在System.Diagnostics包中. 示例一 using System.Diagnostics; Process p = Process.Start("notepad.exe"); p.WaitForExit();//关键,等待外部程序退出后才能往下执行 通过上述代码可以调用记事本程序,注意如果不是调用系统程序,则需要输入全路径. 示

Matlab调用C程序

Matlab是矩阵语言,如果运算可以用矩阵实现,其运算速度非常快.但若运算中涉及到大量循环,Matlab的速度令人难以忍受的.当必须使用for循环且找不到对应的矩阵运算来等效时,可以将耗时长的函数用C语言实现,并编译成Mex文件,Matlab便可以像调用内建函数一样调用C编写的函数.Mex文件其实是一种动态链接库,旧版本Matlab可以直接调用.dll,新版本要调用.mexw32或.mexw64文件. 编译过程需要C语言编译器,在Matlab中键入mex –setup进行安装与配置. MEX文件

ARM基础:汇编调用C程序

/******************************************************************************************************************参考:说明:汇编调用C程序. ******************************************************************************************************************/ 这是一个