让应用程序只启动一次

admin | C++ | 2013-08-23
在编写应用程序,有时候会有 让应用程序只启动一次的 要求。 一. 命名的内核对象 利用 内核中的命名对象 名称不能重复这一特性,来实现 应用程序的只启动一次的请求。 以Mutex为例,可以利用CreateMutex函数: C++ HANDLE CreateMutex(   LPSECURITY_ATTRIBUTESlpMutexAttributes, // 指向安全属性的指针   BOOLbIniti... [阅读全文]
ė2,461 浏览数 6没有评论 0

C++通过WMI修改IP,网关,DNS不重启(支持WIN7,VISTA)

admin | C++, 开发问题 | 2013-08-23
以前也做过修改IP的方法,感觉都不是最完美的,我觉得最完美的方法就是WMI了,所有在上次封装的WMI类中再封装了一下,可以简单的修改IP,GATEWAY ,DNS。 主要在上一篇文章中的网卡类中添加了四个成员函数 HRESULT SetIPAddress(CComBSTR* pArraybstrIp,CComBSTR* pArraybstrMask,const int& arraryCount,LONG* plReturn = NULL) HRESULT EnableDCPH(... [阅读全文]
ė7,639 浏览数 62条评论 0

中国电信的DNS劫持解决办法

admin | 开发问题 | 2013-08-23
http://www.9aixuexi.com/view-188672-1.html http://baike.baidu.com/view/3163602.htm DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能反应或访问的是假网址。   电信的DNS劫持一般是指电信在对其所属... [阅读全文]
ė7,690 浏览数 61条评论 0

VC运行库版本不同导致链接.LIB静态库时发生重复定义问题的一个案例分析和总结

admin | 开发问题 | 2013-08-23
Background MSDN中对于在不同的配置下Link的LIB作了说明: C Runtime Library: 开关 对应的库 版本 /MD MSVCRT.LIB 多线程DLL的Release版本 /MDd MSVCRTD.LIB 多线程DLL的Debug版本 /MT LIBCMT.LIB 多线程静态链接的Release版本 /MTd LIBCMTD.LIB 多线程静态链接的Debug版本 /clr MSVCMRT.LIB 托管... [阅读全文]
ė3,105 浏览数 6没有评论 0

Duilib编译成静态库

admin | C++, ui | 2013-08-23
这套库做界面还是非常不错的,虽然官方团队开始了Lomox的研发,不再支持这套库了,但是它依然有它的价值。 感谢指正。 有很多人不知道如何编译成静态库,其实很简单的。 首先在vs中设置duilib项目。如图:配置类型改为静态库。 第二步修改UIlib.h头文件上面的宏。如图: 第三步在这个头文件下面添加内容: #pragma comment(lib,”oledlg.libR... [阅读全文]
ė5,830 浏览数 6没有评论 0

窗口居中显示

admin | 开发问题 | 2013-08-23
C++ // 窗口居中: void CMyDlg::ToCenter(void) { CRect rc; GetWindowRect(&rc); //得到窗口大小; int cx=::GetSystemMetrics(SM_CXSCREEN);//得到显示器横向分辩率; int cy=::GetSystemMetrics(SM_CYSCREEN);//得到显示器纵向分辩率; POINT pt; pt.x=(cx-rc.Width (... [阅读全文]
ė2,211 浏览数 6没有评论 0

WebBrowser Control的一个简单C++封装

admin | win32 | 2013-08-22
想在自己的窗口中放上一个WebBrowser Contorl,但又不想用MFC;可惜网上除了MFC/ATL以外,使用WebBrowser的资料少得可怜。 在CodeGuru上找到Jeff Glatt 的一篇文章Display a Web Page in a Plain C Win32 Application,写成于2002年,作者的确够厚道,不但给了两份注释完整的代码(一个是exe的源文件,一个是Dll的源文件),还把如何用C一步一步实现虚... [阅读全文]
ė3,958 浏览数 6没有评论 0

屏蔽掉”服务器正在运行中”要选择”切换到…”或”重试”的对话框

admin | C++ | 2013-08-22
对话框的OnInitDialog中 C++ AfxOleGetMessageFilter()->EnableBusyDialog(FALSE); AfxOleGetMessageFilter()->SetBusyReply(SERVERCALL_RETRYLATER); AfxOleGetMessageFilter()->EnableNotRespondingDialog(TRUE); AfxOleGetMessageFilter()->SetMessagePendingDelay(-1); 1234 ... [阅读全文]
ė2,604 浏览数 6没有评论 0

STL跨DLL使用

admin | 开发问题 | 2013-08-22
STL跨平台调用会出现很多异常,你可以试试. STL使用模板生成,当我们使用模板的时候,每一个EXE,和DLL都在编译器产生了自己的代码,导致模板所使用的静态成员不同步,所以出现数据传递的各种问题,下面是详细解释。 原因分析: 一句话—–如果任何STL类使用了静态变量(无论是直接还是间接使用),那么就不要再写出跨执行单元访问它的代码。... [阅读全文]
ė5,462 浏览数 6没有评论 0

跨dll使用template/STL需要注意的问题

admin | 开发问题 | 2013-08-22
dll: extern “C” { __declspec(dllexport) void PrintVector(const vector<int> v) { copy(v.begin(), v.end(), ostream_iterator<int>(cout, ” “)); } } exe: typedef void (* FUNC)(const vector<int>); int main() { HMODULE hModule = LoadLibrary(“VectorDll.dll”); if (hModule) { FUNC f... [阅读全文]
ė3,267 浏览数 6没有评论 0

Ɣ回顶部

无觅相关文章插件,快速提升流量