miscellaneous
文章平均质量分 59
embededvc
25年软件工程经验,在通讯,安全,计算机图形图像等领域设计过多个可靠的商业化系统软件和产品。对技术执着,喜欢追求未知领域,兴趣广泛。目前专注于工业自动化领域,研究ethercat,canopen等现场总线协议。
展开
-
计算几何与计算机图形学方面的一些资源及源代码
http://blog.csdn.net/hunnish/archive/2007/09/25/1799782.aspx转载 2008-07-30 17:52:00 · 566 阅读 · 0 评论 -
cygwin和mingw的区别
Unix下编译通过的C代码,在win32下编译是不能通过的 ,当然Unix 和win32的API都是符合标准C,也就是说,大多数函数调用在unix和win32下是相同的.但是,unix有自己一些独特的API(如fork,spawn,signals,select,sockets等)转载 2011-09-28 10:59:05 · 57900 阅读 · 6 评论 -
STM32教程系列之FLASH
一、实现的功能 1.实现对STM32Fxxx的片内FLASH的擦除和烧写,并读出后进行检验。 2.用串口打印出检验FLASH内容是否正确的变量值。 二、实验操作及现象 1.双击FLASH.eww打开工程文件,然后进行编译。 2.用Flash Loader将程序下载到ARM内,或者利用JLINK等仿真器进行仿真。 3.在程序运行前,用串口线将开发板的串口1和PC机的串口1连接转载 2011-11-29 22:20:19 · 3562 阅读 · 1 评论 -
vc6sp6官方下载地址
解决vc6 link 卡死和装上visual assitX不能打开和添加文件的办法就是打上官方的原版VC6sp6补丁。下载地址如下:英文版地址:http://download.microsoft.com/download/1/9/f/19fe4660-5792-4683-99e0-8d48c22eed74/Vs6sp6.exe简体中文版地址: http://download.mic转载 2011-12-21 18:49:47 · 12198 阅读 · 1 评论 -
DLL中创建的非模式对话框不能正常显示原因的解决
近日,开发一个项目,需要在资源管理器中双击某个文件类型,会显示对这个文件进行处理的对话框,对话框需要显示成非模式,这样可以不影响在资源管理器中可以进行其它操作,在HKEY_CLASSES_ROOT中的shell\open\command中用rundll32.exe设置好对应需要调用的动态库函数后,发现在双击文件时,非模式对话框一闪而过,经过对rundll32.exe原理的了解,得知"Rundll3原创 2012-01-07 16:36:37 · 3925 阅读 · 0 评论 -
Rundll32.exe原理
Rundll32这个运行DLL的实用工具(Rundll32.exe)是包含在Windows中的,它能让你去调用从一个32位DLL中导出的函数。但是那些被调用的函数必须遵循以下语法规则:void CALLBACK EntryPoint( HWND hwnd, // 父窗口的句柄 HINSTANCE hinst, // DLL的实例句柄 LPTSTR lpCm转载 2012-01-07 16:03:58 · 1889 阅读 · 0 评论 -
Rundll32.exe参数传递问题解决方法
#include extern "C" __declspec(dllexport) void F1(int num) { CString str; str.Format("%d",num); AfxMessageBox(str); } 本人曾经碰到一个问题,就是按照网上搜索到的说明,Rundll32的用法为:rundll32 D转载 2012-01-07 16:06:50 · 4646 阅读 · 0 评论 -
模仿Rundll32.exe
/* * FileName: my_Rundll32.cpp * Creator: 冷却 * Date: 2009年10月7日 * Comment: 模仿Windows里的一个名为Rundll32.exe的小工具 */ #include #pragma comment(linker, "/subsystem:windows") typedef void (*Ent转载 2012-01-07 16:09:44 · 776 阅读 · 0 评论 -
rundll32.exe在注册表中的应用
HKEY_CLASSES_ROOT\ 文件扩展类型\shell\open\command ----rundll32.exe "动态库(全路径)",Hello %1; Hello为动态库中的输出函数,%1是在资源管理器中双击该类型文件时获取的文件路径。 在cmd中测试:rundll32.exe "动态库(全路径)",Hello c:\test.txt;原创 2012-01-07 16:15:00 · 1092 阅读 · 0 评论 -
NSIS压缩
nsExec::Exec '"$INSTDIR\7za.exe" e$INSTDIR\OS_19174.7z -o$INSTDIR\os_19174'转载 2012-01-02 17:52:24 · 774 阅读 · 0 评论 -
NSIS 文件关联方法
Section ".txt" NoteDetailPrint "关联 txt 文件..."SectionIn 1WriteRegStr HKCR ".txt" "" "Note.file"WriteRegStr HKCR "Note.file" "" "文本文件 (.txt)"WriteRegStr HKCR "Note.file\DefaultIcon" "" "$INSTD转载 2011-12-31 16:38:06 · 2929 阅读 · 1 评论 -
VS2010 的版本
VS2010 的版本 版本说明VS2010 的版本较之前版本有所不同,取消了标准版、团队版命名方式等,而采用跟 Window 7 一致的:产品功能Professional (专业版)Premium (高级版)Ultimate (旗舰版)测试和诊断≈≈√测试工具≈≈√集成开发环境√转载 2012-09-24 09:56:18 · 895 阅读 · 0 评论 -
vc6.0在win7下的安装
这2天因为有个项目需要用到VC,所以折腾一下VC环境。主要是系统Windows 7,去年折腾的时候也发现了在windows下VC6.0不能够使用打开文件和添加新文件到项目菜单项,一使用就会导致IDE程序崩溃。当时也没有深究,而且有VC6和office2007以上版本冲突的问题。所以当时遇到要添加文件或者要操作office测试的时候都是直接弄到虚拟机里折腾的。而这2天在弄vc开发环境的时候,无意中在转载 2012-12-20 10:03:46 · 3865 阅读 · 1 评论 -
How to Load Dialog From a Resource DLL?
Firstly you need a message handler, essentialy the same as your main message handler, usually WndProc Collapse |Copy CodeBOOL CALLBACK DlgProc(HWND hDlg, UINT nMessage, WPARAM wParam, LPARAM lPa转载 2013-09-16 15:58:01 · 703 阅读 · 0 评论 -
Checkout SVN repository using TortoiseHg
/* Well done… */I didn’t know Clone dialog of TortoiseHg 1.0 can be used to checkout Subversion repository without any hack. Did you know?Anyway, this is a blog entry, not a tweet of Twitter, so I转载 2013-11-19 17:38:25 · 1272 阅读 · 0 评论 -
Use TortoiseHg (Mercurial) with SVN repository
It is trivial to use Mercurial client (TortoiseHg) to access Subversion repositories.Once you have the latest TortoiseHg, the process works easily.First you need to grab the hgsubversion extensi转载 2013-11-19 17:39:42 · 1247 阅读 · 0 评论 -
正被停用的激活上下文不是最近激活的
项目程序运行的时候,突然出现这个错误,调用堆栈中的函数,没有一个是自己写的,非常困惑。 在网上搜索了一下,先找到一个提示,可以在CApp::InitInstance()中禁用ActivationContext: afxAmbientActCtx= FALSE; 这种做法能“解决”问题,但进一步查证后发现这实际上是隐藏问题。 Junfeng Zhang在自己的博客中给了比较转载 2013-11-19 11:18:44 · 929 阅读 · 0 评论 -
如何使用VC6编译sqlite3源码生成动态链接库(版本:sqlite-source-3_6_23_1)
http://blog.csdn.net/littletigerat/article/details/5502491转载 2013-11-20 01:19:31 · 891 阅读 · 0 评论 -
动态添加的ActiveX控件如何响应事件
http://blog.csdn.net/xiaoqiqixiao/article/details/574542今天在csdn上看到一朋友问如何响应动态添加的控件的事件,搜索资料,发现对于一般的应用来说,使用ON_EVENT_RANGE就足以满足需要了,不过,还是希望能够更灵活的实现动态的响应,所以又经过对MFC源码一番探查,发现还是可以的,而且应该也不是很复杂的,下面分别来说说这两种方法转载 2013-11-13 21:51:46 · 2382 阅读 · 0 评论 -
ON_EVENT_RANGE的使用方法
var kba = new KBAlertz { "Launch Date" = "October 30th, 2013" }All KB/RSS Links Hot Kb! New Kb! Article ID: 183080 - View products that this article applies to.This article was pre转载 2013-11-13 21:43:17 · 2930 阅读 · 0 评论 -
MFC DLL——Regular DLL and Extension DLL
http://blog.csdn.net/delphiwcdj/article/details/5142937MFC DLL ——扩展的和正规的MFC 的 AppWizard 可以让我们创建 MFC 库支持的两种 DLL :扩展的 DLL 和正规的 DLL 。这两种类型的区别是什么呢?说明: 当然, Developer Studio 也让我们创建纯的、与 MFC 库无关的转载 2013-12-11 23:18:28 · 588 阅读 · 0 评论 -
mfc dll封装对话框资源
http://www.360doc.com/content/13/0412/10/8285430_277730211.shtml转载 2013-12-11 23:41:43 · 1049 阅读 · 0 评论 -
MFC Loads Wrong Resource in Extension DLL
This article was previously published under Q150121Expand all | Collapse allSYMPTOMSThe wrong resource is loaded when CBitmap::LoadBitmap, CMenu::LoadMenu, CString::LoadString or any oth转载 2013-12-12 00:25:09 · 935 阅读 · 0 评论 -
创建显示对话框的DL
现在最常看见的关于DLL的问题就是如何在DLL中使用对话框,这是一个很普遍的关于如何在DLL中使用资源的问题。这里我们从Win32 DLL和MFC DLL两个方面来分析并解决这个问题。一.Win32 DLL 在Win32 DLL中使用对话框很简单,你只需要在你的DLL中添加对话框资源,而且可以在对话框上面设置你所需要的控件。然后使用DialogBox或者 CreateDialog转载 2013-12-12 00:34:43 · 815 阅读 · 0 评论 -
在DLL中产生对话框的方法一(Win32 DLL)
在DLL中产生对话框的方法一(Win32 DLL) 什么是Dll? Stands for "Dynamic Link Library." A DLL (.dll) file contains a library of functions and other information that can be accessed by a Windows转载 2013-12-11 18:25:24 · 660 阅读 · 0 评论 -
exe调用dll中的对话框防资源冲突解决之道
在编写MFC应用程序时,有时我们希望将对话框封装在dll动态库中。但当exe调用dll中对话框时:程序首先检测exe中的资源如果存在对应的对话框ID,那么dll中的对话框将采用exe中的资源进行创建生成对话框,这样就违背了我们的意愿。 1)下面情况可以正确调用dll工程中对话框:在exe工程资源中对话框ID为#define IDD_EXE_DIALOG转载 2013-12-11 17:41:41 · 1046 阅读 · 0 评论 -
Dialogs in DLL
It is nice to be able to make a DLL project that includes its own resources (such as a dialog resource) and then be able to call it from another project. Seems simple but I wnet nuts untill I found ou转载 2013-12-11 18:27:48 · 817 阅读 · 0 评论 -
C++编码中减少内存缺陷的方法和工具
C++编码中减少内存缺陷的方法和工具C++语言是桌面系统,尤其是系统软件、大型应用软件的主流开发语言。C++语言以其灵活性著称,同时也更复杂。利用C++编写健壮的代码,更具有挑战性。C++允许动态内存管理, 同时也容易导致更多和内存相关的问题。一般而言, 除了系统设计上的缺陷,基于C++的软件的缺陷和错误大部分都和内存缺陷(主要包括内存访问错误和内存泄漏两类)相关。所以,消除代码中的内存相关缺转载 2013-12-17 08:32:55 · 611 阅读 · 0 评论 -
vc2005本机编译和运行程序都ok,但是将编译好的程序拿到其它机器上确无法运行
最近在某所调试代码。 不禁感叹微软的东东真是越做越烂了,也终于明白了时隔12年大家仍然死守VC6的原因。。 用VC2005编译的程序,编译时没有任何错误,但是运行时就是提示“应用程序正常初始化失败”!! 查找了各方面资料,做了各种尝试,网上说什么的都有:有让安装vc2005 sp1补丁的;有让安装vcredist_x86.exe的; 有让把CRT库的dll直接拷贝到程序目录的; 有让清转载 2013-12-23 18:01:52 · 793 阅读 · 0 评论 -
vc2005资源编辑无效的解决方法
近日对某一项目的prjname.rc文件手动进行了更改,保存后,发现在资源编辑器中对窗口所做的任何修改,prjname.rc文件都没被修改,还是原来的资源布局,摸索了半天,找到了一个解决方法:首先关闭解决方案,在项目目录中给prjname.rc文件改个名字,比如改成prjname1.rc,然后用记事本打开prjname.vcproj文件,找到如下语句: RelativePath=原创 2013-12-24 12:21:44 · 806 阅读 · 0 评论 -
调用COM组件服务器正在运行中解决方法
在出现该问题的操作之前加入下面代码即可:if (!AfxOleInit()) return false;AfxOleGetMessageFilter()->EnableBusyDialog(FALSE);AfxOleGetMessageFilter()->SetBusyReply(SERVERCALL_RETRYLATER);AfxOleGetMessageFilt转载 2014-01-09 16:29:59 · 2579 阅读 · 1 评论 -
DCOM揭秘之三
理解简单的DCOM服务器 以上我们主要讲解了如何通过一个客户应用使用COM。对于客户来说,COM的编程技巧是相当简单的。客户端的应用向COM子系统请求一个特定的组件,服务器端将其传送过来。 实际上,对于后台的组件管理工作,还需要写很多的代码。真正的对象实现需要使用复杂的系统组件和标准的应用模块。就算是使用MFC,也是很复杂的。大多数的专业编程者都不会花时间来研究这个过程。自从转载 2014-01-09 17:46:40 · 863 阅读 · 1 评论 -
DCOM 揭秘之四
我们已经讨论了DCOM的基本要点,了解了如何创建一个简单的DCOM服务器和一个相关的客户端。你也可以看到这个基本的过程是非常简单的---ATL向导处理了服务器端的大部分细节,要激活服务器,你只需要在客户端写10行左右的代码就可以了。 接下来我们将讨论两个相关的主题。首先是创建你自己的COM客户和服务器,结合第一部分我们所学到的,让你了解要在自己的代码中集成一个DCOM服务器,确实需要做哪转载 2014-01-09 17:49:35 · 1013 阅读 · 0 评论 -
DCOM揭秘之五
理解ATL产生的代码 我们服务器端DLL的源代码是由ATL产生的。对于许多人来说,可以完全不用了解ATL创建的代码。不过,对于一些喜欢寻根究底的人来说,这是不可以接受的。这里就介绍一下由ATL产生的代码。 服务端的DLL代码由三种不同类型的文件组成 首先,是传统的C++源文件和头文件。在开始时,所有这些代码是由ATL向导产生的 Beep方法是通过使用“A转载 2014-01-09 17:52:37 · 1054 阅读 · 0 评论 -
DCOM揭秘之一
传说中的COM,很难明,咬牙切齿……转载天极的一篇文章,说得稍微易懂点,但依然还是稀里糊涂,不懂…… COM的基本要素 首先要弄懂COM是怎样工作的。为什么这个工作是首要的呢?因为COM使用它自己专有的词汇。第二个原因是COM包含有不少的新概念。要掌握这些词汇和概念,最简单的其中一个方法是将COM对象和普通的C++对象作比较,并且比较它们转载 2014-01-09 17:57:14 · 1620 阅读 · 1 评论 -
Visual C++ COM/DCOM/COM+/ATL设计专辑
ActiveX技术 ActiveX技术综述 本文结合目前Internet(WEB)技术发展动向,简略介绍了Microsoft提出的ActiveX技术的内容,阐述了ActiveX技术与WEB站点建设和桌面程序开发的关系,以及利用Visual C++和Visual Basic开发ActiveX部件的步骤和方法,并给出了在WEB网页中使用ActiveX部件的例子 利用Activ转载 2014-01-09 18:00:39 · 1545 阅读 · 0 评论 -
如何防止在长时间的 COM 操作期间显示 OLE 服务器忙对话框中
如果调用方法在 COM 服务器上从 MFC COM 客户端应用程序和方法如果需要较长的时间,处理并返回后,您将无法执行任何操作在客户端应用程序和OLE 服务器忙对话框中的 pop。这篇文章解释了如何提高 COM 调用的超时时间,并还介绍了如何避免出现此对话框。回到顶端 | 提供反馈更多信息确保 MFC 客户端应用程序会调用以初始化 COM. AfxOleInit()这是重要转载 2014-01-09 16:33:40 · 1180 阅读 · 1 评论 -
DCOM揭秘之六
Distributed COM --跨网络工作 DCOM代表的是“Distributed(分布式)”COM。在前面的部分中,我们已经讲解了运行在同一部计算机的COM客户和服务器。在这一部分,我们将讨论如何将它扩展到DCOM的领域和分布式计算。 大多数的COM编程者仅使用本地的“进程内”服务器,作为DLL运行。DLL载入到客户程序的处理空间,因此很可靠和有效。我们打算使用一个基转载 2014-01-09 17:40:52 · 910 阅读 · 0 评论 -
DCOM揭秘之二
初始化COM子系统: 这是一个简单的步骤。我们需要使用的COM方法是CoInitialize(): CoInitialize(0); 该函数接收一个参数,而该参数通常是一个0,这是它的起源OLE的一个惯例。CoInitialize函数初始化COM库。在你做其它的处理之前,你需要调用这个函数。在更为专业的应用中,我们将会使用扩展的版本--CoInitializeEx。转载 2014-01-09 17:43:42 · 785 阅读 · 0 评论 -
OPC AND DCOM CONFIGURATION ON WINDOWS 2008 AND WINDOWS 7
OPC AND DCOM CONFIGURATION ON WINDOWS 2008 AND WINDOWS 7Part 1. Installing OPC Core Components.Part 2. OPC and DCOM Configuration. Creating a user and giving access permissions.Part 3. Con转载 2014-01-22 03:11:48 · 1256 阅读 · 0 评论