- 博客(16)
- 资源 (67)
- 收藏
- 关注
原创 360杀毒引发的DLL调用异常
由于项目需要,需要调用一款较早前开发的产品的接口。该产品是在BCB环境下开发的,提供的接口是一个DLL,是属于C++语言DLL。现在要在C#中调用,开始开发还算顺利,可是后面突然就异常了,而且异常的莫名其妙,说是HRESULT异常。按照以往调用C++DLL的经验,这个可能是目标平台不匹配引起的。我的开发环境是win7_64的,而DLL是以前XP下的x86平台开发的,所以想着可能是这个问题。立即
2013-12-31 16:46:35 2759
原创 VS2012基于QT5.1自定接口及插件并实现动态加载
在VS2012中安装了qt-vs-addin-1.2.1-opensource之后,可以直接新建QT5 Designer Plugin项目来构建插件。但是这里的插件都是基于接口QDesignerCustomWidgetInterface实现的,那我们是否可以自定一个插件接口去实现呢?答案是可以的。下面是实现的效果图,具体实现过程见后文。一、自定义接口FilterInterface.
2013-12-26 11:21:02 3946
原创 Qt调用C的DLL
在QT开发时,有里需要调用已经写好的DLL来实现一些功能,那要如何调用呢?我们先建一个DLL。在VS2012中建立C++ WIN32的DLL空项目DllTest,然后添加头文件和CPP文件,具体如下Calculate.h#ifdef __cplusplus #define EXPORT extern "C" __declspec (dllexport) #else
2013-12-26 09:19:36 3212
原创 Qt动态多语言的实现(VS2012开发)
Qt对于多语言提供了QTranslator的接口,只要在程序启动时进行安装,然后动态改变QTranslator的加载即可。下面是效果图(英文/简体/繁体)。选择不同的语言,界面会随着切换。这要如何实现呢?QTranslator会加载*.qm的语言档,而该文件是从*.ts转换而来的。所以我们首先要做的是制作*.ts档。步骤如下1.在项目的Resource Files的位置右击,添加新
2013-12-25 11:53:15 3156 2
原创 Qt在VS2012中引用QtWidgets时报GLES2/gl2.h无法打开错误的解决办法
在VS2012中编译QT时,要使用控件就得引用QtWidgets。如下#include 引入这个之后,VS会解出相关的文件,这时就可以正常使用相关的控件如QLabel/QLineEdit等,当然也可以通过#include 这样单一引用,不过每一类控件都需要引用一次会很烦。所以统一引用QtWidgets。代码正常编写的。但是编译时却出错了,如下图错误指向的是GLES2/gl2
2013-12-25 10:38:13 2615
原创 Qt操作xml引发内部异常(Qt5Xml.lib和Qt5Xmld.lib)
在VS2012中使用QT5.1,加载QtXml来操作xml档。可是出了一个很奇怪的问题。下面是实现代码#include "XmlTest.h"#include void XmlTest::write(){ QDomDocument document; QDomElement d=document.createElement("document"); d.setA
2013-12-24 11:22:39 3005
原创 VS2012中QT资源文件qrc加载失败(Q_INIT_RESOURCE报错)
在QT中如果需要使用资源时,会用到一个qrc文件.qrc文件本质上是一个XML文件,里面描述了相应资源的位置。一般将需要引用的资源放到与main.cpp同级的目录。我用VS2012开发QT,如果按正常的情况来建立QT,会带有一个qrc文件和对就的qrc*.cpp的文件,如下图(qrcexample.qrc和qrc_qrcexample.cpp)。其中qrc_qrcexample.cpp
2013-12-19 10:45:34 12395 6
原创 C#的COM事件在C++和JAVA中触发和响应的实现
在C++中调用C#开发COM组件时,一般的接口调用都比较容易实现,但是对于COM组件中的事件,C++中要去响应却不好实现。因为C#中事件是采用委托机制,而C++中却没有委托的机制,这样就无法实现对应。那要怎么办呢?在C++中虽然没有委托的类型来对应,不过C++却可以开发ATL组件,同时里面有用到事件的映射,那么我们是不是可以应用这种机制去实现呢?进过不断的查找资料和一番努力,总算是达成了目标,
2013-12-13 18:07:34 2843 5
原创 VS2012配置QT5环境
1.下载Qt 5.1.1 for Windows到http://qt-project.org/downloads下载Qt 5.1.1 for Windows 32-bit (VS 2012, 511 MB) (Info)和Qt 5.1.1 for Windows 64-bit (VS 2012, 525 MB) (Info),然后安装,注意安装时路径不要有空格。2.下载qt-vs-addi...
2013-12-12 15:06:46 6513
原创 在已经定义好的系统类或者自定义类中添加扩展方法
在开发时,有时会发现已定的类的方法并不能够全部满足需求,这时如果要扩展这个类,可以考虑通过继承新增一个类,那如如原来的类是密封类(sealed),那不就无法继承呢?这该怎么办呢?有人会说,这时可以再新建一个类,并将类名在原类上加一个加缀Extension。比如原类是Employee,这时可以叫做EmployeeExtension。这当然是可以的。那还有没有什么办法可以在沿用原类名的基础上去扩展
2013-12-10 14:04:10 2493
原创 VS中使用define和undef实现条件编译(csc.exe条件编译)
在C和C++中常有用到宏定义#define,在C#中也这个关键字,不过功能不同了,C#中是作为条件编译的条件。#define XXX 是定义XXX为条件编译的条件,相当于将XXX设为true。#undef XXX是取消XXX的条件编译条件,相当于将XXX设为false。#define和#undef必须在using之前进行定义,不然编译不通过。#define和#undef需要结合#if/
2013-12-09 15:01:09 3504
原创 phpStudy中起用lua脚本
phpStudy集成了多种web服务的综合配置,如经典的apache+mysql、nginx+mysql等,在使用apache+mysql时,希望能够使用lua脚本,于是利用配置选项,启用lua模块,如下图但是经过这样的配置后,再重启apache服务时,却无法正常使用lua脚本。lua测试代码如下 require "apache2"function handle(r) r.co
2013-12-09 10:48:11 1867
原创 从VSPD虚拟COM口安装包解出独立的驱动安装包(虚拟串口开发和EXE程序反解压)
最近在开发项目进行测试时,每次都要架设实体机器,很不方便,于是就想着可不可以写一个虚拟的机器,便于测试。我们项目与机器的通信方式是基于COM口的,于是要做虚拟机器,首先要解决的问题是创建虚拟的COM口。网上搜索一番,主要有VSPM和VSPD,前者是在WIN7前使用稳定,后者在WIN7中使用稳定。我的电脑是WIN7_64的,所以选用了VSPD7。于是下了个VSPD7.1的安装包,安装完成后,利用
2013-12-06 12:01:11 12865 21
原创 Combox默认项设置的问题及解决方案
在开发时,对于Combox控件,我们会对Items预置一些值,同时希望显示一个默认值。Combox中没有默认index这样的选项,于是会想着在程序加载时设置Combox的SelectedIndex为一个值,比如3.这样程序启动后就会显示SelectedIndex=3的项。但是没一个Combox都需要这么设置,不但麻烦,而且还容易搞混、漏掉或者出错,那有没有其他的办法呢?当然是有的!在C
2013-12-06 09:28:51 7934 1
原创 结构或者类中的string进行封送时长度缺失的原因及解决方案
在数据通信或者调用C/C++的DLL时,会用到结构或类的封送(C#调用C++DLL传递结构体数组的终极解决方案),但是当结构或者类中用到string类型时,封送的数据会出现缺失。下面是以类的封送转换来举例。代码如下using System;using System.Collections.Generic;using System.Linq;using System.Runtime.I
2013-12-05 09:45:17 2165
原创 枚举与Combox的SelectedIndex绑定出现怪异问题的解决方案
在Combox中有一系列的选项,其选项的SelectedIndex值对应了相应的枚举值,而这些枚举值会影响着后续的工作模式,所以就想着将Combox的SelectedIndex和枚举值进行双向绑定,代码如下using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;
2013-12-04 09:59:29 2991 1
AspNetVueElementUI.zip(含图标扩展)
2019-05-10
AspNetVueElementUI(含组件注册)
2019-05-10
AspNetVueElementUI
2019-05-06
WinForm内嵌Unity3D并实现交互
2015-11-17
WinForm嵌入Unity3D并实现交互
2015-11-17
json转换c#实体类
2015-01-14
NDK开发的简单实例(JNI及Android的C组件实现)
2014-03-24
Android之动态库生成并打包到APK中(Windows下)
2014-03-19
Ant脚本打包Android程序的demo 多渠道及第三方JAR打包
2014-03-17
Ant脚本打包Android程序的demo(含打包第三方jar)
2014-03-14
Linux下以C构建WEB服务同时响应XHR(XMLHttpRequest)请求
2014-01-28
CCI所需的libz3.dll、Microsoft.Z3.dll、Microsoft.Z3V3.dll等的DLL安装包
2014-01-23
C#的COM事件在C++和JAVA中触发和响应的实现
2013-12-13
.NET4利用MemoryMappedFile实现跨进程多个可执行程序之间的通信
2013-11-13
谷歌插件开发实例(CSDN快速登陆)
2013-10-29
VM清理工具
2013-09-14
C#开发Android应用实践(英文版)
2013-08-07
C#HTTP代理的实现之注册表实现
2013-07-29
C#开发的Telnet模拟工具(基于SOCKET通信,可以直接按SMTP/POP3/IMAP通信协议操作)
2013-07-25
HTML5摄像头播放视频和截图
2013-06-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人