- 博客(36)
- 资源 (2)
- 收藏
- 关注
转载 Base64 编解码C语言实现
#include #include const char base[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";char* base64_encode(const char* data, int data_len); char *base64_decode(const char
2012-11-28 18:56:23
751
转载 在Vista中编程控制防火墙设定
原文地址:http://dev.yesky.com/msdn/151/7511651.shtml 编程控制防火墙前先要有个前提,就是你必须是管理员权限, 这样本例的程序才能用"Run as administrator"的方式运行,并成功修改。 如果你本身就是用Administrator这个用户登录的话,直接运行就行了。 建议最好在这个用户下来调试程序。 本程序只是个初始的例子,里
2012-10-26 17:00:35
672
转载 浅谈C中的wprintf和宽字符显示
转自:http://blog.csdn.net/lovekatherine/article/details/1868724今天在CSDN的Blog首页看到一篇文章“也谈计算机字符编码 ”,由于前一阵业余翻译了“UTF-8 and Unicode FAQ for Unix/Linux”一文,自己对字符集、编码和Unicode等内容一直保着者很强的兴趣,自然不会放过这样的文章。作者的文
2012-01-04 19:36:19
470
转载 程序中调用cmd命令时,参数带有空格的解决方法
比如在程序中调用cmd命令打开一个文件,而文件路径带有空格,如果直接把路径传给cmd,那么cmd就会把路径空格前面的部分当做是一个参数,空格后当做另一个参数,导致程序出错,解决方法是把传入的参数前后添加双引号。以java为例: 解决方法:Java代码 p = Runtime.getRuntime().exec( "c
2011-12-31 17:15:50
2729
原创 得到当前文件路径名
1.为了保险,要使用GetModuleFileName 而不要使用GetCurrentDirectory,因为后者的程序如果是通过快捷方式启动的,则得到的路径是快捷方式的!!#include char szExePath[300];//得到当前文件路径名GetModuleFileName(NULL,szExePath,200); (strrchr(szExePath
2011-12-14 15:15:57
466
原创 MFC中使用控制台
#include #include void InitConsoleWindow(){int nCrt=0; FILE* fp; AllocConsole(); nCrt = _open_osfhandle((long)GetStdHand
2011-09-01 14:12:47
540
转载 如何用程序实现“扫描检测硬件改动”?
出自:http://topic.csdn.net/t/20030529/11/1849598.html先用CM_Locate_DevNode得到设备管理树的根结点,然后用CM_Reenumerate_DevNode以这个根结点为参数刷新它就搞定!在MSDN里面可以查到这两个函
2011-08-25 18:06:30
11097
2
转载 成长的痛苦与快乐(非常经典)
成长之所以会痛苦是因为你一直在避开许许多多生命中的痛苦。借着避开,你无法摧毁它们,它们会继续累积。你继续吞下你的痛苦,那些痛苦都停留在你的系统里,那就是为什么成长是那么地痛苦。当你开始成长,当你决定去成长,你就必须去面对所有那些你所压抑的痛苦,你不能够只是绕过它们。如
2011-08-16 18:51:27
1937
转载 多线程与事件对象
http://hi.baidu.com/netspider_2007/blog/item/c164f63eb6cbd4ca7c1e7130.html创建或打开一个命名的或无名的事件对象 函数原型: HANDLE CreateEvent( LPSECURITY
2011-08-08 16:24:49
700
转载 TOASTER例子阅读(一)
http://blog.csdn.net/danxuezx/article/details/5489557TOASTER例子阅读(一)1、 I/O管理器(根总线)为总线生成并维护PDO,总线驱动为插入的设备生成并维护PDO(即下层设备驱动为上层设备生成并维护PDO);驱动程序中的
2011-07-26 16:39:12
1014
转载 上层和驱动通信
上层和驱动通信用DeviceIoControl函数,这是一个Win32 API,在SDK中定义。这个函数都会产生一个IRP_MJ_DEVICE_CONTROL包,如果驱动中注册过相应的例程,那么这个包就会引发该例程的工作。如果是驱动和驱动间的通信,那么用IoBuildDevice
2011-07-08 08:56:25
1576
转载 驱动程序与应用程序之间的通信
驱动程序与应用程序之间的通信www.diybl.com 时间 : 2007-11-11 作者:佚名 编辑:本站 点击: 1201 [ 评论 ]--驱动程序必须与应用程序进行通信,才能最终达到应用程序控制设备的目的,不然驱动有QIU用。要通信就涉及到3个方面: 1.应
2011-07-07 15:44:58
896
转载 CString、TCHAR*、char*转换
<br /><br />Unicode 模式下 <br />CString 和 Char *相互转换 CString 转 Char*<br /><br />方法一: <br /> CString info(_T("测试。"); <br /> LPCSTR tmp; <br /> USES_CONVERSION; <br /> tmp = W2A( info.GetBuffer( ) ); <br />方法二: <br /> CString info(_T("测试。"); <br /> L
2011-06-01 14:50:00
1021
1
转载 关于char, wchar_t, TCHAR, _T(),L,宏 _T、TEXT,_TEXT、L
<br />关于char, wchar_t, TCHAR, _T(),L,宏 _T、TEXT,_TEXT、L<br /> <br />char :单字节变量类型,最多表示256个字符,<br />wchar_t :宽字节变量类型,用于表示Unicode字符,<br />它实际定义在里:typedef unsigned short wchar_t。<br />为了让编译器识别Unicode字符串,必须以在前面加一个“L”,定义宽字节类型方法如下:<br /> wchar_t c = `A' ; <br
2011-06-01 14:49:00
414
原创 指定路径下查找文件的方法!
<br /><br />LPSTR szPath 是要搜索文件的路径名,<br />CString filename 文件名,如果不是基于mfc的app,则可以换成char*<br /> <br />bool Syt_FindFile(LPSTR szPath,CString filename)<br />{<br />WIN32_FIND_DATA FindFileData;<br />HANDLE hListFile;<br />CHAR szFilePath[MAX_PATH];<br /> <br
2010-11-29 12:51:00
832
转载 Windows 消息发送顺序!!
<br />WM_CREATE 和 WM_INITDIALOG 什么时候发送的? <br />小结:<br /><br />WM_CREATE是所有窗口都能响应的消息,表明本窗口已经创建完毕.可以安全的使用这个窗口了,例如在它上面画控件等等.这个状态肯定是在调用ShowWindows()显示窗口之前.<br /><br />WM_WM_INITDIALOG是对话框才能收到的消息,表明对话框及其所有子控件都创建完毕了,这个状态肯定是调用显示对话框的函数之前.所以可以在WM_WM_INITDIALOG对控件进行
2010-11-16 17:13:00
2836
转载 英文中i.e.,e.g.,etc.的正确用法
<br />原文:http://blog.sina.com.cn/s/blog_6d041c110100mr6x.html<br /> <br />i.e. 是拉丁文 id est 的缩写,它的意思就是“那就是说,换句话说”,等同于“that is,in other words” ,目的是用来进一步解释前面所说的观点。 e.g. 是拉丁文 exempli gratia 的缩写,它的意思是“举个例子,比如”,等同与“for example”,目的就是用几个例子来说明前面的观点。 etc.就比较好理解了,它是
2010-11-01 17:40:00
1597
转载 27岁后月薪低于8K,会被淘汰吗?【自csdn:jiao_2011】
<br />前段时间看了一篇文章,叫做《IT人为什么难以拿高薪》,颇有感触,于是写下这篇文章,希望与各位XDJM共勉~能够看到这个帖子的每个XDJM,我们大家都不是含着金钥匙出生的富二代,因此,我们的一切成就需要自己的努力,这里面有痛苦,有彷徨,有挫折,我们是否能够咬牙坚持下去?首先,在中国这么一个人口众多的国家,尤其是在北京、上海这种一线城市,如何脱颖而出很重要,本科学历,四级证书已经成了最基本的标志(这里没有任何歧视意义,但是如果没有学历,很多垃圾公司会连面试的机会都不给),不用给我讲个例说有些人高中没
2010-11-01 14:10:00
951
转载 C++强大背后 [转自:博文视点]
<br />在31年前(1979年),一名刚获得博士学位的研究员,为了开发一个软件项目发明了一门新编程语言,该研究员名为Bjarne Stroustrup,该门语言则命名为——C with classes,四年后改称为C++。C++是一门通用编程语言,支持多种编程范式,包括过程式、面向对象(object-oriented programming, OP)、泛型(generic programming, GP),后来为泛型而设计的模版,被发现及证明是图灵完备的,因此使C++亦可支持模版元编程范式(templa
2010-11-01 13:54:00
733
转载 编辑win7的启动菜单
<br />果只想解决问题.看蓝色粗体部分就行了,如果有空想多了解,看看其它也无妨<br />zt<br /> 在之前基于NT的Windows系统中,Windows使用Ntldr作为Boot Loader来启动系统,——所谓boot loader,在指在操作系统内核运行之前执行的一段小程序,系统通过它来初始化硬件设备、建立内存空间的映射图等,将系统的软硬件环境设置成一个合适的状态,为最终调用操作系统内核准备好正确的环境。——在启动过程中,Ntldr 使用Boot.ini 文件来确定在启动/引导过程中要显示
2010-10-26 15:11:00
3051
转载 [推荐] 查询剩余火车票(我今天证实实在是好用,激动啊!)
<br />这是一个可以查询到全国火车票剩余票量的网址,进入网页后选择下方的余票查询即可。http://www.12306.cn/mormhweb/kyfw/<br /><br /><br /><br /><br /><br /><br />一 关于放票时间<br />我们可能只知道“提前10天售火车票”这个信息,也就是说,火车票只在开车前10天放一次票。事实上远非如此。我把目前观察到的放票时间在这里列给大家:<br /><br />1.提前20天晚上19:00,放20天后的动车组车票和Z字头车票。这个
2010-10-20 09:47:00
664
转载 vc++ 在程序中运行另一个程序的方法
<br /><br />在vc++ 程序中运行另一个程序的方法有三个: WinExec(),ShellExcute()和CreateProcess()<br />三个SDK函数: WinExec,ShellExecute ,CreateProcess可以实现调用其他程序的要求,其中以WinExec最为简单,ShellExecute比WinExec灵活一些,CreateProcess最为复杂。<br /> WinExec 两个参数,前一个指定路径,后一个指定显示方式。<br /> ShellExe
2010-08-13 14:47:00
9671
转载 Vista Core API: Changing audio device sample rate
<br />原文来自:<br />http://www.freelists.org/post/wdmaudiodev/Vista-Core-API-Changing-audio-device-sample-rate-via-PKEY-AudioEngine-DeviceFormat-does-not-work,1<br /> <br />Vista Core API: Changing audio device sample rate via PKEY_AudioEngine_DeviceFormat do
2010-08-10 18:05:00
1848
原创 注意#include
LNK2001 是要链接的目标没有找到,他管你是不是库。你在 main() 里只写一个 test(); 肯定报这个错,除非你自己写个 test() 函数。initguid.h 中定义了一个宏,其他的头文件里如果遇到了这个宏,则会对某个 CLSID 进行定义,否则就只是声明。你只有声明没有定义当然会链接找不到。不过好几个定义也不行,链接器不知道该连接哪个。所以,一个工程里,如果有多个 initguid.h 的包含,也会出问题。------------------------------------------
2010-08-10 14:14:00
1316
转载 GUID的外部定义和内部定义
(已解决!GUID的外部定义和内部定义)VC编译错误:error LNK2001: unresolved external symbol _GUID_DEVINTERFACE_USB_DEVICE<br />编译错误2008-10-08 09:56:25阅读319评论0字号:大中小<br />兜了一大圈后,回到原点,再次思索如何解决。<br />先看上次的结果:“自己定义之后,提示重复链接;不自己定义,包含initguid.h,又提示其他的GUID重复定义;不自己定义,也不包含,提示没有链接到lib。”<b
2010-08-10 14:06:00
2453
转载 VC++的链接错误LNK2005
<br />编程中经常能遇到LNK2005错误——重复定义错误,其实LNK2005错误并不是一个很难解决的错误。弄清楚它形成的原因,就可以轻松解决它了。 <br /><br />造成LNK2005错误主要有以下几种情况: <br />1. 重复定义全局变量。可能存在两种情况: <br />A、 对于一些初学编程的程序员,有时候会以为需要使用全局变量的地方就可以使用定义申明一下。其实这是错误的,全局变量是针对整个工程的。正确的应该是在一个CPP文件中定义如下:int g_Test;那么在使用的CPP文件中
2010-08-10 13:45:00
481
转载 如何在Win7/Vista下聆听最佳质量的音乐?(数字输出 by WASAPI)
<br />来源:http://www.dearhoney.idv.tw/?p=1198<br /> <br />代理才能访问
2010-08-06 15:05:00
995
转载 为什么你应该(从现在开始就)写博客 收藏
(一)为什么你应该(从现在开始就)写博客 用一句话来说就是,写一个博客有很多好处,却没有任何明显的坏处。(阿灵顿的情况属于例外,而非常态,就像不能拿抽烟活到一百岁的英国老太太的个例来反驳抽烟对健康的极大损伤一样)让我说得更明确一点:用博客的形式来记录下你有价值的思考,会带来很多好处,却没有任何明显的坏处。Note:碎碎念不算思考、心情琐记不算思考、唠唠叨叨也不算思考、没话找话也不算思考,请以此类推。下面是我个人认为写一个长期的价值博客的最大的几点好处:1) 能够交到很多志同道
2010-08-06 09:37:00
498
转载 将DXSDK的帮助文档加入到VS6的MSDN中
<br />VS6中的MSDN所带的DXSDK较老,要查DX8或DX7有关的帮助可能不够方便。我们在DXDevList中看到过一组讨论,其中Tom Spilman先生发现一个好办法将DX7 Help 合并到MSDN中(DX8也同样如此),Matthew Waddilove先生做了在VS6下的补充。我们按着他们介绍的方法在VS98下试用成功,并略有简化,感觉这种比较实用,因此整理了一下,希望也能对别人有用,而且可以不走我们走过的弯路。不过试以前,我们在此申明,我们不负造成MSDN不能运行而需重装的责任,大家自
2010-08-06 09:21:00
424
转载 用DEF文件从DLL中导出C++类
<br />用DEF从DLL导出一个函数,或用__declspec(dllexport)指令从DLL中导出一类,想必大家已经很熟悉了,也经常使用着。这里向大家介绍一种<br />用DEF文件从DLL导出一个类的方法。具体原理或为什么就不废话了,学会导出后,再慢慢回味吧。这里主要叙述操作步骤。<br />1。打开VC6.0,新建一个"Win32 Dynamic-Link Library"工程,假设叫DefClass<br />,在“Dll kind”选择界面中选择“A simple dll project”<
2010-08-05 19:11:00
422
转载 DLL初学者指南(非MFC)
<br />作者:Notsosuperhero<br />译者:小刀人<br /><br />环境: Visual C++ 2003, Windows<br />源代码下载:DLL_Project.rar -DLL Project的源代码及测试项目<br />原文出处:codeguru<br /><br />我正在学习DLLs,谈不上对其有什么高屋建瓴的见解;本文只是(通过)编码让你看到并想知道代码是如何运行的。在本文中,我假定你知道如何使用你的编译器特性,比如设置目录路径等等。 <br />为了建立项目,
2010-08-05 19:08:00
311
转载 浅谈USB设备的VID和PID
<br />根据USB规范的规定,所有的USB设备都有供应商ID(VID)和产品识别码(PID),主机通过不同的VID和PID来区别不同的设备,VID和PID都是两个字节长,其中,供应商ID(VID)由供应商向USB执行论坛申请,每个供应商的VID是唯一的,PID由供应商自行决定,理论上来说,不同的产品、相同产品的不同型号、相同型号的不同设计的产品最好采用不同的PID,以便区别相同厂家的不同设备。<br /> VID和PID通常情况下有两种存储方式,第一种是主控生产商的VID和PID,存储在主控的
2010-07-30 16:15:00
806
转载 腾讯太可怕了
<br /><br />“有什么业务是腾讯不做的吗?”美团网CEO王兴的语气中难掩郁闷。<br />7月9日,腾讯QQ团购网上线,这让王兴如闻惊雷,也如坐针毡。从2003年回国到现在,王兴先后创办了校内、海内、饭否和美团4个网站,而美团网被他视为“最靠谱”的一次创业。3月初上线的美团网是国内第一家团购网站,创立仅仅4个月,美团网已经能够盈亏平衡。<br />就在这时候,一直悄无声息的腾讯杀了进来,这让王兴完全猝不及防,也让处于草创时期的数百家团购网站倒吸了一口凉气。<br />谁也不知道,这一次,这个“企鹅
2010-07-29 09:37:00
1570
原创 windows音频管理,一点总结
在声卡公司工作半年了,这半年来的工作就是使用芯片厂商的sdk和windows平台sdk的音频组件开发,在vc下开发Control Panel。芯片厂商sdk还算不难,学习中比较费精力的属于windows的音频组件。xp中控制声卡静音,音量等功能的部分需要用 mixerapi实现,这部分是C描述的,虽然抽象一点,但也不难。我将此部分的函数等封装了一个类,供实际开发时候,针对不同型号声卡快速的实现功能。vista和win7都是使用Core audio apis实现的此部分。这是一个更底层的api,功能也更强大,
2010-07-26 14:51:00
678
转载 DDK与WDK
<br /> 最近尝试去了解WINDOWS下的驱动开发,现在总结一下最近看到的资料。<br /> 1.首先,先从基础的东西说起,开发WINDOWS下的驱动程序,需要一个专门的开发包,如:开发JAVA程序,我们可能需要一个JDK,开发WINDOWS应用程序,我们需要WINDOWS的SDK,现在开发WINDOWS下的驱动程序,我们需要一个DDK/WDK。<br /> 2.DDK(Driver Developer Kit)和WDK(Windows Driver Kit)的区别:<br /> 这个要说说驱动相
2010-07-22 10:04:00
539
Win7认证示例CredentialProviders
2014-03-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人