C/C++/VC
文章平均质量分 69
QQ_370566617
上海航天技术研究院 工程师;
上海交通大学 工学博士
展开
-
调试技巧:解决pdb文件不能写入问题
最近做UG的二次开发,就是写一个dll被平台软件调用。 由于是dll调用,即使是采用进程注入的方式,但是不知道什么原因,经常发生后续编译*.pdb文件不能写入的问题,不得不关闭平台软件UG。可是开一次UG要半分钟(电脑一般的情况)。 终于,经高人介绍,在晚上找了个软件,强行将本地debug文件夹下的*.pdb文件删掉(一般在project的debug目录下),就可以继续编译了原创 2008-08-05 19:46:00 · 3934 阅读 · 3 评论 -
Windows下进程通信的几种方式
摘 要 随着人们对应用程序的要求越来越高,单进程应用在许多场合已不能满足人们的要求。编写多进程/多线程程序成为现代程序设计的一个重要特点,在多进程程序设计中,进程间的通信是不可避免的。Microsoft Win32 API提供了多种进程间通信的方法,全面地阐述了这些方法的特点,并加以比较和分析,希望能给读者选择通信方法提供参考。 关键词 进程 进程通信 IPC Win32转载 2010-03-16 11:53:00 · 1512 阅读 · 0 评论 -
谈谈Matlab与C/C++或C#的互调用(混合编程)
记得当初一个师姐问我知不知道如何在Matlab里调用C++的程序,还真把我问住了。因为我以前就知道C++调用Matlab的方法,这方面网上资料一大堆。没想到现在自己突发奇想又遇到另外一个问题,Matlab如何调用C#开发的程序。1、C/C++调用Matlab这方面资料太多了,随便搜一下“Matlab C++ 混合编程”。2、Matlab调用C/C++原创 2010-03-27 09:41:00 · 4280 阅读 · 0 评论 -
托管与非托管间的代码级桥梁——C++/CLI
我们知道托管与非托管程序之间的桥梁有很多,PIvoke和Mashel,COM和CLR API都算是。然而这些都是模块(assembly)间的桥梁,好处就是方便直接,缺点就是细节上处理不了。是啊,毕竟是两类语言,两类运行环境。如果要更为细腻的处理二者之间的衔接,看来还要署C++/CLI最经典了。当然,C++/CLI也有缺点,就是他两边都站,但两边都不得意他,因此它成为口碑最不好的原创 2010-04-21 13:17:00 · 2028 阅读 · 0 评论 -
给C++程序员的Python初学指南 / Guide to Python for C++ Programmers
这篇文章对于python的介绍是从C++程序员的角度来做的,虽然内容不多,至少是个指南。转载 2010-06-28 16:21:00 · 1497 阅读 · 0 评论 -
Simens NX(原UG)与OpenGL混合开发 /Program with NX and OpenGL
关于 NX3.0跟随点窗口的方法研究原创 2010-06-13 10:37:00 · 3220 阅读 · 0 评论 -
Boost.Python实现C++与Python互调用
Technorati 标签: C++,Python,Boost 【编者按】最近一直发Python的资料,是因为Python的脚本扩展性。现在.net的动态语言特性已经很强大了,似乎脚本的作用并不明显。但是对于老式的C++,如果能够结合脚本语言的动态性,引用最近流行的一句话:必可以形成犄角之势!C++调用Python可以通过API,也可以通过Boost库实现,Boost.Python就是对API的包装,方便调用而已。 这是一篇比较老的介绍Boost.Python的文章,权当入门吧。因为文中一些东西现在不对原创 2010-06-21 22:49:00 · 17264 阅读 · 0 评论 -
C++ 扩展和嵌入 Python
【编者按】最近一直发Python的资料,是因为Python的脚本扩展性。现在.net的动态语言特性已经很强大了,似乎脚本的作用并不明显。但是对于老式的C++,如果能够结合脚本语言的动态性,引用最近流行的一句话:必可以形成犄角之势!转载 2010-06-21 16:56:00 · 1322 阅读 · 0 评论 -
C#与C++抉择【z】
【篇首语】这篇文章对两种语言的评价我很认同。快速开发用C#比较好。如果考虑效率,C++内核配合C#界面也是我常用的方式。 我一直不明白C++真的比C#强大吗?望高手指点。 困惑1.:为什么飞信之前的版本用.NET做的,感觉不是很好用,最终放弃了.NET而使用C++重写了。 感觉重写之后的版本好一点。难道是他们的技术不好?还是C++真的比C#强大吗? 困惑2:为什么QQ一直使用C++开发。(虽然QQ开发的时候C++还是最主流的,C#还不是那么流行 )但是概念版QQ只是使用了WPF的技术实现了原创 2010-09-24 08:51:00 · 1698 阅读 · 0 评论 -
Visual Studio 2010 C++ 0x
美国AT&T贝尔实验室的本贾尼•斯特劳斯特卢普(Bjarne Stroustrup)博士在20世纪80年代初期发明并实现了C++。随后,在面向对象语言迅速发展的时代背景下,C++以其面向对象的语言特性同时对C语言的良好兼容,并且凭借着接近C语言的效率,C++语言在工业界使用的开发语言中占据了相当大的份额。在以后的发展中,C++不断引入新的内容,标准模板库(STL)和后来的Boost等程序库的出现,转载 2009-06-22 16:07:00 · 20869 阅读 · 57 评论 -
关于VC开发的程序在别人电脑不能运行的问题
最经有网友在qq上问我,以前在VC上开发的程序,没有装VC为什么不能运行了。我在这里做一些介绍。 VC开发的程序,运行的时候还需要一些dll动态库的支持,比如MFC42.这些动态库没有安张VC是没有的。所以要有这些dll才能运行你的程序。 如何知道你的电脑上缺少需要的dll,或者这个程序exe或者dll又依赖了那些dll呢?你可以使用DEPENDS.EXE,这个在原创 2008-12-19 12:17:00 · 2348 阅读 · 0 评论 -
标准C++的类型转换:static_cast、dynamic_cast、reinterpret_cast、和const_cast
使用标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。3.1 static_cast用法:static_cast ( expression ) 该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法:①用于类层次结构中基类和子类之间指转载 2008-08-22 20:11:00 · 842 阅读 · 0 评论 -
MFC各类调用方法
最近在网上看到一些关于在文档类,视图类,框架类,应用程序类,自定义类中获取其它四个类的方法,现总结如下: GET App 、、、、、AfxGetInstanceHandle() 、、、、、AfxGetApp() GET Frame->View->Document 、、、、、SDI AfxGetMainWnd() -> GetActiveView() -> GetDocum转载 2008-08-29 14:02:00 · 885 阅读 · 0 评论 -
在VC中调用Web Service (非托管方式)
这个是非托管方式使用Web Servie。别说我没提醒你,如果使用.net的webservice可以这样用,如果是ATL的,需要使用发布的atl的webservice。当然,我也是练习时候遇到,具体原因正在分析。一、使用Visual Studio.NET调用WebService 很多次看到网友讨论VC中调用WebService的问题,其实在Visual Studio.Net(下称VS.转载 2008-07-02 13:50:00 · 6567 阅读 · 2 评论 -
在VC中调用WebService(托管方式)
一、什么是 WebService ?WebService 其实就是一个基于网络的应用程序,它向外部程序提供一定的调用接口。外部(远程)的程序,可以经由Web对其进行调用。 二、 WebService 的特性:1.由于 WebService 经由web服务器发布,所以比DCOM而言,可以顺利穿过防火墙。这也是 WebService 的优点之一,可以说, WebService ,为分转载 2008-07-02 13:46:00 · 2277 阅读 · 0 评论 -
spy++捕捉进程消息
用spy++查看消息,通过发送消息控制程序Windows程序都是基于消息机制的,每个程序中都会有各种各样的消息,如果想通过消息来控制程序的运行,我们只用关心程序中的命令消息(WM_COMMAND)就行了,其他关于程序界面等等的消息,可以不管。要查看程序运行的消息,使用Visual Studio中自带的工具spy++。打开spy++,选择 spy|Windows,然后就会显示出当前的所有窗口转载 2009-02-04 16:56:00 · 4489 阅读 · 0 评论 -
MFC中自定义消息
u 自定义消息我们可以通过一下两种方法来自定义一个消息:1) 方法一Step 1:使用WM_TASKBARCREATED来确定一个没有被windows本身抢占的消息值,在想添加消息文件中添加代码:const UINT WM_USERDEFMSG = ::RegisterWindowMessage(_T("UserDefMsg"));转载 2009-02-09 09:37:00 · 1306 阅读 · 0 评论 -
消息Hook
基本概念钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就原创 2009-02-09 09:43:00 · 1168 阅读 · 0 评论 -
消息循环
一、传统SDK程序的消息循环 在传统的SDK程序中,消息循环是很简单的,也许你不信,那我们就看看下面这段代码吧: #include LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,转载 2009-02-09 09:41:00 · 800 阅读 · 0 评论 -
从C++中通过CLR hosting API调用.net dll
Use CLR4 Hosting API to invoke .NET assembly from native C++ The Common Language Runtime (CLR) allows a level of integration between itself and a host. This article is about a C++ code sample that demonstrates using the Hosting Interfaces of .NET Framewor原创 2011-03-01 17:11:00 · 3736 阅读 · 0 评论