C/C++头文件翻译成C#

_害虫 2013-09-22 06:01:49
我需要把C/C++的一个头文件翻译成C#的,看起来文件不难,就是不知道方法,怎么翻译过来。请大神帮忙看下,对你们来说应该不难

下面

#pragma once

#ifdef HWNETMAPVAR_EXPORTS
#define HWNETMAPVAR_API __declspec(dllexport)
#else
#define HWNETMAPVAR_API __declspec(dllimport)
#endif

#define ERR_PARAMETER_INVALID -100 //参数错误
#define ERR_VARSIZE_INCORRECT -99 //变量大小错误
#define ERR_VARNAME_INVALID -98 //变量名错误
#define ERR_NO_NEWDATA -97 //数据是已经被读取过的老数据
#define ERR_TYPE_NOMATCH -96 //类型不一致
#define ERR_MACHINENAME_INVALID -95 //无效机器名

//变量类型定义
#define TYPE_NONE 0
#define TYPE_DOUBLE 1

//变量操作类型
#define VAR_READ 0
#define VAR_WRITE 1
//发布订阅
#define SUBSCRIBE_DO 0
#define SUBSCRIBE_CANCEL 1

typedef bool (__cdecl* __Initialize )(const char* pcsLocalSectionName);
typedef void (__cdecl* __UnInitialize )();
typedef int (__cdecl* __VarAction )(int nAction,const char* pcsSectionName,const char* pcsVarName,int nVarType,void* pData,int nCount);
...全文
253 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
相思梦 2015-03-05
  • 打赏
  • 举报
回复
public const int TYPE_NONE = 0; public const int TYPE_DOUBLE = 1; public const int VAR_READ = 0; public const int VAR_WRITE = 1; public const int SUBSCRIBE_DO = 0; public const int SUBSCRIBE_CANCEL = 1; public delegate bool __Initialize(string pscLocalSectionName); public delegate void __UnInitailze(); public delegate int __VarAction(int nAction, string pcsSectionName, string pcsVarName, int nVarType, IntPtr pData, int nCount); // 这些代码应是属于VC语言开发,如果是VC+我一定不会这样写。 __cdcel "C" 导入在DllImport中自己定义代码签名(在C#中应看作Attribute) const char* = LPCSTR;
_害虫 2013-09-25
  • 打赏
  • 举报
回复
....... m没人啊
threenewbee 2013-09-23
  • 打赏
  • 举报
回复
无非就是 const int xxx = xxx 之类的东西。 不过翻译这些没用。最关键的函数声明这里面没有。
_害虫 2013-09-23
  • 打赏
  • 举报
回复
引用 2 楼 caozhy 的回复:
你不就是需要几个dll导出函数的声明原型么?你的头文件里面连什么函数名都没有。
那这个头文件里面给的是什么啊,红黄定义怎么翻译过来啊。帮我全部翻译一哈看看嘛
_害虫 2013-09-23
  • 打赏
  • 举报
回复
引用 4 楼 caozhy 的回复:
无非就是 const int xxx = xxx 之类的东西。 不过翻译这些没用。最关键的函数声明这里面没有。
const 声明做什么用啊,都是常量了。那么多个错误状态,都定义成了常量了。起什么作用啊。我觉得应该是一个错误状态变量,如ERR_PARAMETER_INVALID,然后赋不同的值来表示不同的错误状态才对吧。这样的状态常量我这里又不需要拿来运算用
threenewbee 2013-09-22
  • 打赏
  • 举报
回复
你不就是需要几个dll导出函数的声明原型么?你的头文件里面连什么函数名都没有。
_害虫 2013-09-22
  • 打赏
  • 举报
回复
谁有这方面的资料介绍一下给我也可以啊,谢谢啊

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧