- 博客(53)
- 资源 (2)
- 收藏
- 关注
转载 对新手程序员的一些唠叨
在编程这一行,我已经干了20多年了。至今为止,我也差不多写过六七门编程导论课程,教授时间总计超过1000小时。以下是我不止一次向我的学生强调过的,我多年来一系列智慧的结晶(排列顺序无特定含义)。首先,欢迎你成为一个程序员。编程真的很难。不管你是有多么地擅长编程,唯一能成为障碍的是大家自己学习和解决问题的能力。在这一行浸得越久,就越理解这个事实。这其实非常有意思——因为这样一来,我们
2014-10-25 18:30:02
618
转载 log4cpp内存泄露
使用中发现log4cpp1.1在使用自己NEW出来的category时正常,但是使用config时就出现内存泄露。排查发现config创建与NEW创建使用了不一样的接口 void Category::addAppender(Appender& appender) { threading::ScopedLock lock(_appenderSetMutex);
2013-08-27 13:09:59
1780
原创 bt porting
bt启动过程:中断初始化:FM1182串口注册表:[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial2]"Dll"="AtlasSerial.Dll""IoBase"=dword:ab020000"Tsp"="Unimodem.dll""Prefix"="COM""Order"=dword:00000001"Index"=dword:00000009"Friend
2009-10-28 13:23:00
2319
原创 wince tcpmp移植相关
tcpmp:移植:————————————————————————————————————TCPMP停止播放: Player->Set(Player,PLAYER_STOP,NULL,0); 而不是: // b = 1; //Player->Set(Player,PLAYER_STOP,&b,sizeof(b)); ———————————————————————————————
2009-10-28 13:21:00
1688
原创 掌微平台与wince问题收集
排除问题:1、有时cmmb player异常退出,不向GPSSHELL发送退出消息,导致GPSSHELL仍然认为player在运行中而不会卸载CMMB驱动。从而导致此种情况下没有看到CMMB在播放,但是也读不到卡。解决方法:不再与CMMB PLAYER作进入退出通讯,直接在GpsShell本身重新激活时检查cmmb状态,设为正确状态。确保cmmb player异常退出后也不影响下一次操作。
2009-10-28 13:14:00
3311
1
原创 wince 下STL与wince下多语言检测
在wince中使用STL的MAP必须在stdafx.cpp中添加下列语句,否则编译会报lockit错误.#include "stdafx.h"#ifdef UNDER_CE#include namespace std{ _Lockit::_Lockit() { } _Lockit::~_Lockit() { }};#endif/////////////////////////////使用I
2009-10-28 13:12:00
1150
原创 wince界面技巧
/////////////////////WINCE应用:如果一个子对话框里的控件带有TABSTOP风格,而且控件是自画的,此时在子对话框domodal显示后自画的控件会重新paint一次,造成界面闪烁。如果一个子对话框初始化带有visible风格,主对话框按按钮domodal显示子对话框,在按钮事件里下断点,卡住消息循环,然后在PNP上狂点击按钮区域,后面的按键消息将会传递到子对话框中,即时此
2009-10-28 13:09:00
1828
1
原创 ddraw相关
//////////////////////////////////////使用ddraw将表面刷成单一色,使用ddblttfx的dwFillColor来填充。 DDBLTFX ddbltfx; ddbltfx.dwSize = sizeof(ddbltfx); ddbltfx.dwFillColor = ddpf.dwBBitMask; // Pure blue 纯蓝
2009-10-28 13:02:00
3373
原创 usb camera
--------------------------------camera开发WinCE USB驱动开发 错走冤枉路1. 什么是WinCE设备驱动程序? (1)从驱动加载方式来区分 在深入探讨Windows CE所支持的外围设备驱动程序之前,先了解在WinCE平台上使用的两种设备:内建设备和可安装设备。因此,从驱动加载方式来看WinCE可分为本机设备驱动(Built-In Drive
2009-10-28 12:56:00
2871
原创 将activesync改为不显示对话框而成为声音提示
将activesync改为不显示对话框而成为声音提示ATLASII_HH.BAT添加BSP_ACTIVESYNC_HIDE=1Platform.reg添加: IF BSP_ACTIVESYNC_HIDE [HKEY_LOCAL_MACHINE/Comm] "ActiveSyncShow"=dword:0 ELSE [HKEY_LOCAL_MACHINE/Comm] "ActiveSyncSho
2009-10-28 12:36:00
1146
转载 Cloning public code: An example
For some strange reason, people are still changing public code and doing build and sysgens on their Windows CE tree (read this to learn why this is a bad thing). Changing code in the PUBLIC and PRIVA
2009-10-27 19:27:00
787
原创 wince录音实现
修改BSP里声卡驱动WaveMain.cpp里HandleWaveMessage里的消息响应:case WIDM_OPEN:g_pHWContext->BspOpenRecChanel(TRUE);case WIDM_CLOSE: g_pHWContext->BspOpenRecChanel(FALSE);在应用层使用声音输入设备里打开录音通道, void Hardwa
2009-03-23 17:41:00
9433
1
原创 EVC之CListCtrl
显示图像的CListCtrl: CBitmap bmp; m_imglist.Create(89, 58, ILC_COLOR32, 6,6); bmp.Attach((HBITMAP)::SHLoadDIBitmap(m_strImagePath +_T("dir.bmp"))); m_imglist.Add(&bmp, &bmp); ::DeleteObject(bmp.D
2009-03-23 17:25:00
1200
转载 API 层实现语音录制
其实要实现声音的录制,可以用多种的方式(例如 mci ),我这里介绍的是在 API 的层面来实现,你可以对其中进行更多的控制。比方说,要音频裸数据存到你指定的内存中去。 录音的回调方式: ValueMeaningCALLBACK_EVENTThe dwCallback parameter is an event
2009-03-12 11:49:00
870
原创 文本编码的自动检测
void CDetectCodeDlg::OnButton1() { // TODO: Add your control notification handler code here ::CoInitializeEx(NULL,COINIT_MULTITHREADED); // init COM IMultiLanguage2* pIMultiLanguage2 = NU
2008-10-07 09:57:00
1506
原创 WINCE bootloader创建
bootloader创建原文地址:http://www.cedn.cn/?uid-13615-action-viewspace-itemid-1606摘要: 本文主要为演示Boot Loader的整个开发过程,并不涉及具体硬件细节及高级设计技巧。本文系翻译整理自PB HELP,如有谬误,请不吝指正。 硬件及软件假定 为了论述方便,在此对硬件、软件做了以下假
2008-02-27 16:16:00
4254
原创 wince 中使用HttpSendRequest函数POST数据时应该注意的一点
测试用例代码 CString szHeaders; szHeaders ="EmployeeID: "+UserID+"/r/n"; szHeaders+="EmployeePassword: "+Password+""; // HTTPRequest Response;// memset(&Response, NULL, sizeof(HTTPRequest));// if (!MCHttp
2007-10-26 17:41:00
12222
3
原创 Windows编程下的一些知识
1、读取文件时如果要计算字符在文件中的实际偏移位,应使用二进制读取模式,否则在文本模式下“/r/n"将会被作为一个字符来计算。0X0D字符将会被截掉。要在写入文件时不写入0X0D字符,也必须使用二进制模式写入,否则"/n"字符写入后会变成"/r/n",c++的标准输出endl在文本模式下写入的也是"/r/n"。2、在低级键盘钩子中使用GetKeyboardData将会失败,不能取得其值,Asy
2007-08-12 20:47:00
861
原创 wince下的SIP输入法总结
开发工具:VS2005 、 PPC SDK. 、CHS IMAGE、 加上同步软件开发:PC上的安装包:使用ShellExecuteEx调用CEAppManager,将CAB文件作为参数传给它,操作类型为“OPEN”使用VS2005的CAB工程打包,将CESetup.DLL作为CAB包安装的DLL文件。CESETUP.dll应INCLUDshellapi.h和CESetup.h,
2007-08-12 20:27:00
3276
3
原创 自定义map的排序
typedef pair MYPAIR;class pysort{public: pysort(){} ~pysort(){} bool operator() (const MYPAIR &p1,const MYPAIR &p2) { if(p1.second == p2.second) return p1.first > p2.first; else return p1.s
2007-06-20 19:02:00
2292
转载 个人点滴总结
一、高效率的链表反序 A、取当前结点的下一结点,保存B、保存下一结点的值C、将下一结点的NEXT设为本结点即表内数据节点的下一结点值的NEXT值改为本节点二、高效率的获取链表的中间结点使用两个指针,一个节点步长为1,一个节点步长为2,当步长为2的结点到达尾部时,步长为1的结点即为中间结点三、高质量的JPEG缩略图,引用地址http://topic.youkuaiyun.com/
2007-06-20 18:47:00
1319
原创 输入法卸载的问题解决
准备离职了,在公司做了两年的VC,其中有大半年都是在输入法里面做。也算涉及到了输入法的方方面面,外挂式的,IME式的,还有wince上的sip输入法,也算是八窍通了七窍了。在这里透露一点秘密,秘密一但说穿了就什么都不值了。做输入法的应该都碰到过这个难题。安装IME输入法是有API可以调用的 ,但是卸载的时候却没有API调用,只有自已去到注册表里面去查找要删除的输入法的HKL,然后到prel
2007-06-19 14:50:00
3112
5
原创 自已出的一份考题
为了应付老板,给新人出的一份考题,比较全面但是都不深,注重理论联系实际 1. 已知下列程序,说明输出结果,并分析其原因.#include "stdafx.h"char * fun(){ char *p = "hello"; retur
2007-06-19 09:05:00
864
转载 VC调用存储过程的通用方法(SQLServer篇)
VC调用存储过程的通用方法(SQLServer篇) 这里讨论的是ADO调用存储过程,按MSDN的例子,一般都是下面的调用方法(节选自MSDN):HRESULT hr = S_OK; // Define ADO object pointers. // Initialize pointers on define. // These are in the ADODB::
2007-06-16 10:50:00
877
转载 C++的一些试题
http://blog.youkuaiyun.com/wplxb/archive/2007/06/16/1654116.aspx 源文章地址 [转] 四道稍微高级点的 C++ 试题 ---------------------------------------------------------------------------1. 写出下面程序的输出。#include class abc;void
2007-06-16 10:19:00
852
原创 树控件的单击展开和虚列表的使用
在使用树控件时,想要实现单击展开,结果单击时的确可以展开了,但是随机而来的BUG多多。。例如单击ITEM前面的+号展开不了,而且是展开一下然后立即收回,而且已经单击展开后的ITEM再也不能展开了。由于树控件插入项时对子项个数使用了I_CHILDRENCALLBACK,类似于虚列表的方法,所以怀疑是否是虚列表的BUG,经过仔细的跟踪,终于找到结决办法。在建树时,不要对根结点作插入,只是展
2007-06-15 09:37:00
2418
转载 关于WININET的异步使用的代码和一些相关知识
全部转自 http://loskill.icode.youkuaiyun.com/post/2007/05/31/53930,如下代码所示 在WinInet中使用异步方式 loskill @ 2007-05-31 17:19 | C++WinInet的异步调用 #include #include #include HANDLE hConnectedEvent, hRequ
2007-06-13 19:09:00
1325
原创 虚拟列表的注意事项
树控件中使用虚拟列表插入时使用 TVITEM tvItem; ZeroMemory(&tvItem, sizeof(tvItem)); tvItem.mask = TVIF_TEXT | TVIF_IMAGE |TVIF_CHILDREN |TVIF_SELECTEDIMAGE | TVIF_PARAM; tvItem.pszText = lpsfi.szDisp
2007-06-12 16:17:00
1204
转载 键盘钩子中的一些常用参数转换
得到当前哪个键被按下,返回按键的name for(int i=0;i { if( GetKeyState(i) & 0x80000000 ) { TCHAR str[256]; memset(str,0,256*sizeof(TCHAR)); GetKeyNameText((MapVirtualKey(i,0) }函数结果:如果A键被按下,返回一个字符‘A’
2007-05-28 11:39:00
3375
转载 低级键盘钩子到普通DLL钩子的参数转换
LRESULT CALLBACK KeyboardHookAll(int nCode, WPARAM wParam, LPARAM lParam){ if(nCode == HC_ACTION ) { long ret=2; HWND hwnd1 = GetFocus(); if(hwnd1 == NULL) { long id=GetCurrentThreadId();
2007-05-24 10:24:00
1321
原创 MFC的窗口类虚函数PostNcDestroy使用应注意
产生BUG的代码:添加虚函数void CMainFrame::PostNcDestroy() { // TODO: Add your specialized code here and/or call the base class// if(m_bTimer) { KillTimer(1); m_bTimer = FALSE; } CFrameWnd::PostNcDestroy();
2007-05-20 16:47:00
5404
原创 MFC临时对象的所产生的BUG
现象:视图类中响应消息时调用对话框 CDlgConfig dlg(this); if(dlg.DoModal() == IDOK) {// SaveConfig(); }在对话框构造参数中调用:CCapTestView * m_pParent = GetParent(); m_FourMin = m_pParent->m_FourMin; m_EMin = m_pParent->
2007-05-20 13:05:00
1007
转载 如何在程序中关闭别的进程中的DLL文件,让其释放掉
#include #include #ifdef UNICODE#define EjectLib EjectLibW#else#define EjectLib EjectLibA#endif // !UNICODE//dwProcessId 进程id//pszLibFile 库的绝对路径BOOL WINAPI EjectLibW(DWORD dwProcessId,PCWSTR pszLi
2007-05-19 20:20:00
3082
转载 Windows Socket五种I/O模型——代码全攻略
Windows Socket五种I/O模型——代码全攻略 如果你想在Windows平台上构建服务器应用,那么I/O模型是你必须考虑的。Windows操作系统提供了选择(Select)、异步选择(WSAAsyncSelect)、事件选择(WSAEventSelect)、重叠I/O(Overlapped I/O)和完成端口(Completion Port)共五种I/O模型。每一种模型均适用于
2007-05-17 23:40:00
700
原创 自已写的一段清除Vking病毒文件感染的代码
一次不小心误中了威金病毒(即VKING)的变种,机器上的所有EXE文件都感染了,EXE文件都变成了DOS程序的图标.到网上找遍了杀毒的工具,很遗憾的是没有找到可以真正清除病毒的工具,一般都是直接把文件删除,说是感染了病毒. 由于不想重装系统,有很多东东要装,太累人,没办法,只有自已手动解决.在清除病毒驻留程序后,要小心不能再点击那些已经病毒感染变成DOS图标的文件,否则就会再次感染.找一个被病
2007-04-21 21:55:00
1827
转载 WINCE的安装包
×× 主要步骤: (1)确认条件** (2)取自身的路径,并取ini路径** (3)取CEAppMgr.exe的全路径** (4)开始安装** (5)退出 看论坛上经常有人问,如何从桌面系统下安装WinCE平台下Pocket PC应用程序。特此把以前参考VCHelp上雷神的安装制作写的一个W
2007-04-19 11:25:00
2065
原创 两条工具栏同一水平线
将两个工具栏放到同一排上 m_wndToolBar.EnableDocking(CBRS_ALIGN_TOP); m_CapDlgBar.SetBarStyle(m_CapDlgBar.GetBarStyle() | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC); m_CapDlgBar.EnableDockin
2006-06-05 03:48:00
897
原创 How to initialize child controls in a derived CDialogBar
如何将CDialogBar的消息映射转到CMainFrame中去..原文地址:http://support.microsoft.com/default.aspx?scid=kb;en-us;185672 How to initialize child controls in a derived CDialogBarSUMMARYWhen creating a simple CDialo
2006-06-05 03:45:00
1032
Twincat3软件使用.pptx
2020-03-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人