随笔分类 -  Windows

摘要:应用程序事件日志中:“C:\windows\system32\test.exe”的激活上下文生成失败。 找不到从属程序集 Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762"。 请使用 sxstrace.exe 进行详细诊断。出现这类问题,是由于VC2005编译出来的程序文件,采用了manifest方式来指定dll文件。对于win98、 阅读全文
posted @ 2011-11-05 11:07 Juicy Fruit 阅读(1061) 评论(0) 推荐(0)
摘要:在MFC中打开其他可执行文件常用到的方法有:WinExec、ShellExecute、CreatProcess。1.WinExecWinExec 主要运行EXE文件,用法简单,只有两个参数,前一个指定命令路径,后一个指定窗口显示方式: UINT WinExec(LPCSTR lpCmdLine, UINT uCmdShow)示例:WinExec("E:\\Program Files\\AppStore\\appstore.exe", SW_SHOW);2.ShellExecuteShellExecute比WinExec灵活一些,可以指定工作目录。不仅可以运行EXE文件,还可 阅读全文
posted @ 2011-09-26 16:18 Juicy Fruit 阅读(1353) 评论(0) 推荐(0)
摘要:HWND是Windows系统中对所有窗口的一种标识,即窗口句柄。这是一个SDK概念。 CWnd是MFC类库中所有窗口类的基类。微软在MFC中将所有窗口的通用操作都封装到了这个类中,如:ShowWindow等等,同时它也封装了窗口句柄即m_hWnd成员。 1. 由HWnd得到CWnd*: CWnd wnd; HWnd hWnd; wnd.Attach(hWnd);通常一个窗口资源已经和一个CWnd类的对象关联起来的,由于一般来说这个类是自己创建的,所以自然知道怎么得到指向这个类的指针。如果没有就创建一个CWnd对象,将这个对象与窗口资源的hWnd句柄关联起来。(如上边的语句)。如果用 s... 阅读全文
posted @ 2011-09-15 17:25 Juicy Fruit 阅读(514) 评论(0) 推荐(0)
摘要:在Windows大行其道的今天,windows界面程序受到广大用户的欢迎。对这些程序的操作不外乎两种,键盘输入控制和鼠标输入控制。有时,对于繁杂的,或重复性的输入操作,我们能否通过编制程序来代替手工输入,而用程序来模拟键盘及鼠标的输入呢?答案是肯定的。这里主要是通过两个Windows API函数来实现的。下面以 VC++为例来介绍一下如何实现这两个功能。 模拟键盘我们用Keybd_event这个api函数,模拟鼠标按键用mouse_event函数。在VC里调用api函数是既简单又方便不过的事了。 1. Keybd_event能触发一个按键事件,也就是说回产生一个WM_KEYDOWN或WM... 阅读全文
posted @ 2011-09-15 16:54 Juicy Fruit 阅读(6955) 评论(0) 推荐(0)
摘要:使用WM_COPYDATA消息通信对于少量数据可以用WM_COPYDATA方便地实现通信。由于SendMessage()是阻塞的,只有接收方响应了消息,SendMessage()才能返回,否则一直阻塞。所以,对于大量数据来说,用SendMessage()就容易造成窗口假死。1. 通过WM_COPYDATA消息实现进程间通信的方法在Win32中,WM_COPYDATA消息主要目的是允许在进程间传递只读数据。SDK文档推荐用户使用SendMessage()函数,接收方在数据复制完成前不返回,这样发送方就不可能删除和修改数据。这个函数的原型如下:SendMessage(WM_COPYDATA,wPa 阅读全文
posted @ 2011-09-13 16:42 Juicy Fruit 阅读(1446) 评论(0) 推荐(1)