资源简介
硬件提供C++的DLL,实际应用是用C#开发的,可以是winform可以是webapi等,通过新建C++项目对DLL进行再次封装,并提供接口给C#程序使用。
代码片段和文件信息
// CSharpInvokeCPP.CPPDemo.cpp : 定义 DLL 应用程序的导出函数。
//
#include “stdafx.h“
#include “malloc.h“
#include “userinfo.h“
#include “OpenDeviceInfo.h“
#include “ReadCert.h“
#include “Identify.h“
#include “Autograph.h“
#include “CertData.h“
#include
#include
#include
#include // std::cout
#include “./include/isccryptapi.h“
#include “./include/decodecert.h“
//#include “../include/CertDecoder.h“
#include
#include
#include
#include
#include
#include
//#include “D:\固定端口\AuthProject\sourcecode\share\ckwdebuglog.h“
char g_LogPath[_MAX_PATH];
UINT g_nDbgDispLvl g_bDbgToFile;
#include
using namespace std;
typedef unsigned char byte;
typedef unsigned char BYTE;
//const BOOL bGBSM2=TRUE;
const BOOL bGBSM2 = FALSE;
#define MAX_BUF 4096
#define ERR_LEN 200
#define BUF_LENGTH 200000
#pragma comment(lib“./lib/cryp_api“)
#pragma comment(lib“./lib/decodecert“)
//#pragma comment(lib“../lib/CertDecoder“)
typedef struct {
char name[32];
int age;
} User;
UserInfo* userInfo;
// 打开USBKey设备
typedef struct {
char Pwd[20];
char Result[32];
char ErrorInfo[32];
int ErrorCode;
} OpenUSBKey;
OpenDeviceInfo* opendeviceinfo;
// 读取用户证书
typedef struct {
char Pwd[32];
int CertNum;
int CertVer; // 证书版本号
char CertSID[32]; // 证书序列号
char CertSender[32]; // 证书签发者通用名 中国税务认证中心
char CertStartTime[32]; // 证书起始时间
char CertEndTime[32]; // 证书无效时间
char CertApplyer[32]; // 证书申请者通用名
char Result[128];
int ErrorCode;
} ReadCertType;
ReadCert* readcert;
// 读取证书数据
typedef struct {
char Pwd[32];
int CertNum;
char CertCode[4096]; // 证书数据
char Result[128];
int ErrorCode;
} CertDataType;
CertData* certdataInfo;
// 身份认证
typedef struct {
char Pwd[32];
//char pbClientInfo[4096];
//int dwClientInfo;
char Result[4096];
int ErrorCode;
} IdentifyType;
Identify* IdentifyInfo;
// 签名、验签 P1、P7
typedef struct {
char Pwd[32];
char pbData[4096];
char pbSignedData[4096];
char Result[4096];
int ErrorCode;
} AutographType;
Autograph* AutographInfo;
extern “C“ __declspec(dllexport) int Add(int x int y)
{
return x + y;
}
extern “C“ __declspec(dllexport) int Sub(int x int y)
{
return x - y;
}
extern “C“ __declspec(dllexport) int Multiply(int x int y)
{
return x * y;
}
extern “C“ __declspec(dllexport) int Divide(int x int y)
{
return x / y;
}
extern “C“ __declspec(dllexport) User* Create(char* name int age)
{
User* user = (User*)malloc(sizeof(User));
userInfo = new UserInfo(name age);
strcpy(user->name userInfo->GetName());
user->age = userInfo->GetAge();
//strcpy(user->name name);
//user->age = age;
return user;
}
// 读取用户证书信息
extern “C“ __declspec(dllexport) ReadCertType* ReadCertInfo(char* pwd int CertN
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 655 2018-11-13 10:50 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Autograph.h
文件 617 2018-11-19 15:24 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\CertData.h
文件 28421 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\CSharpInvokeCPP.CPPDemo - Nolog.cpp
文件 46664 2018-11-30 14:41 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\CSharpInvokeCPP.CPPDemo.cpp
文件 5707 2018-11-29 14:50 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\CSharpInvokeCPP.CPPDemo.vcxproj
文件 1880 2018-11-29 09:23 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\CSharpInvokeCPP.CPPDemo.vcxproj.filters
文件 3274 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpIn.1CC9806B.tlog\cl.command.1.tlog
文件 42942 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpIn.1CC9806B.tlog\CL.read.1.tlog
文件 2926 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpIn.1CC9806B.tlog\CL.write.1.tlog
文件 201 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpIn.1CC9806B.tlog\CSharpInvokeCPP.CPPDemo.lastbuildstate
文件 666 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpIn.1CC9806B.tlog\CSharpInvokeCPP.CPPDemo.write.1u.tlog
文件 2146 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpIn.1CC9806B.tlog\li
文件 4648 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpIn.1CC9806B.tlog\li
文件 1314 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpIn.1CC9806B.tlog\li
文件 2204 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpInvokeCPP.CPPDemo.Build.CppClean.log
文件 3408 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpInvokeCPP.CPPDemo.log
文件 213583 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpInvokeCPP.CPPDemo.obj
文件 5570560 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\CSharpInvokeCPP.CPPDemo.pch
文件 14948 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\dllmain.obj
文件 147586 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\stdafx.obj
文件 764928 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\vc120.idb
文件 888832 2018-11-30 14:48 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Debug\vc120.pdb
文件 389 2018-11-09 09:49 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\dllmain.cpp
文件 651 2018-11-15 14:01 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\Identify.h
文件 4452 2016-05-13 11:24 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\include\ba
文件 561 2016-05-13 11:24 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\include\CertDecoder.h
文件 21361 2016-05-13 11:24 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\include\crypt_err.h
文件 7645 2016-05-13 11:24 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\include\decodecert.h
文件 18165 2016-05-13 11:24 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\include\isccryptapi.h
文件 2650 2016-05-13 11:24 CSharpInvokeCPP\CSharpInvokeCPP.CPPDemo\lib\CertDecoder.lib
............此处省略66个文件信息
相关资源
- VS2015 C++和C++的通过SOAP的WebService,C
- C#调用C++的DLL
- C#+opencv拍照和图片对比
- FastReport_.NET_NetFx2-NetFx4_2019.3.5全功能破
- 数据结构(C语言版)
- Visual Studio C#+SQL Server数据库开发与
- modbus tcp/rtu客户端服务端通讯程序合集
- 精通net互操作pdf带目录
- C#_IFC_Viewer_Editor 最新Csharp源码 2017_
- 讯飞windows端语音识别一套是基于QT设
- C# Csharp 调用 C++的DLL中的回调函数
- c#调用c++的可变参数
- Visual C++开发GIS系统第2版
- 编译好的GDAL库,含GEOS和PROJ,以及C
- Visual C#.NET串口通信及测控应用典型
- C++C#互通DES加密算法
- C#图解教程.pdf
- C#开发FFMPEG(API方式) FFmpeg拉取RTMP流
- C#程序设计经典300例源代码
- 在VS2015中用C++创建DLL并用C#调用且同时
- Visual Studio C#数据库开发经典案例
- C++基于HTTP的POST上传,C#的网站接收并
- Emgucvopencv+C#例程集锦
- AutoCAD二次开发文档C++ C# 史上最全版
- 拼图游戏大型课程设计C# C++
- IFC文件解析,有C# C++ VB.Net
- VC++6.0官方版
- C#调用C++包括C++的opencv
- WinForm程序C++词法分析器
- CMM编译器(用C#写的一个c语言子集的
评论
共有 条评论