点滴
文章平均质量分 65
sky-defender
这个作者很懒,什么都没留下…
展开
-
有效避免使用递归
实例: 自动化脚本管理工具,数据存储在服务器,读到客户端后,需要建立一个数据结构,从上到下顺序为:Folder-->Object-->Control-->Operation-->parameterFolder-->Object-->Operation-->ParameterFolder-->Case-->CaseProcess-->Parameter 通过每个对象的Pa原创 2010-05-04 16:06:00 · 905 阅读 · 0 评论 -
VC使用Media Player不显示操作栏
向工程中添加Media Player控件后,绑定原创 2014-06-18 14:09:18 · 889 阅读 · 0 评论 -
cvShowImage失败
在子线程中调用cvShowImage总是失败,原来必须在主线程中调用原创 2014-07-25 11:17:38 · 993 阅读 · 0 评论 -
VC 窗口透明化
//ModifyStyleEx(0, WS_EX_LAYERED|WS_EX_TRANSPARENT); / ModifyStyleEx(0, WS_EX_LAYERED); SetLayeredWindowAttributes(0, 128, 2); //SetWindowPos(&CWnd::wndTopMost, 0, 0, 0, 0, SWP_NOSIZE|SWP_NOMOVE);原创 2014-06-27 10:25:55 · 632 阅读 · 0 评论 -
批处理bat文件得到当前绝对路径、盘符等
echo offecho 当前盘符:%~d0echo 当前盘符和路径:%~dp0echo 当前批处理全路径:%~f0echo 当前盘符和路径的短文件名格式:%~sdp0echo 当前CMD默认目录:%cd%pause 点击打开链接转载 2014-05-21 09:53:18 · 1196 阅读 · 0 评论 -
坑爹的CTime,上限是2038年1月18日,下限是1970年1月1日 12:00:00 AM GMT
今日欲完成一段代码,由于从接口中原创 2014-04-23 17:36:24 · 3474 阅读 · 1 评论 -
临界区的LockCount为何小于-1
很有用的一篇关于临界区的文章,转与此,备用 某日,在浙大国家实验室,与老方和小崔调试监控死锁问题。机柜里一溜架装服务器上出现死锁问题。用WinDbg看,发现其中导致死锁的临界区LockCount值是小于-1的数!! 多次重现该问题,发现LockCount经常是负的两三百。我等本着不十分科学严谨,但又有一点科学严谨的态度,装模作样查了下资料,显示如下: LockCount转载 2014-02-28 09:56:15 · 781 阅读 · 0 评论 -
服务程序中以管理员权限启动其它程序
项目中的实际问题:需要用一个服务程序来启动并监控另一个程序,而该程序中使用了JavaScript,并且访问百度的地图API,启动该程序后,发现地图总是无法加载, 这个问题纠结了我和外部程序的开发者三天时间了,一直没有头绪,今天写了一个最简单的百度地图的加载代码,结果弹出如下提示框 但是当我自己按照普通的方式直接运行这个外部程序的时候,却能够正常加载,因此推断问原创 2014-02-26 15:41:07 · 3378 阅读 · 1 评论 -
ATL服务程序
使用ATL编写服务程序比较简单,ATL生成向导会自动生成,编译后运行命令:注册:aaa.exe /Service卸载服务:停止后运行命令aaa.exe /UnRegServer 重写Run函数,OnStop,OnShutDown,Install,RegisterAppId等函数可以在Run个函数里面来实现自己的功能HRESULT Run(int nShowCmd = S原创 2013-11-01 11:16:36 · 2476 阅读 · 1 评论 -
警惕, _endthreadex带来的内存泄漏
unsigned int __stdcall Test(LPVOID lpParam){ CString csUSBID = L"ABC" _endthreadex( 0 ); return 0;} int main(){ HANDLE hThreadUnsafe = NULL; hThreadUnsafe = (HANDLE)_beginthreadex(NULL,原创 2013-10-31 17:10:03 · 1772 阅读 · 0 评论 -
WMI, CoInitializeSecurity
错误 0x80010119为:RPC_E_TOO_LATE CoInitializeSecurity has already been called。说明CoInitializeSecurity 已经被调用过,这不算是错误。判断该函数执行是否成功的方法应为:HRESULT hr;... hr = CoInitialzieSecurity();if (SUCCEED(转载 2013-10-29 14:38:28 · 1193 阅读 · 0 评论 -
CPU使用率计算
int CTestCPUDlg::CPUUsage(int id){ int cpuusage; PVOID pProcInfo = NULL; DWORD dwInfoSize = 0x20000; PPROCESSINFO pProcessInfo; DWORD dwWorkingSet; long ( __stdcall *NtQu原创 2013-10-21 14:27:59 · 667 阅读 · 0 评论 -
ATL可执行文件(.exe)监控USB插拔状态
ATL可执行文件检测USB插拔原创 2013-10-18 17:30:18 · 1320 阅读 · 1 评论 -
遍历并监视,重新启动进程
#include "tlhelp32.h"#include #pragma comment (lib,"Psapi.lib")void CTestComExeDlg::MonitorProcess(){ while(bRun) { //CComPtr pComExecute; HRESULT hr = ::CoCreateInstance( CLSID_ComExecut原创 2013-10-18 14:28:06 · 539 阅读 · 0 评论 -
Com组件调用JS代码并传递多个参数个JS函数
项目中经常碰到JS与Com组件交互的问题,通过查找网络资料和项目实际需要,总结如下:一、Com组件简单回调JS代码JS中定义函数 function printMsg(msg1, msg2, msg3, msg4, msg5) { alert(msg1); alert(msg2); alert(msg3); alert(msg4); alert(m原创 2013-10-15 10:39:34 · 1694 阅读 · 0 评论 -
IE使用ATL时不弹出警告框
在用IE调用编写的ATL组件是,总是会弹出“在此页上的ActiveX控件和本页上的其他部分的交互可能不安全。你想允许这种交互吗?”的对话框,很麻烦,可以通过往接口类中添加如下代码来避免这个问题。 代码见图片中红色部分原创 2013-10-11 15:56:01 · 753 阅读 · 0 评论 -
巧用Single.NAN设置控件属性
很多时候在设计页面的时候,就给控件设置了大小,比如设置了Height和Width属性,但是有时候又不需要设置属性,比如希望这个控件填充满一个容器,如果通过计算的方式来重设Height和Width,就显得很麻烦,这时候使用single.NaN就很好解决这个问题了。 public MainPage() { InitializeComponent()原创 2010-05-05 10:31:00 · 617 阅读 · 0 评论 -
获取文件的版本信息和修改时间
CFile file; BOOL bFile = file.Open(csPath, CFile::modeRead); if ( !bFile ) { return false; } CFileStatus status; file.GetStatus(status); char szCreateTime[24]; int nReturn = sprintf(szCrea原创 2014-09-12 15:34:28 · 1200 阅读 · 1 评论