- 博客(35)
- 资源 (14)
- 收藏
- 关注
原创 如何计算电池充满电的预计时间
//获取系统电池的充电速率,可以通过充电速率估算出电池充满的时间#include #include #include #include #include #pragma comment(lib,"PowrProf.lib") int _tmain(int argc, _TCHAR* argv[]){ NTSTATUS Processor_information; SYS
2015-12-31 11:29:34
4104
1
原创 micphone静音设置(vista版本以上)
设置麦克风静音#include "windows.h" #include #include "mmdeviceapi.h"#include #pragma comment(lib, "Winmm.lib")#define SAFE_RELEASE(ptr) \ { \ if (ptr) \ { \ (ptr)->Release(); \
2015-12-31 11:17:59
792
原创 设置当前进程的区域语言
//获取默认的区域语言 if (GetUserDefaultUILanguage() == MAKELANGID(LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED)) // [中文(简体)] { } //设置当前的进程区域语言 SetThreadUILanguage(MAKELANGID(LANG_ARABIC, SUBLANG_ARABIC_SAU
2015-12-31 11:09:31
2021
原创 获取当前分辨率及dip值
#include "ShellScalingAPI.h"#pragma comment(lib, "Shcore.lib") //输出当前分辨率 int width = GetSystemMetrics(SM_CXSCREEN);int height = GetSystemMetrics(SM_CYSCREEN);//输出当前dpiHDC
2015-12-21 10:13:40
2479
转载 C++ 局部静态初始化不是线程安全!
http://blogs.msdn.com/b/oldnewthing/archive/2004/03/08/85901.aspx 在块作用域中的静态变量的规则 (与之相对的是全局作用域的静态变量) 是, 程序第一次执行到他的声明的时候进行初始化.察看下面的竞争条件:int ComputeSomething(){ static int cachedResult = Co
2014-05-29 14:29:26
895
原创 向页面发送http请求获取服务器时间
asdasdBOOL BjcaFunc::GetNetTime(string &year, string &month, string &day) { // HINTERNET internetopen;// internetopen=InternetOpen(_T("getTime"), INTERNET_OPEN_TYPE_PRECONFIG, NULL,
2014-04-18 13:04:28
3107
转载 C++调用ATL事件连接点
在调用者工程中,需要增加“接收器”对象,添加一般的C++类对象,从IDispatch 派生,然后完成继承的虚函数,如创建CSink类,继承自IDispatch ,完成Simple16库中触发事件的接收器。// 头文件#pragma once#include "oaidl.h"class CSink :public IDispatch{public:CSink(v
2013-12-24 11:25:28
967
1
转载 如何解决"应用程序无法启动,因为应用程序的并行配置不正确"问题
应用程序事件日志中:“C:\windows\system32\test.exe”的激活上下文生成失败。 找不到从属程序集 Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762"。 请使用 sxstrace.exe
2013-09-17 17:00:57
1053
转载 Windows异常处理
1、Windows对于C++异常处理的扩展:为了更便捷的在Windows系统中进行异常处理,微软在C++异常处理的机制上,又增加了扩展,称为SEH(Structured Exception Handling),即结构化异常处理;语法如下:__try{……}__except (){……}Windows exception 最常见的问题 :run
2013-06-26 11:28:01
935
转载 C++运行时错误处理
闲来无事作点翻译工作,今天要介绍的是关于错误处理的.以下内容大部分不是我的原创,我只是把他们收集到一起来了而已. 错误处理在一个系统里面算是一个比较底层的东西了.拥有一个稳定的错误处理系统,是一个良好的系统的基础.从发展的角度看,错误处理大体有下面几种方式. 比较基础的,使用返回值表示错误还是正确,比如使用int作为返回值,0表示正常1表示错误,这种算是c语言里
2013-06-26 10:26:34
3270
原创 KEY_WOW64_32KEY 和 KEY_WOW64_64KEY
在打开注册表时,32位程序往往在64为系统上不能直接访问64的路径,都是自动跳到WoW6432Node下面,在打开注册表时添加“KEY_WOW64_64KEY”标志,就能直接访问64为注册表路径。LONG lReturn = RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"Software\\***", 0, KEY_ALL_ACCESS | KEY_WOW6
2013-04-19 11:06:29
9387
原创 统计字符串中某个字符出现的次数
统计字符串中某个字符出现的次数用标准库算法函数“ count_if”。1、标准库string类型const stringstr = “testString”;int count = count_if( str.begin(), str.end(), bind2nd(equal_to(), '某字符' );2、CString类型CString st
2013-04-16 17:08:07
2216
原创 ATL正则表达式实例
1、匹配数字、字符、下划线BOOL RegexMatch(CString sourceStr){ CAtlRegExp reRule; wchar_t *wt = L"^[A-Za-z0-9-_]+$"; //只能输入由数字和26个英文字母和'-''_'组成的字符串 REParseError status = reRule.Parse((const ATL::CAtl
2013-04-16 16:24:39
932
转载 GetVersion和GetVersionEx
出自:http://flyxxtt.blogbus.com/logs/42705986.htmlWindows API 中有两个函数可以得到系统版本信息:GetVersion和GetVersionEx。GetVersion这个函数曾经困扰了很多程序员,其本来设计的是在DWORD返回值中用低位的那个字表示MS-DOS的版本号,高位的那个字表示Windows版本号。对于每个字来说,高位
2013-04-15 11:54:08
831
转载 yum和apt-get的区别
一般来说著名的linux系统基本上分两大类: 1.RedHat系列:Redhat、Centos、Fedora等 2.Debian系列:Debian、Ubuntu等 RedHat 系列 1 常见的安装包格式 rpm包,安装rpm包的命令是“rpm -参数” 2 包管理工具 yum 3 支持tar包 Debian系列 1 常见的安装包
2013-04-12 11:05:41
569
原创 linux从命令行切换到X窗口模式
从命令行切换到X窗口模式在命令行输入:init 5从X窗口切换到命令行ctrl+alt+F3从X窗口再次切换到命令行模式ctrl+alt+F7开机自动进入X窗口模式,打开文件/etc/inittab找到其中的id:3:initdefault:将运行级改成5,也就是图形模式id:5:initdefault:
2013-04-12 11:04:03
2147
转载 LINUX VMWare-TOOLS的安装及使用
安装vmware-tools的安装包有两个,一个是rpm包,一个是tar包,下面分别是用了这两种方法安装:一、rpm包安装1.在启动LINUX 虚拟机之后,在WMWare 的菜单栏中点击"VM",然后点击下拉菜单中的"Install VMware TOOLS"选项。2.挂载光驱:[root@localhost ~]# mount /mnt/cdrom /mnt/[r
2013-04-12 10:56:58
820
原创 实现tab按键切换Edit控件焦点(WTL)
BOOL ChangePassWordDlg::PreTranslateMessage(MSG* pMsg){ HWND hEdit = pMsg->hwnd; if((NULL != hEdit) && (WM_KEYDOWN == pMsg->message) && (VK_TAB == pMsg->wParam)) { TCHAR szC
2013-04-08 16:09:25
1622
1
转载 虚拟机中的XP系统忘记密码解决办法
如果你安装了虚拟机,如果你装了XP系统,又如果你忘了密码或那个DB改了你的密码,你可以用如下的方法解决1.打开虚拟机,保证系统在POWER OFF状态下,然后点击“VM”--- >“settings”出现如下对话框点击右下角“Utilities”,选第一项“map”出现如下对话框此时一定要把两个复选框的勾去掉!!!(因为后面要复制文件)2.打开“
2013-04-03 10:34:52
2857
原创 求日期之间的天数差
得到给定日期和当前日期之间的相差天数。#include //传入参数格式如“20130604131744”int BjcaFunc::getCertRemainDay(wchar_t*certEndData){ int nYear,nMouth,nDay; wchar_t desData[20] = {0}; wmemcpy(desDat
2013-03-27 14:26:23
771
转载 C语言操作WINDOWS系统存储区数字证书相关函数详解及实例
C语言操作WINDOWS系统存储区数字证书相关函数详解及实例 以下代码使用C++实现遍历存储区证书及使用UI选择一个证书 --使用 CertOpenSystemStore打开证书存储区. --在循环中,使用CertEnumCertificatesInStore. 枚举所有存储区中的证书. --使用CryptUIDlgViewContext显示一个证书 . --使用C
2013-03-22 17:29:51
991
转载 如何修改CFileDialog的标题
CFileDialog f(TRUE); f.m_ofn.lpstrTitle = "我的标题"; f.DoModal();CFileDialog 使用介绍CFileDialogCFileDialog文件选择对话框的使用:首先构造一个对象并提供相应的参数,构造函数原型如下:CFileDialog::CFileDialog( BOOL
2013-03-22 10:19:02
1136
转载 VC正则表达式的使用
正则表达式是一种对字符进行模糊匹配的一个公式。在数据有效性验证,查找,替换文本中都可以使用正则表达式 。本篇文章主要描述的是使用ATL中两个模板类CAtlRegExp和CAtlREMatchContext。在使用CAtlRegExp类之前需要添加#include 这个头文件。RegExp是Regular Expression的缩写以匹配邮件地址字符串为例说明两个类的使用
2013-03-21 11:31:02
1111
原创 WTL创建密码框
//hpp file CEdit m_editPassWordNew;//cpp file if( m_editPassWordNew.Create(GetViewHWND(), NULL, NULL, WS_CHILD | WS_TABSTOP | WS_BORDER | ES_PASSWORD/*| ES_NUMBER*/)) { m_editPassWordNew.S
2013-03-21 10:10:39
894
原创 文件打开方式选择exe程序无效
问题来源:Window7系统,有python写的几个文件,开始通过以前下的python.exe打开(右键->选择程序),由于旧版的2.4的,删除了旧版本后,新下了个2.7的python.exe。于是新下载了python2.7,安装目录已经更改,但是文件名称还是原来的python.exe。 此时打开*.py文件就不能打开了,再次通过“右键”->"打开方式"->"选择默认程序"设置打开方式
2013-02-27 17:21:17
5734
1
原创 nsis制作文件修复安装包
检测软件运行环境过程中某些文件损坏后如何修复?修复源文件可以放在服务器上通过下载到本地进行修复,源文件下载后可以通过验证文件的hash值、签名值、大小等防止文件被篡改。验证通过后就可以修复安装。本人最初修复时,源文件就是以文件的形式存在本地(而且需要修复的文件比较多),赤裸裸的源文件在本地还是不安全的,可以对源文件进行压缩加密等操作,执行修复操作时解压到本地目录。由于文件比较多
2013-02-27 11:20:51
1397
转载 c++ 提升应用程序的权限
1、判断当前用户权限是否管理员权限BOOL IsRunAsAdmin(){ BOOL fIsRunAsAdmin = FALSE; DWORD dwError = ERROR_SUCCESS; PSID pAdministratorsGroup = NULL; // Allocate and initialize a SID of the administrators group.
2013-02-25 10:57:04
2403
转载 管理员权限运行应用程序
Vista 之前的系统,当用户使用管理员账户登录时,一个安全令牌会被创建,之后操作系统访问一些安全资源时会用到它,由 Windows Explorer 开始,这个安全令牌会同新创建的进程关联,进而也影响到它们的子进程。恶意软件也会使用这个安全令牌运行,它就能访问到任意的资源。从 Windows Vista 开始,如果一个用户作为系统管理员登录,除了相应的安全令牌创建之外,还创建了一个受限令
2013-02-25 10:46:30
1084
原创 Windows下UltraEdit查看Objective-C代码高亮工具
在 UltraEdit 的菜单里选择 高级 -> 配置 -> 编辑器显示 -> 语法高亮 -> 词语列表的完整路径。点浏览按钮选择解压出来的 wordfile.uew 文件,确定即可。或者你的安装目录下已经有词语列表配置文件,就把这个 wordfile.uew 最后一段粘贴到你的词语列表配置文件的末尾,最后一段从 /L14 "Objective-C" 开始到文件结束。
2013-02-17 14:13:35
518
转载 Windows 下的 Objective-C 开发环境配置
安装上网搜了搜,这方面的资料真是不少,必备的东东是 GNUstep Developer Tools,可以参考这个链接 (http://www.gnustep.org/experience/Windows.html),安装很简单,按照顺序 GNUstep System、GNUstep Core、GNUstep Developer 安装即可,过程就不表述了。安装完成后,我们可以用“
2013-02-01 12:43:36
537
原创 COM控件快速调试
编写的com控件调试方法,个人觉得通过IE的方式调试比较简单。1、 编写调用的html脚本,将下面脚本修改保存为test.htmlHtml>head>Script Language="JavaScript">try{var oAppExam = new ActiveXObject("ComLib.ComApp");var tesVal = 1;var r
2013-01-16 17:27:41
608
原创 com控件的几种调用方法(C++)
首先控件必须注册。1、调用控件生成时的*.c和*.h文件,定义一个接口变量,创建实例IMyDll myInterFace = NULL;myInterFace.CreateInstance( CLSID ); myInterFace.fun();2、没有控件生成时的*.c和*.h文件时,在代码中添加#import "*.dll",通过#import "*.dll" 后
2013-01-16 17:14:30
2174
原创 STL排序算法
sort :以升序重新排列范围内的元素,重载版本使用了自定义的比较操作。 算法比较简单,stable_partition :与 partition 类似,不过它不保证保留容器中的相对顺序。 templateBidirectionalIteratorstable_partition( BidirectionalIterator first,BidirectionalIterator la
2009-09-01 11:10:00
824
原创 unique_copy算法
unique_copy根据字面意思就是去除重复元素在执行copy运算。 int ia[] = { 0, 1, 1, 2, 3, 5, 5, 8 };vector ivec( ia, ia+8 ), vres;// 执行下面操作程序异常终止unique_copy( ivec.begin(), ivec.end(), vres.begin() );因为vres 没有被分配空间,un
2009-08-28 15:38:00
815
readline-7.0.zip
2021-03-22
飞秋等级随便设
2013-04-28
vc界面编程经典实例
2013-03-28
Windows下UltraEdit查看Objective-C代码高亮工具
2013-02-01
C#读取图片文件存入数据库
2009-12-19
STL算法详解与汇总
2009-06-23
C++/MFC多线程编程
2009-01-08
语言嵌入式编程修炼宝典
2008-10-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人