WPF 调用c++的dll 此dll会调用c++的form1窗口 显示在wpf界面上用一个控件或者其他什么承载WPF 调用c++的dll 此dll会调用c++的 [问题点数:40分,结帖人z_dota]

Bbs6
本版专家分:6243
结帖率 97.8%
Bbs6
本版专家分:6243
Bbs5
本版专家分:4087
Bbs6
本版专家分:6359
C调用API 调用DLL
NULL 博文链接:https://lyp-0409.iteye.com/blog/1699979
C调用dll的事例
用C语言编写<em>dll</em>文件的事例,里面详细介绍了如何使用与如何编写<em>一个</em><em>dll</em>
调用C的Dll的问题
这是<em>dll</em>中的C语言代码rntypedef structrnrnlong readertype;rnlong cardtype;rnlong port;rnlong baud;rnhandle commdevice;rnlong timeout;rnchar *pin;rnchar *key;rnchar *hostaddr;rnlong hosttimeout;rnchar *cardsn;rnlong optype;rnchar reserved[32];rnicc_env;rnrntypedef structrnrnunsigned char *pin;rnunsigned char *idcard;rnunsigned char *name;rnunsigned char *sex;rnunsigned char *birth;rnunsigned char *workdate;rnunsigned char *retiredate;rnlong salary;rnlong annuity;rnunsigned char *areacode;rnunsigned char *companyid;rnlong personaltype;rnicc_personal;rnrn这是pb的<em>调用</em>声明rnFUNCTION INT IC_Personal (INT FlagOp, ICC_ENV iccenv, REF ICC_Personal data) Library "iccinter.DLL"rnFUNCTION INT IC_OpenSession (REF ICC_ENV iccenv) Library "iccinter.DLL"rnFUNCTION INT IC_CloseSession (REF ICC_ENV iccenv) Library "iccinter.DLL"rnrndelphi中应该如何声明,<em>调用</em>?
C语言调用DLL
使用c语言<em>调用</em><em>dll</em> 博文地址http://blog.csdn.net/dengnanyi/article/details/8665379
c#调用C的DLL
c#<em>调用</em>C的DLL
c#调用c的dll
小弟目前遇到<em>一个</em>问题,本人的程序是c#开发的,需要<em>调用</em>别人使用c开发的<em>dll</em>,而这<em>dll</em>里面存在一些汇编代码,在我的程序<em>调用</em>到存在汇编操作的<em>dll</em>函数时,程序报错,“内存不能读取或写入,可能是内存以损坏”。rn请各位高手指点一下,如何解决。
C编写dll调用
C编写<em>dll</em>及<em>调用</em>C编写<em>dll</em>及<em>调用</em>C编写<em>dll</em>及<em>调用</em>
c# 调用 c dll
我在c#中<em>调用</em> c 写的<em>dll</em>动态链接库,弄了好久,总是报“尝试读入或写入受保护的内存”这样的错误,估计是参数类型对应出错了。大家帮忙看下,下面这个动态库中的c语言函数转换成c#的函数,参数该是怎么样的呢?谢谢rnlong WINAPI OpenComPort(long Port, unsigned char *ComAdr, unsigned char * Baud,long *FrmHandle);
delphi调用c dll
函数格式 RET_TYPE WINAPI paralist_getnode(PARALIST_HANDLE list, int chanNo,PARA_TYPES paraType,rn int *valueLen, char *value)rn功能 从参数列表获取到<em>一个</em>参数。rn参数rnList:参数列表句柄rnchanNo:参数对应的通道号,如果跟通道无关,可以填入任何值;rnparaType:参数类型,请参考 PARA_TYPES 的说明;rnvalueLen:参数值长度指针,获取成功后返回参数值的长度;rnvalue:参数值指针,获取成功后返回参数的值。rn返回值 参见 RET_TYPE 说明。rntypedef enum tagErrorCodernrn rnDM_ERR_OK, rnDM_ERR_PARA, rnDM_ERR_NOAUTH, rnDM_ERR_AUTHFAIL, rnDM_ERR_SOCKET, rnDM_ERR_MEM, rnDM_ERR_TIMEOUT, rnDM_ERR_ARG, rnDM_ERR_MATCH, rnDM_ERR_MAXrnRET_TYPE;rn帮忙写一些注释rnrn
在C环境下调用DLL
请问大家,如何在纯C下<em>调用</em>DLL文件,rn#include rn#pragma comment(lib, "XXX.lib")rn是不是只能用在VC中??
调用C DLL的问题
各位DX好,小弟在用VB<em>调用</em>C写的DLL时,出现问题.rnDLL中的函数是:int WINAPI Open_COMPORT(unsigned char baud1[],int ComNo,int Data)rn我在<em>调用</em>时,这个unsigned char baud1[]该怎么样传值进去呢?
安卓调用C的DLL
安卓<em>调用</em>C的DLL,其中包括DLL转so,安卓<em>调用</em>so文件等。
C调用dll小结
NULL 博文链接:https://qifan.iteye.com/blog/1545999
C语言生成调用DLL
一、生成DLL文件 生成DLL文件需要用到两个文件,<em>一个</em>头文件,<em>dll</em>.h,和<em>一个</em>源文件,<em>dll</em>.c头文件<em>dll</em>.h内容:   #ifndef _DLL_DEMO_H_ #define _DLL_DEMO_H_ #ifdef DLLDEMO_EXPORTS #define DLL_DEMO _declspec( <em>dll</em>export ) #else #d
调用C的dll问题
我有个C的<em>dll</em>,现使用delphi来<em>调用</em>它,编译通过,运行时出现异常,请高手指点?rnC的<em>dll</em>中有如下函数:rnint SendSingle(const int nNeedReply,rn const int nMsgLevel,rn const char *sServiceID,rn const int nMsgFormat,rn const char *sFeeType, rn const char *sFeeCode,rn const char *sValidTime,rn const char *sAtTime,rn const char *sChargeTermID,rn const char *sDestTermID,rn const char *sReplyPath,rn const int nMsgLen,rn const char *sMsgContent,rn char *sMsgID, rn int *nErrorCode);rnrn在delphi中声明如下:rnfunction SendSingle(const nNeedReply:integer;rn const nMsgLevel:integer;rn const sServiceID:pchar;rn const nMsgFormat:integer;rn const sFeeType:pchar;rn const sFeeCode:pchar;rn const sValidTime:pchar;rn const sAtTime:pchar;rn const sChargeTermID:pchar;rn const sDestTermID:pchar;rn const sReplyPath:pchar;rn const nMsgLen:integer;rn const sMsgContent:pchar;rn sMsgID:string; rn nErrorCode:pointer):integer;stdcall;external 'AA.<em>dll</em>';rn然后定义变量: rn //定义数据类型rn nNeedReply:integer;rn nMsgLevel :integer;rn sServiceID:string;rn nMsgFormat:integer;rn sFeeType :string;rn sFeeCode :string;rn sValidTime:string;rn sAtTime :string;rn sChargeTermID:string;rn sDestTermID:string;rn sReplyPath :string;rn nMsgLen:integer;rn sMsgContent:string;rn sMsgID:string;rn nErrorCode:integer; rnrn对各个值赋值处理;rn
WPF开发之dll文件创建与调用
这两天在WPF开发的学习中接触到Dll文件的创建与<em>调用</em>,觉得挺有用,于是整理了一下,希望和大家交流也希望大家提出宝贵建议。 首先创建<em>dll</em>项目,打开vs,选择文件-&amp;gt;新建-&amp;gt;项目,在windows桌面选项找到<em>dll</em>项目选择创建 新建test.h和test.cpp test.h用于编写函数方法的声明,test.cpp用于编写函数方法实现 test.h: #pragma once #if...
WPF 调用 dll 求指导
“MachineDll” 在WINFOM 里面可以直接引用,所以<em>调用</em>“ MachineDll.StatusCaptureErrorEventHandler” 这个事件和machine.Close()这个方法,代码如下rnrnusing MachineDll;rnrnnamespace Testrnrn public partial class Form1 : Formrn rn private StatusCapture machine;rn rn private void OnClosing(CancelEventArgs e)rn rn machine.Close();rn base.OnClosing(e);rn rn private void button4_Click(object sender, EventArgs e)rn rn if (machine == null)rn rn machine = new StatusCapture();rn machine.OnEventError += new MachineDll.StatusCaptureErrorEventHandler(machine_OnEventError);rn machine.OnEventStatus += new MachineDll.StatusCaptureEventHandler(machine_OnEventStatus);rn machine.Start((ECOM)Enum.Parse(typeof(ECOM), comboBox1.SelectedItem.ToString()), 10);rn rn rnrnrn使用<em>wpf</em>项目不能直接引用“MachineDll” ,所以使用了’[DllImport("Machine.<em>dll</em>")]‘ rnrn machine.Close()这个方法 可以 声明下面内容 以便于<em>调用</em>rn [DllImport("Machine.<em>dll</em>")]rn public extern void Close();rnrn那 这个 “ MachineDll.StatusCaptureErrorEventHandler” 应该咋么声明?rnrn
用vb调用c的dll
我要用vb<em>调用</em>某个<em>dll</em>中的下列函数,该怎么办?rn extern "C" void __declspec(<em>dll</em>import) __stdcall FanSelect(rn void *pSeriesNames,//系列名称 YLDStr * (typedef structchar Data[255]; YLDStr;)rn const int pSeriesNameCount,//系列名称个数,-1时表示全部选择rn void *pSubSeriesNames,//系列名称 YLDStr * (typedef structchar Data[255]; YLDStr;)rn const int pSubSeriesNameCount,//子系列名称个数,-1时表示全部选择rn const double &pFlow, //风量rn const int &pFlowUnitType, //风量单位类型 0-m^3/h 1-m^3/s 2-l/s 3-cfmrn const double &pPres, //风压rn const int &pPresUnitType, //风压单位类型 0-Pa 1-mmH2O 2-kgf/cm^2 3-inH2Orn const int &pPresType, //风压类型 0-全压 1-静压rn const int &pOutFanType,//出风方式 0-管道出风 1-自由出风rn const double &pAirDensity,//空气密度rn const double &pMotorSafeCoff,//电机容量安全系数(%)rn const bool &pUserSetMotorSafeCoff,//用户设定了电机容量安全系数rn double &rFlow_STDUnit,//标准单位下的风量rn fun_AddResult pAddResult//函数指针,用于回传数据rn );rnrn
会C#调用C dll的进
C语言函数声明为:rnbool bSendMsg(HANDLE hComm,char *szMsg,char *szPhNbr,char *szSCA,int iSMSFormat,char *szNextMsg,char *szErrInfo);rnrn入口参数:hComm 串口句柄,szMsg 待发的短信内容,szSCA 短信中心号码,iSMSFormat 短信编码格式rn出口参数:szNextMsg 超长部分的待发内容, sErrInfo 出错信息rnrn其中szSCA是结构体rnstruct STRUCommInfornrn int iBaudRate;rn char szSCA[30];rn;rn我的c#声明为rnrn [DllImport("SMSCom.<em>dll</em>", EntryPoint = "bSendMsg")]rn public static extern bool bSendMsg(IntPtr hComm,string szMsg,string szPhNbr,string szSCA,int iSMSFormat, StringBuilder szNextMsg, StringBuilder szErrInfo);rn rnrnrn结构体为:rn[StructLayout(LayoutKind.Sequential)]rn public struct STRUCommInforn rn public int iBaudRate;rn [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 30)] rn public string szSCA;rn rnrn<em>调用</em>方法:rnrn其中stru.szSCA通过上个函数<em>调用</em>,已返回 “8613800555500”rnCallDll.bSendMsg(ptr, "在干嘛呢", "15215553319", stru.szSCA, 0, sd, sc);rn然后报:尝试读取或写入受保护的内存错误,期待高手看下我的代码参数是否传错了rnrn
c# 调用c dll 出错,显示找不到c dll
新学c#,建了个工程,由于要操作硬件,自己用vs2005做了个c 的<em>dll</em>,工程编译没有问题,但下到WINCE5.0的设备上去之后,程序无法运行,弹了个无法找到<em>dll</em>的错误框。我c 的<em>dll</em>是按照标准流程建立的。请各位帮我看看问题出在哪里?谢谢rnrnc 代码:rn[img=https://img-bbs.csdn.net/upload/201402/24/1393214823_621984.png][/img]rnrnc# 代码:rn[img=https://img-bbs.csdn.net/upload/201402/24/1393214867_65796.png][/img]rnc# 引用代码:rn[img=https://img-bbs.csdn.net/upload/201402/24/1393214924_153910.png][/img]rn
C# 调用C/C++ DLL
[code=c]typedef struct IdcInfo rn char name[30+1]; //rn char sex[1+1]; //'1'男 '2'女 rn char nation[2+1]; //民族 '01'-'57'rn char birth[8+1]; //YYYYMMDDrn char addr[70+1];rn char pid[18+1];rn char issue[30+1]; //发卡机关rn char valid_start[8+1]; //rn char valid_end[8+1]; //rn TIdcInfo;rnrn//读身份证,读取成功后,会在当前目录生成xp.bmp照片文件 // icc<em>dll</em>.<em>dll</em>rnSTDAPI ReadIdcInfo(int ReaderHandle, TIdcInfo *pIdcInfo);rnrn[/code]rnrnrn求C#中该如何<em>调用</em>,谢谢!
C#调用C语言的DLL
C#<em>调用</em>C语言实现的DLL时,出现CoTaskMemFree(IntPtr ptr ) 的错误,查了一下,感觉是参数没有对应上,哪位大侠帮我看看是哪里的问题好吗,跪谢~rnrnC语言被<em>调用</em>代码:rntest.<em>dll</em>rn__declspec(<em>dll</em>export) char* fun(DWORD mode,const char* password);rnchar* fun( DWORD mode, const char* password);rnrnC#<em>调用</em>侧代码:rn static String code;rn [DllImport("test.<em>dll</em>", CharSet = CharSet.Ansi)]rn public static extern String fun(int mode, String password);rnrn static void Main(string[] args)rn rn String s = "123";rn code = obl_crypto_hash(5, s);rn
java怎么调用C的dll
我做了1个java<em>调用</em>c++的<em>dll</em> rn想做<em>一个</em>java<em>调用</em>C的<em>dll</em>就不知道怎么做了rnrn在xx.c里 写rnJNIEXPORT jint JNICALL Java_test<em>dll</em>_getValuern(JNIEnv *, jobject)rn这些报错 之前在XX.CPP里写可以 c语言不了解 谁有rnjava调C的<em>dll</em>的例子呀,<em>或者</em>给我讲讲也行 谢谢
c调用dll中的函数
留作自己日后翻查 [code=&quot;java&quot;] #include #include typedef void (*MYPROC)(char*); int main() { HINSTANCE LibHandle; MYPROC ProcAdd; char <em>dll</em>buf[] = &quot;C:\\DEV...
C#调用C编写dll
[DllImport("P230_DLL_VC.DLL")]rnpublic static unsafe extern int RpcClose();rnrn<em>调用</em> int a=RpcClose();rn出错:无法在 DLL P230_DLL_VC.DLL 中找到名为 RpcClose 的入口点。rn请教一下如何解决。rn谢谢!
C/C++ 编译调用 DLL
本文会先阐述用 C/C++ 编译 DLL 的基本问题,然后详解各种导出导入方式,给出一些例子,再说明一些需要了解的常识。以此文,致予苦于寻找却无所获的学习者,供大家交流学习。欢迎转载,但请保留本提要及文章出处,尊重原创者劳动成果。
VS下C的dll打包与调用
一、创建<em>dll</em>动态链接(本文环境:VS2013) 1、新建<em>一个</em>空项目,WIN32控制台,一直到下面一步: 注意:导出符号最好选上,对后面比较方便。 2、创建好之后出现下面的工程: 我们关注的是<em>dll</em>.h和<em>dll</em>.cpp这两个文件,<em>dll</em>.h文件如下: <em>dll</em>.cpp文件如下: 在相应的函数和类里面修改就可以。 3、编译一下,就可以出现对应的dl
怎么调用C写的DLL?
DL.crnrntypedef struct char week;char yearrn B;rnrnint a(int a1,B* b);rnrnVFPrnrnL<em>dll</em>="DL.<em>dll</em>" &&<em>dll</em>和程序不存在目录问题rnDECLARE Integer a IN &L<em>dll</em> Integer,Integerrn说没找到B的入口rn不知道怎么<em>调用</em>.rn
c#调用c语言Dll
程序实现了C语言生成动态链接库,以及C#的<em>调用</em>方法
JNA调用C编写的DLL
我们团队目前开发的产品是用java语言编写的,大家都知道,java编写的代码随便都可以被反编译,导致别人可能会看到你“裸奔”的样子。所以,为了避免这种安全隐患,团队最终商定,将部分核心代码改用c语言编写,封装为<em>dll</em>,再由java<em>调用</em>。 于是乎,我们就开始jna初探。今天通过各种百度,终于做了个例子出来,在此做个记录,以备后路之需。 1、构造<em>一个</em><em>dll</em> 由于本机的vs2015没有安装c++模...
调用C写的DLL问题
'typedef struct _state_nowrn' unsigned char ifTel:1;rn' unsigned char ifRing:1;rn' unsigned char ifError:1;rn' unsigned char ifDtmf:1;rn' unsigned char dtmf:4;rn' unsigned char hd;rn' STATE_NOW;rnrn'功能:查询状态rn'入口:1 port, 端口号(0-7 对应 USB口的64-71),state 状态rn'出口:1 成功;0 失败。rn'int WINAPI GetKHTState(int port, STATE_NOW * state)rnrn别人用VB写的rnDeclare Sub GetKHTState Lib "mtu<em>dll</em>.DLL" (ByVal port As Long, ByRef state As Integer)rnrnrn我用DELPHI来<em>调用</em>的代码如下rn typern STATE_NOW=packed recordrn ifTel:char;rn ifRing:char;rn ifError:char;rn ifDtmf:char;rn dtmf:array[1..4] of char;rn hd:pchar;rn end;rn PSTATE_NOW=^STATE_NOW;rnrnfunction GetKHTState(port:integer; state:PSTATE_NOW):integer;stdcall; external 'mtu<em>dll</em>.DLL' name 'GetKHTState';rnrnVarrnst:pSTATE_NOW;rnbeginrnif GetKHTState(64,st)=1 then //这里执行时为真,说明返回成功rn edit1.Text :=st.ifTel //可是没有得到任何数据,是空的rnrn我错在那里,应该<em>什么</em>办?rn很急,帮帮忙呀?rn
java如何调用c 的dll
我有<em>一个</em>人家写好的.h文件,我要自己生成java可以识别的<em>dll</em>,可是网上的例子我试验了,都没有成功,可否指教
c# 调用c动态dll
[b][color=#FF0000]请问下面<em>调用</em>正确吗?rn为<em>什么</em>我的程序<em>调用</em>后还是出现SSL初始化错误rnSSLLib.<em>dll</em>rn放在了bin下[/color][/b]rnrn[code=C#]rnint OPENSSL_init(intmode)rnrnrn[/code]rnrnrnrnrn[code=C#][DllImport("SSLLib.<em>dll</em>",CallingConvention=CallingConvention.Cdecl,EntryPoint="OPENSSL_init")]]rnpublic static extern int OPENSSL_init(int mode);rnrnrnrn函数<em>调用</em>rnpublic void test()rnrn //为<em>什么</em>这里初始化会出错?rn int i= OPENSSL_init(0);rnrnrn[/code]rnrnrnrn[color=#FF0000]1楼 bdmh回复:是<em>什么</em><em>调用</em>约定啊,stdcall还是cdecl,c默认是cdeclrnrnrnrn 答: 是 Cdecl.. 急死我了。 应该本地可以<em>调用</em>阿 为<em>什么</em>会这样 。 1点多就要测试了。rnrnrn2楼 evilant回复:SSL初始化错误,是不是找不到SSLib.<em>dll</em>?rnrnrn 答:rn SSLLib.<em>dll</em>放在程序bin->DeBug下了!rnrn3楼 guliang21 回复 :放到system32下试试rnrn 答:放了 。还是一样rnrn4楼 lizhibin11 大侠:回复:CallingConvention=CallingConvention.Cdecl把这个去掉rn 答: 去掉还是一样rnrn5楼 isjoe回复:是web项目吗?rn 答: winfrom[/color]rnrnrnrn
【C#】调用C语言生成的dll
C#<em>调用</em>C语言生成的<em>dll</em> using System; using System.Runtime.InteropServices; //与导入<em>dll</em>有关的命名空间 using System.Windows.Forms; class Example { //[导入<em>dll</em>,<em>dll</em>与exe在同<em>一个</em>文件夹下]导入<em>dll</em>中getCpuID1函数 [DllImport("CPUID32DLL.<em>dll</em>...
C sharp怎么调用DLL?
有个叫大漠插件的DLL文件,我想<em>调用</em>它怎没弄?rnrn求大虾帮帮忙 3QrnrnDllImport("MY.LLL"] 这个方法貌似没用rn据DLL作者说 DLL使用VC6写的
C语言如何调用DLL?
C里怎么<em>调用</em>C的DLL啊?
c调用动态链接库(*.dll)文件
*.<em>dll</em>文件不在exe文件的同一目录,怎么<em>调用</em>。提示:rnrn---------------------------rnTestDiaoYongDLL.exe - 系统错误rn---------------------------rn无法启动此程序,因为计算机中丢失 DLL.<em>dll</em>。尝试重新安装该程序以解决此问题。 rn---------------------------rn确定 rn---------------------------rnrnrnrnrnrnrn
求救: c#调用 c的dll
c#<em>调用</em> c的<em>dll</em>rn有两个传出参数 char* password,char* corp_idrnrn<em>dll</em>内部定义rnunsigned long user_num;rn.....rnsprintf(corp_id,"%06ld",user_num);rnrnunsigned char cur_word,chk_word,pwd_word[17] = ""rn.....rnsprintf(password,"%s",pwd_word);rnrnrn我在c#中用StringBuilder,password得不到值,corp_id得出的值是正确的,是<em>什么</em>原因啊???rn
VB调用C写的DLL
有<em>一个</em>C写的DLL rnint RunSeries(unsigned char* lpszScrColorImg, int height,int width,int mode, LEUCCYTO1 LeucChar[]); rnLEUCCYTO1 是<em>一个</em>结构体。rn typedef struct rn double NucRough;rn double cytcolor;rn double diffr;rn double CytoRoundness;rn double CellSize;rn double NucRoundness;rn double NucRoundnessD;rn double NucRoundnessM;rn double NucSizeRate;rn double discrimNuc;rn double discrimCyto;rn int x;rn int y;rn int NucCount;rn int NucTotalPixel;rn int MaxNuc;rn int NucDiff;rn int CellTotalPixel;rn int size;rn int meanr;rn int maxr;rn int minr;rn int seedl;rn int cellclass;rn unsigned char rgb[3];rn BOOL aciDoubt;rn int bw_1;rn LEUCCYTO1;rn在C中<em>调用</em>语句rnrnunsigned char buff[1024 * 768 * 3];rncell_num = RunSeries((unsigned char*)buff, height,width,0,LeucChar1); rnrn现在用VB <em>调用</em>rnPublic Type LEUCCYTO1rn NucRough As Double rn cytcolor As Double rn diffr As Double rn CytoRoundness As Double rn CellSize As Double rn NucRoundness As Double rn NucRoundnessD As Double rn NucRoundnessM As Double rn NucSizeRate As Double rn discrimNuc As Double rn discrimCyto As Doublern x As Long rn y As Long rn NucCount As Long rn NucTotalPixel As Long rn MaxNuc As Long rn NucDiff As Long rn CellTotalPixel As Long rn size As Long rn meanr As Long rn maxr As Long rn minr As Long rn seedl As Long rn cellclass As Long rn rgb(1 To 3) As Byte rn aciDoubt As Long rn bw_1 As Long rnEnd TypernrnDeclare Function RunSeries Lib "C:\sbtx\HemanalyDll4.<em>dll</em>" (ByRef lpszScrColorImg As String, ByRef height As Long, ByRef width As Long, ByRef mode As Long, ByRef LeucChar() As LEUCCYTO1) As Longrnrn<em>调用</em>语句rnDim KK As Stringrn KK = String(2359297, Chr(0))rnI = RunSeries(KK, 768, 1024, 0, LeucChar1)rnrn一直运行不了,报“VB 遇到问题需要关闭”,请高手帮忙看下是那里出了问题。
C#调用c的dll问题
函数原型:int WINAPI rf_anticoll(unsigned short icdev, rn unsigned char bcnt,rn unsigned char *pSnr,rn unsigned char *pLen)rn参数:icdev:[IN] 通讯设备标识符rn bcnt: [IN] 取值4rn pSnr: [OUT]返回的卡序列号rn pLen: [OUT]返回序列号的长度rn返回:成功返回0rn我在c#中应如何定义入口参数?rnpublic static extern int rf_anticoll(int dev, byte bcnt, out string pSnr, out int len)rn这个不行。报错:尝试读取或写入受保护的内存。这通常指示<em>其他</em>内存已损坏。
vb调用C写的DLL
C写的函数:rn int DataReceive( char *pVarPara, char *pRetInfo )rn rn ...rn rn pVarPara为入口参数,pRetInfo为出口参数。rnrn VB中<em>调用</em>:rn Dim i As Integerrn Dim strVar As Stringrn Dim strRetInfo As String * 10rnrn i = DataReceive(strVar, strRetInfo)rnrn strVar入口参数能传进去值,并且执行rn 问题: 1、i 接收不到返回值;rn 2、出口参数strRetInfo接收不到值。rnrn 请高手执教,有兴趣我们共同探讨,谢谢!!rnrnrnrnrnrnrnrnrnrnrn
asp.net调用c/c++的dll
在网上找了好久都是一些只言片语 没有参考价值 希望哪位大大给我指个方向?!万分感激[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/monkey/15.gif][/img]
JNA调用C实现的DLL
(此处以C写的DLL为例子) 第一部分:简单了解DLL里的函数1、创建<em>一个</em>动态链接库项目testJNA 2、在头文件里声明函数 IRIS_SDK_API int STDCALL ik_release_enroll_device (IK_ENROLL_DEVICE_HANDLE dev_handle);3、在源码里实现函数 int STDCALL ik_re...
C#调用C代码DLL
首先我们新建<em>一个</em>C语言的WIN32项目 选择项目类型为DLL库 在新建的项目中我们添加Ccode.h,Ccode.cpp两个文件 Code.h extern &quot;C&quot; __declspec(<em>dll</em>export) int Minus(int a, int b); extern &quot;C&quot; __declspec(<em>dll</em>export) int Add(int a, int b); Cc...
c#初学,调用c的dll
c的头文件rnextern "C" void _export _stdcall get_one_yc(int fac, int yc_dot, float *yc_value);rnrnc#<em>调用</em>我这样写rn public class DllTestrn rn [DllImport("BaseDll.<em>dll</em>")]rn private extern static void get_one_yc(int fac, int yc_dot, float *yc_value);rn rnrn提示“指针和和固定大小缓冲区只能在不安全的上下文中使用”,我这样写对吗,要怎么改,之后要如何用这个函数,帮忙写写吧,多谢了
C#调用C Dll的问题
在C#中<em>调用</em>C写的Dll,rn函数原型为 void GetPic(char * szCode, BYTE * pPicture)rnrn用C#建个<em>窗口</em>应用程序rnrn [DllImport("PictureGenerator.<em>dll</em>", EntryPoint = "GetPic")]rn static extern void GetPic(string szCode, byte[] pPicture);rnrnrn private void Form1_Load(object sender, EventArgs e)rn rn rn Byte[] pPic = new Byte[9000];rn GetPic("test", pPic);rn rnrn这样是可以<em>调用</em>的。rnrn但是,同样的代码,放在WEB中就不行了。在运行到GetPic时就会出错。说是 rnNullReferenceException: 未将对象引用设置到对象的实例rn这是为<em>什么</em>啊,<em>窗口</em>程序的与WEB有<em>什么</em>不同么。
C#调用C DLL异常
最近在开发过程中需要使用C#<em>调用</em>C写的DLL,但在<em>调用</em>过程中遇到这个问题:“尝试读取或写入受保护的内存 这通常指示其它内存已损坏”,出现错误的地方可能为C#定义的结构体与C定义的结构体转换错误。详细如下:rn1.引用外部C的DLL:rn[code=csharp][DllImport(@"C:\Users\Administrator\Documents\visual studio 2010\Projects\CSQLDLL\Debug\CSQLDLL.<em>dll</em>", EntryPoint = "CDBWriteFunc")]rn public static extern int CDBWriteFunc(ref DB_INFO_CTL_TBL dbinfo, [In, Out] USR_INFO_TBL []usrinfo,int count);[/code]rn2.C#中结构体定义:rn[code=csharp][StructLayout(LayoutKind.Sequential)]rn public struct DB_INFO_CTL_TBLrn rn [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 20)]rn public string byDBName; // DB Namern [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 20)]rn public string byUsrName; // DB User Namern [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 20)]rn public string byIPAddr; // IPrn [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 20)]rn public string byDBPwd; // Passwordrn ;rn [StructLayout(LayoutKind.Sequential)]rn public struct USR_INFO_TBLrn rn [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 20)]rn public string byName;rn [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 20)]rn public string byAge; rn ;[/code]rn3.C中的函数声明:rn[code=c]__declspec(<em>dll</em>export) INT __stdcall CDBWriteFunc( DB_INFO_CTL_TBL *dbinfo, USR_INFO_TBL *usrinfotbl,INT count );[/code]rn4.C中的结构体定义:rn[code=c]typedef structrnrn BYTE byDBName[20]; // DB Namern BYTE byUsrName[20]; // DB User Namern BYTE byIPAddr[20]; // IPrn BYTE byDBPwd[20]; // PasswordrnDB_INFO_CTL_TBL;rnrntypedef structrnrn BYTE byName[20]; rn BYTE byAge[20];rnUSR_INFO_TBL;[/code]rnrn抛出“尝试读取或写入受保护的内存 这通常指示其它内存已损坏”的异常,请问大师们这为毛???
C#调用C写的dll
我的步骤是这样的,大家帮忙看看。rn1。把c写的<em>dll</em>拷贝到c#工程的bin的debug下面。rn2。c的头文件如下rnextern "C" rnAMI_UTIL_API long AMI_UTIL_API_CALL getPropertyName(const char* propertyName1, char* propertyName2, int propertyNameLength);rnrn所以,在c#的代码里面,如下rn[DllImport("AmiUtil.<em>dll</em>", EntryPoint = "getPropertyName", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.StdCall)]rnprivate static extern long getPropertyName(string propertyName1, string propertyName2, int propertyNameLength);rn3。<em>调用</em>的时候,我写成如下rnstring str1, str2;rnnPropertyNameLength = 0;rngetPropertyName(str1, str2, nPropertyNameLength))rnrnrn正确的步骤和写法应该是怎么样的?
C语言Dll编写与调用
C语言Dll编写与<em>调用</em>,内含源代码与操作步骤
C#调用C DLL文件
这是我<em>调用</em>的 [DllImport("Zhuzhan.<em>dll</em>", EntryPoint = "IdentityAuthentication", CharSet = CharSet.Ansi)]rn static extern int IdentityAuthentication(string Div,byte[] RandAndEndata);rn他原始提供的是IdentityAuthentication(char* Div,char* RandAndEndata);rn 不过经常报错rnrn运行时遇到了错误。此错误的地址为 0x62ed646b,在线程 0xf9c 上。错误代码为 0xc0000005。此错误可能是 CLR 中的 bug,<em>或者</em>是用户代码的不安全部分或不可验证部分中的 bug。此 bug 的常见来源包括用户对 COM-interop 或 PInvoke 的封送处理错误,这些错误可能会损坏堆栈。rnrn
delphi 调用c写的dll
请教:我现在要<em>调用</em>c写的<em>dll</em>,我准备建立<em>一个</em>公共单元文件,在该文件中动态<em>调用</em><em>dll</em>中的东西。现在的问题是:我<em>调用</em>的是<em>dll</em>中<em>一个</em>类下面的函数。请问我在公共单元文件下该怎么<em>调用</em>。然后其它窗体的事件可以用这函数
c#怎么调用C的DLL?
有以下疑惑:rn1、c++的<em>dll</em>和c的<em>dll</em>有<em>什么</em>区别?rn2、c#<em>调用</em>c的<em>dll</em>的时候有<em>什么</em>不同?rnrn有人说,c#<em>调用</em>c的<em>dll</em>还要中间加一层c++的封装?rnrn另,我用vc6写以下的代码,有<em>什么</em>错?rnrn[code=C/C++]rn//<em>dll</em>.cpprn#include "Dll.h " rnint add(int a,int b) rn rnreturn a+b; rn rnint subtract(int a,int b) rn rnreturn a-b; rn rnrn[/code]rn[code=C/C++]rn//<em>dll</em>.hrnextern "C " _declspec(<em>dll</em>import) int add(int a,int b); rnextern "C " _declspec(<em>dll</em>import) int subtract(int a,int b); rn[/code]
Oracle调用C dll问题
在System 用户下可以创建并<em>调用</em>rn在个人用户下,不能<em>调用</em>,个人用户已经授予DBA权限
调用 c/c++ dll的问题
C/C++ rnrnint E1K_AO_Writes( int hConnection, rnrnBYTE bytStartChannel, rnrnBYTE bytCount, rnrndouble dValue[ ]); rnrnrndephi要怎么写 rnfunction E1K_AO_Writes():integer;stdcall;external 'MXIO.<em>dll</em>';
C# 调用 C 写的DLL
'int __stdcall GetBasicInfo(HANDLE icdev,unsigned long &CardSN); rnPrivate Declare Function GetBasicInfo Lib "CMCC.<em>dll</em>" (ByVal icdev,ByRef CardSN&) As Longrn rn上面是 VB 6.0 中<em>调用</em> C DLL的代码 rn------------------------------------------------------------------------------------ rn那么 C# 遇到 &CardSN 该怎么写呢,请教,不胜感激 rn
java调用C JNI方式调用DLL
Java<em>调用</em>C的操作流程: 1.在java中声明<em>一个</em>本地方法(没有方法体) 一般本地方法写为static方法,因为只是<em>调用</em>本地方法实现逻辑,并不需要创建实例。关于本地方法的详细解释见http://blog.csdn.net/jiakw_1981/article/details/3073613。以下是本地方法的写法。 2.运用javah命令得到.h文件作为C的头文件 javah生
C 时常需要调用C DLL
C 时常需要<em>调用</em>C DLL
C语言创建DLL,并在C中调用DLL
C语言创建DLL,并在C中<em>调用</em>DLL的例子,步骤详细,入门的好教程。
c语言调用其他dll文件
rn有个DLL文件,它提供了具体的函数库,那个DLL的文件是WHXAPI.DLL,我想<em>调用</em>它提供的API函数,但却不知道如何去<em>调用</em>它?。rn我用的编译器是dev-cpp。如何在编译的时候将它加入至编译选项中。。。?
求解。。如何调用此DLL?
不用反射,要用LoadLibrary<em>调用</em>此DLL,如何创建对象并<em>调用</em>对象方法?rnrnDLL如下:rnrnnamespace Microsoft.SqlServer.Management.Smornrn public class SmoApplicationrn rn // Initializes a new instance of the Microsoft.SqlServer.Management.Smo.SmoApplicationrn // class.rn public SmoApplication();rnrn //以下的是对象方法rn public static DataTable EnumAvailableSqlServers();rn public static DataTable EnumAvailableSqlServers(string name);rn rn
C 调用C++的Dll dll DLL 类型之间转换笔记
C <em>调用</em>C++的Dll <em>dll</em> DLL 类型之间转换笔记
c调用c++编的dll,c++调用c编写的dll,extern “C”的用法
c和c++不能直接相互<em>调用</em>,主要是因为c++有重载函数的功能,为了区分重载函数,编译器会在函数名上加上一些修饰用符号,而c不这么做。为了让c与c++的程序能够相互<em>调用</em>对方的库,就有了extern “C”。注意,extern “C” 是c++的规范,所以只能出现在c++的代码里面,加在函数声明前,表示函数是用c的规范。 1.c代码<em>调用</em>c++<em>dll</em> 编译c++<em>dll</em>的要点 供c<em>调用</em>的
Demo: c/c++动态库(DLL)调用,c#等其他语言调用c/c++的DLL
c++动态库<em>调用</em>另<em>一个</em>动态库 c++动态库<em>调用</em>c动态库 c#等<em>其他</em>语言<em>调用</em>c/c++动态库
c/c++动态库(DLL)调用,c#等其他语言调用c/c++的DLL
总结点c++动态库<em>调用</em>另<em>一个</em>动态库c++动态库<em>调用</em>c动态库c#等<em>其他</em>语言<em>调用</em>c/c++动态库IDEvs2010及以上c++动态库<em>调用</em>另<em>一个</em>动态库a动态库<em>调用</em>另<em>一个</em>动态库b,主要由2种方式, 在头文件中声明__declspec(<em>dll</em>export) .def文件利用.def文件新建此DLL(模块)的导出接口,例如: EXPORTS必须为大写LIBRARY EXPORTS add @1
用VC调用C写的DLL出错!
C的DLL我已在C下测试过,没问题,<em>调用</em>的原型如下:rnSLogResult * getLogResult(char whereclause[300])rnrnSLogResult * CLogPickDlg::LoadDLLGetLog(CString filter)rnrn typedef UINT (CALLBACK* LPFNGETLOG)(char fi[300]);rnrn HINSTANCE hInstance1;rn LPFNGETLOG lpSquartRoot1;rn hInstance1 = ::LoadLibrary("getlog.exe");rn if (hInstance1 != NULL)rn rnrn lpSquartRoot1 = (LPFNGETLOG)::GetProcAddress(hInstance1,"getLogResult");rn if(!lpSquartRoot1)rn rn ::FreeLibrary(hInstance1);rn AfxMessageBox("定位动态链接库方法出错!!!");rn rn elsern rn char fil[300];rn const char *fil1=NULL;rn fil1=(LPCTSTR)filter;rn strcpy(fil,fil1);rn strcat(fil,"\0");rn this->p_logfromc=(SLogResult *)lpSquartRoot1(fil);//errrn this->getLogFromC();rn rn rn ::FreeLibrary(hInstance1);rn rn return p_logfromc;rnrnrnrn但运行时总是出错(Debug error,the value of ESP was not properly saved across a function call....)rn可我的参数信息没错呀,专家指导一下!·
请问wpf如何调用winform写的DLL
能<em>调用</em>吗rn我在网上查了rnrn需要向项目中的reference添加两个<em>dll</em>,<em>一个</em>是.NET库中的System.Windows.Forms,另外<em>一个</em>是WindowsFormsIntegration,之类的云云···rnrn但是工具箱 全部<em>显示</em> 发现WINFORM自带<em>控件</em> 和我要引入的<em>控件</em>都是白色的 rnrn这个怎么处理
C++调用WPF打包成的DLL的问题。
注意!不是WPF<em>调用</em>C++!我们有个项目一开始的时候是MFC写的。后来由于一些原因需要用WPF写<em>一个</em>模块。集成的时候,将WPF项目打包成DLL,由原来的系统去<em>调用</em>。涉及到了VC<em>调用</em>WPF的问题。我开了个测试项目试了一下,结果如下:rn这个是两个项目:rn[img=https://img-bbs.csdn.net/upload/201507/16/1437047059_922860.png][/img]rn这个是WPF唯一的主类:rn[img=https://img-bbs.csdn.net/upload/201507/16/1437047070_433067.png][/img]rn这个是C++<em>调用</em>的Main类:rn[img=https://img-bbs.csdn.net/upload/201507/16/1437047093_911402.png][/img]rn调试结果:rn[img=https://img-bbs.csdn.net/upload/201507/16/1437047178_483785.png][/img]rnrn这个问题是怎么回事,我曾经想过在WPF的那个类中用STAThread特性,但是我没有申明自定义方法,完全用不上。rnrn不要怀疑我的DLL文件位置啥的。不可能有问题。我用C++<em>调用</em>C#的DLL完全没问题。放在同<em>一个</em>地方的。
WPF调用带界面Qt Dll
参考博客: https://blog.csdn.net/shuishanga/article/details/52183159 https://blog.csdn.net/zuoyefeng1990/article/details/70885220 0. 开发环境 Qt 5.9.0 Desktop Qt MSVC2015 64bit VS2015 64bit 1. 思路 qt重写...
关于用C调用DLL的问题
如果直接声明extern "c"或 typedef 方式,编译出错。rn怎么才能除错。
用C#如何调用C 写的DLL
C 编写的seccli.<em>dll</em>函数如下:rnint SEC_CliSign(char XmlInfo[3800], strlen(XmlInfo), out unsigned char UpSign [180], out nSigLen)rnrnstrlen(XmlInfo)表示XmlInfo长度rnnSigLen 表示UpSign长度.rnrn如何申明、<em>调用</em>!!!!
VS2015写的一个DLL 与C语言调用
突然想起好久没有折腾下<em>dll</em>了,之前在win7VS2010 练习了<em>一个</em>最基本的<em>dll</em><em>调用</em>。 首先新建<em>一个</em> <em>dll</em>工程,这里我们新建的是win32下面的<em>dll</em> 而不是通用DLL 这个 貌似是win10用的,抱歉我对这个类型的研究的不深,反正我新建之后反复加载不到这个<em>dll</em> <em>dll</em>代码很简单 int num_add(int a, int b) { return (a +...
一个关于C调用DLL的问题?
各位高手:想请教哈C如何去<em>调用</em>DLL.有LIB文件和没有LIB文件的<em>调用</em>都说一下更好。小弟在线等,急求。。
Dll的调用什么会出错?
我用VC写了<em>一个</em>DLL文件(DbOpt.<em>dll</em>),其中有一函数 int Func(char * DataS,char *Tname)rn当我调 用时用rntypedef int (showme)(char*,char*);rnshowme *m=0;rnrnrn HMODULE hr;rn hr=::LoadLibrary("DbOpt.<em>dll</em>");rn int c;rn char DataS[]="e:\\b.mdb\0";rn char TableN[]="stu\0";rn m=(showme *)::GetProcAddress(hr,"ZebCreateTable");rn c=(*m)(DataS,TableN);rn FreeLibrary(hr);rn出现错误!rn错误信息:rnThe value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a deifferent calling convention.rn怎么回事?各位大侠请指点为!先谢了!rn
什么调用dll会乱码
[img=http://img.my.csdn.net/uploads/201303/27/1364354924_9291.PNG][/img]rnMFC程序<em>调用</em>Dll,为<em>什么</em>赋值会出现乱码。。。后面那些符号干嘛的
dll生成与dll调用dll
本程序实现<em>dll</em>的生成,<em>dll</em>调<em>dll</em>,以及c程序调<em>dll</em>
DLL如何调用DLL
请问各位高手 在PB中DLL如何<em>调用</em>DLL ?rn写了<em>一个</em>程序把它封装成DLL,在代码中<em>调用</em>了另外<em>一个</em>DLL,该如何声明,听说要初始化一下,如何初始化呢,请各位高手指教?
dll调用dll的问题
自己写了个顺序栈的<em>dll</em>,头文件定义int为Elemtype,就是栈内元素都是int。rn之后又写了个二叉树的<em>dll</em>,在遍历树节点的时候要<em>调用</em>栈的<em>dll</em>,我想用二叉链表的指针类型代替int型,就是遍历的时候压栈出栈都用指向二叉链表的指针。那应该怎么修改?
dll调用dll问题?
被<em>调用</em>动态库:mwrf32.<em>dll</em>rn<em>调用</em>mwrf32.<em>dll</em>的DLL:rnlibrary Unit<em>dll</em>;rnrnusesrn Unit1 in 'Unit1.pas';rnrn$R *.resrnexportsrn ReadCard;rnrnbeginrnend.rnunit Unit1;rnvarrn function rf_read(icdev:longint;adr:smallint;data:pchar):smallint;stdcall;rn far;external 'mwrf32.<em>dll</em>' name 'rf_read';rnrn function ReadCard: String; stdcall; export;rn rnimplementationrnrnfunction ReadCard: String;rnbeginrn //<em>调用</em>rf_read;rn ...rnendrnend.rn<em>调用</em>Unit<em>dll</em>的<em>dll</em>:rnunit Unit1;rnimplementationrnrn$R *.dfmrnfunction ReadCard:String;stdcall;far;external 'Unit<em>dll</em>.<em>dll</em>'name 'readcard';rnprocedure TForm1.Button1Click(Sender: TObject);rnvarrn kh: String;rnbeginrn kh:= ReadCard;rn if kh='' then ShowMessage('readcard faile')rn else ShowMessage('readcard success');rnend;rn在程序直接<em>调用</em>mwrf32.<em>dll</em>没问题,想改成程序<em>调用</em><em>dll</em><em>调用</em>mwrf32.<em>dll</em>,rn程序运行就出错,这样写不知对不对,第一次写请多多指教,谢谢rn
释放DLL 调用DLL
  HINSTANCE hDllInst; void CstopApp::CreateDll() { HANDLE f; if( (f=CreateFile( _T(&quot;./Skin.<em>dll</em>&quot;), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE...
dll 调用一个dll
我自己用JNI做了<em>一个</em>A.DLL,里面封装了在java下定义的本地方法getResult(),最后能在java里面<em>调用</em>我的A.DLL。现在我想再做<em>一个</em>B.DLL,用它<em>调用</em>A.DLL里的函数,然后用java<em>调用</em>B.DLL里的函数,请问它的原理是<em>什么</em>呢,我该怎么来实现?能给我个具体的例子吗?谢谢各位帮忙了!!!
dll调用别的dll
在DLL中怎样<em>调用</em>别人写的DLL?
DLL调用DLL的问题
最近写程序遇到了<em>一个</em>问题,我再写<em>一个</em><em>dll</em>文件,这个<em>dll</em>文件用到了opengl的opengl32.<em>dll</em>和glaux32.<em>dll</em>,但是写的程序出现了很多错误,错误出现在gl.h和glaux.h中。。。 rn错误类型是一些未定义的符号。。。 rn我是用VC++2005下用win32写的<em>dll</em>,请大家帮帮我。。。。 rnrn还有,我在<em>dll</em>文件中<em>调用</em>我自己写的<em>dll</em>文件时没有任何错误。。。rnrnrn下面是一些错误信息,其余的错误和这些类似:rn1>e:\program study\projects\<em>dll</em>s\mglmultitex\mglmultitex\gl.h(1135) : error C2144: syntax error : 'void' should be preceded by ';'rn1>e:\program study\projects\<em>dll</em>s\mglmultitex\mglmultitex\gl.h(1135) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-intrn1>e:\program study\projects\<em>dll</em>s\mglmultitex\mglmultitex\gl.h(1135) : error C2146: syntax error : missing ';' before identifier 'glAccum'rn1>e:\program study\projects\<em>dll</em>s\mglmultitex\mglmultitex\gl.h(1135) : error C2182: 'APIENTRY' : illegal use of type 'void'rn1>e:\program study\projects\<em>dll</em>s\mglmultitex\mglmultitex\gl.h(1135) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-intrnrngl.h中第1135行代码:rnWINGDIAPI void APIENTRY glAccum (GLenum op, GLfloat value);rnrnrn如果我在程序中添加#include〈windows.h〉rn就会出现如下错误(只有这<em>一个</em>错误):rn#error Building MFC application with /MD[d] (CRT <em>dll</em> version) requires MFC shared <em>dll</em> version. Please #define _AFXDLL or do not use /MD[d]rnrn双击本错误,来到如下位置(#error那一行):rn#ifdef _DLLrn#ifndef _AFXDLLrn#error Building MFC application with /MD[d] (CRT <em>dll</em> version) requires MFC shared <em>dll</em> version. Please #define _AFXDLL or do not use /MD[d]rn#endifrn#endifrnrn然后,我再程序中添加宏定义,#define _AFXDLL,就会出现如下错误:rn#error WINDOWS.H already included. MFC apps must not #include rnrnrn请高手帮我看看这是怎么回事。。。rn谢~~~
dll调用dll的问题?
有<em>一个</em>c/c++ <em>dll</em>,通讯方面的. 应不会c/c++ 所以只能用vb来封装要发送的数据。刚开始写了<em>一个</em>test的事例rnC/c++ <em>dll</em>都<em>调用</em>正常例如:rnPrivate Sub Command5_Click()rn If conntion = False Thenrn pvParam = 1rn '1.设置回调函数rn[color=#800000] Call Dev_SetCallBack(AddressOf OnConnect, AddressOf OnDisconnect, 0, AddressOf OnRecv,rn AddressOf OnError)[/color]rn '2.创建句柄rn Select Case strConfig.Modern Case MODE_UDPrn 'TsHDEV = Dev_Create(MODE_UDP, strConfig.PeerIP, c, strConfig.PeerPort,rn strConfig.LocalPort, 0)rn rn Case MODE_TCP_SERVER '创建客户端连接rn [color=#FF0000]TsHDEV = Dev_Create(MODE_TCP_CLIENT, 0, GetIPdress(strConfig.LocalIP), 0,rn strConfig.LocalPort, 0)[/color] rn Case MODE_TCP_CLIENT '创建服务器侦听rn 'TsHDEV = Dev_Create(MODE_TCP_SERVER, Dev_GetAnyIP(), Dev_GetAnyIP(),rn strConfig.PeerPort, 0, 2)rn End Selectrn ' '3.设定激活回调函数的参rn rn '4.打开通讯端口rn Call Dev_Open(TsHDEV)rn Elsern Call Dev_Close(TsHDEV)rn Form1.Caption = "连接已断开"rn Command5.Caption = "连接"rn conntion = Falsern Text1.Text = ""rn End Ifrn可是用封装成标准低利率执行到该函数地方就不能运行了如:rnPrivate Declare Function Dev_SetCallBack Lib "DevDll.<em>dll</em>" ( _rn ByVal fnConnect As Long, _rn ByVal fnDisconnect As Long, _rn ByVal fnAccept As Long, _rn ByVal fnRecv As Long, _rn ByVal fnError As Long _rn )rnPrivate Function OpenCon(ByVal num As Byte) As Longrnrn Dim peerIP As IPddressrn peerIP.b0 = 192rn peerIP.b1 = 168rn peerIP.b2 = 0rn peerIP.b3 = num 'ip设置rn '---------------------------------------------------------------------------------rn '设置回调函数rn [color=#0000FF]MsgBox "ok"/////////[/color]该行运行rn Call Dev_SetCallBack(AddressOf OnConnect, AddressOf OnDisconnect, AddressOf OnAccept, AddressOf OnRecv, AddressOf OnError)rn [color=#FF0000]MsgBox "ok"[/color] ////////该行不运行这是<em>什么</em>原因呀? rn '创建连接句柄rn TsHDEV = Dev_Create(MODE_TCP_CLIENT, 0, GetIPdress(peerIP), 0, PortNum, 0)rn MsgBox TsHDEVrn If TsHDEV <> 0 Thenrn '打开连接rn Call Dev_Open(TsHDEV)rn Elsern OpenCon = -1rn Exit Functionrn End Ifrn OpenCon = 0rnEnd Function
DLL调用DLL
我写了windows应用程序,引用了<em>一个</em>别人做的.net DLL,使用正常。rnrn然后我把这个windows程序改了改,各模块改成了类库,由核心程序<em>调用</em>,结果发现这些DLL再<em>调用</em>DLL用不了,谁能教教我。
dll如何调用DLL
想将<em>dll</em>外面再包装一层<em>dll</em>,该如何做,谢谢
dll调用dll的问题!
我自己做了个a.<em>dll</em>,在a.<em>dll</em>中我动态<em>调用</em>了b.<em>dll</em>.rn在发布的时候需要a.<em>dll</em>和b.<em>dll</em>,rn能不能就1个<em>dll</em> ?rn如果这样,那在我的a.<em>dll</em>中应该怎么做?rn
dll调用dll?
我要在vb中<em>调用</em><em>dll</em>,但提示文件找不到,文件名、路径没有问题。此<em>dll</em>文件是<em>调用</em>另<em>一个</em>ImageLoad.<em>dll</em>文件生成的。rn怎样在<em>dll</em>中<em>调用</em>ImageLoad.<em>dll</em>?rn我直接vb中<em>调用</em>ImageLoad.<em>dll</em> 是出错,好像是<em>dll</em>文件的.def有问题,不是为vb做的?rn
关于DLL调用DLL
如果有两个扩展DLL:A.DLL, and B.DLL。类定义形式如下:rn<em>一个</em>工程中:rn// A.Hrnclass AFX_EXT_CLASS CExampleA : public CObjectrn rnDECLARE_DYNCREATE(CExampleA )rn... class definition ... rn;rnrn另<em>一个</em>工程中:rn// B.Hrnclass AFX_EXT_CLASS CExampleB : public CExampleArn rnDECLARE_DYNCREATE(CExampleB )rn... class definition .. rn;rnrnrn结果出现下面的问题:rnGenerating Code...rnLinking...rnExampleB.obj : error LNK2001: unresolved external symbol "public: static struct CRuntimeClass const CExampleA::classCExampleA" (?classCExampleA@CExampleA@@2UCRuntimeClass@@B)rnDebug/B.<em>dll</em> : fatal error LNK1120: 1 unresolved externalsrnError executing link.exe.rnCreating browse info file...rnrnB.<em>dll</em> - 2 error(s), 0 warning(s)rnrn后来,我又尝试下面的方法rn// A.Hrn#ifdef A_IMPLrn #define CLASS_DECL_A __declspec(<em>dll</em>export)rn#elsern #define CLASS_DECL_A __declspec(<em>dll</em>import)rn#endifrnrnclass CLASS_DECL_A CExampleA : public CObjectrn rnDECLARE_DYNCREATE(CExampleA )rn... class definition ... rn;rnrnrnrn// B.Hrn#ifdef B_IMPLrn #define CLASS_DECL_B __declspec(<em>dll</em>export)rn#elsern #define CLASS_DECL_B __declspec(<em>dll</em>import)rn#endifrnrnclass CLASS_DECL_B CExampleB : public CExampleArnrnDECLARE_DYNCREATE(CExampleB )rn... class definition ..rn;rnrnrn出现了rnerror C2491: CExampleA::classCExampleA' : definition of <em>dll</em>import static data member not allowedrnerror C2491: 'CExampleB::classCExampleB' : definition of <em>dll</em>import static data member not allowed
VB调用C++的DLL崩溃,用C调用则完好
我用C/C++开发了<em>一个</em><em>dll</em>,有<em>一个</em>导出函数如下(用def文件导出,__stdcall方式):rn[code=c]rnParseXML(wchar_t* xmlFileName)rnrn CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);rn IXMLDOMDocumentPtr xmlDoc;rn IXMLDOMElement* XMLRoot = NULL;rn xmlDoc.CreateInstance("MSXML2.DOMDocument.6.0");rn _variant_t varXML(xmlFileName);rn VARIANT_BOOL varOut;rn xmlDoc->load(varXML,&varOut);rnrn //获取根节点 rn xmlDoc->get_documentElement(&XMLRoot); rn BSTR RootName;rn XMLRoot->get_nodeName(&RootName);rn rn XMLRoot->Release();rn xmlDoc.Release();rn CoUninitialize();rnrn[/code]rnrn我发现在用C语言<em>调用</em>这个<em>dll</em>时,一切正常,但换做用vb<em>调用</em>时,xmlDoc->get_documentElement(&XMLRoot);这一句得不到预期的结果,执行后XMLRoot依然是NULL。请问这是<em>什么</em>原因?如何解决呢?
用java调用C或C++动态链接库 java调用dll
用java<em>调用</em>C或C++动态链接库原来如此简单 java<em>调用</em><em>dll</em>
一个dll调用一个dll
<em>一个</em><em>dll</em><em>调用</em>另<em>一个</em><em>dll</em>,或<em>一个</em>lib<em>调用</em>另<em>一个</em>lib,可以这样吗,要注意些<em>什么</em>
PIC单片机指令系统下载
简介 指令时序 指令格式 寻址方式 常用伪指令 宏指令 Macro 表 相关下载链接:[url=//download.csdn.net/download/machangxuzhuang/3301051?utm_source=bbsseo]//download.csdn.net/download/machangxuzhuang/3301051?utm_source=bbsseo[/url]
xet256 eeprom例程下载
freescale单片机eeprom 编程的例程 相关下载链接:[url=//download.csdn.net/download/hsraaa/3931245?utm_source=bbsseo]//download.csdn.net/download/hsraaa/3931245?utm_source=bbsseo[/url]
新闻发布系统的设计与实现下载
你需要的就是这个,里面包含了asp新闻发布系统的,大家可亿参考下 相关下载链接:[url=//download.csdn.net/download/zyq2dwq/4974635?utm_source=bbsseo]//download.csdn.net/download/zyq2dwq/4974635?utm_source=bbsseo[/url]
相关热词 c#串口测试应用程序 c# 匹配 正则表达式 c#防止窗体重绘 c#读写txt文件 c#挖地雷源代码 c#弹框选项 c# 移除 队列 c# 密码写入配置文件 c# 获取可用内存大小 c# 嵌入excel编辑
我们是很有底线的