windows编程
mofabang
这个作者很懒,什么都没留下…
展开
-
windows的inf
windows的inf是什么?它有什么么用?INF是安装windows驱动的时候需要用到的文件。它就像一个安装脚本,告诉windows怎么安装驱动,源文件在哪里、安装到哪一个文件夹中、怎样在注册表中加入自身相关信息等等。INF文件其实是一种纯文本文件,可以编辑查看。INF文件有一整套的编写规则,每一个INF文件都是严格按照这些规则来编写的。规则规原创 2015-11-06 09:08:26 · 660 阅读 · 0 评论 -
读写ini配置文件
//读写ini文件。#include <Windows.h>int main(int argc, char *argv[]){ TCHAR szData[MAX_PATH] = { 0 }; TCHAR FileName[MAX_PATH] = { 0 }; int ret = 0; int n = 0; GetCurrentDirectory(MAX原创 2015-12-18 14:58:12 · 562 阅读 · 0 评论 -
c判断windows的系统是32位还是64位
#include <windows.h>#include <stdio.h>#pragma comment(lib, "user32.lib")int main(int argc, char *argv[]){ SYSTEM_INFO si; // Copy the hardware information to the SYSTEM_INFO structure. Ge原创 2015-12-18 13:56:58 · 2130 阅读 · 0 评论 -
x86平台原子操作原理
什么是原子操作?任务切换采用中断机制触发,发生一次任务切换,就向处理器通知一次中断发生。任务切换发生在指令边缘,一条指令在执行时,不会进行任务切换,在两条指令的间隙才可能会发生任务切换。原子操作是不可中断的一系列操作。为什么要原子操作?原子操作有什么意义?对于软件,代码的行为必须确定的。 也就是说通过手动分析代码,也能预知运行结果。但是程序在并发和并行的时候, 因为操作系统任务调度的不确定性和多原创 2015-11-18 14:04:28 · 1573 阅读 · 0 评论 -
Win32Project编译报错error C1853:
引子vs2013新建win32工程Win32Project1,修改文件Win32Project1.cpp名为Win32Project1.c,编译,报如下错误:错误1 error C1853: “Debug\Win32Project1.pch”预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)D:\visual studio原创 2015-11-18 11:49:30 · 933 阅读 · 0 评论 -
将32位代码向64位平台移植
2015-11-2 16:09:53 周一 将32位代码向64位平台移植,怎么弄? 是不是只要将32位的代码重新编译成64位的二进制可执行文件就行了吗?32位跟64位程序有什么不一样的?32位环境涉及”ILP32”数据模型,是因为C数据类型为32位的int、long、指针。而64位环境使用不同的数据模型,此时的long和指针已为64位,故称作”LP64”数据模型。现今所有64位的类Unix平台均原创 2015-11-02 19:36:35 · 841 阅读 · 0 评论 -
windows的exe、lib文件跟c运行时库怎么关联的
2015-11-2 09:22:02 Am Monday 嗨,周一。一个新的工作周的开始。在Windows操作系统下,可执行文件的存储格式是PE(Portable Executable)格式的;在Linux下,可执行文件的存储格式是WLF格式的。它们都是COFF格式文件的变种。在Windows下,目标文件(.obj)、静态库(.lib)使用COFF格式存储;可执行文件(.exe),动态链接库文件(原创 2015-11-02 11:34:28 · 1706 阅读 · 0 评论 -
ObReferenceObjectByHandle例程
ObReferenceObjectByHandle例程原创 2015-11-18 15:21:24 · 3027 阅读 · 0 评论 -
Windows下exe和dll文件怎么判定自己该链接何种版本的c运行时库的研究
Windows下的exe和dll文件是COFF/PE文件格式的文件。 通过了解Windows的COFF/PE文件结构, 可以知道: COFF/PE文件结构里有一个可选文件头。 在IMAGE_OPTIONAL_HEADER32可选头文件结构里BYTE类型字段MajorLinkerVersion创建可执行文件的链接器的主版本号。 对于Microsoft的链接器生成的PE文件,这个版本号与Vis原创 2015-11-02 12:00:59 · 1585 阅读 · 0 评论 -
Windows环境下exe、lib、dll文件怎么确定自己选择哪个版本c运行时库的
Windows环境下,c运行时库mscrt.dll,会有多个版本。 Run-Time Library是编译器提供的标准库,提供一些基本的库函数和系统调用。我们一般使用的Run-Time Library是C Run-Time Libraries,当然也有Standard C++ libraries。C Run-Time Libraries实现ANSI C的标准库。VC安装目录的CRT目录有C Run原创 2015-11-02 09:03:29 · 2271 阅读 · 0 评论 -
线程
【等待线程】 KeWaitForSingleObject例程把线程放到等待状态直到调度对象被设置成型号状态,或者可选的直到等待超时。Syntax:NTSTATUS KeWaitForSingleObject( _In_ PVOID Object, _In_ KWAIT_REASON WaitReason, _In_ KPROCESSOR原创 2015-11-17 14:26:50 · 144 阅读 · 0 评论 -
DeviceIoControl function
函数DeviceIoControl给指定设备驱动直接发送一个控制码, 让相应的设备进行相应的操作。BOOL WINAPI DeviceIoControl( _In_ HANDLE hDevice, _In_ DWORD dwIoControlCode, _In_opt_ LPVOID lpInBuffer, _原创 2015-11-16 15:11:32 · 444 阅读 · 0 评论 -
wtl学习开篇
安装好vs和wtl开发环境后,就可以进行wtl开发了。wtl提供了windows图形界面开发框架,可以利用wtl开发出想要的windows图形视窗界面程序。首先我们简单的建立一个wtl的程序,看看wtl的代码逻辑和图形界面是如何来搭建代码积木的。打开vs工具, 1、新建项目——>在已安装——>Visual C++ ——>WTL ——> ATL/WT Application Wizard名称写wt原创 2015-11-16 12:05:58 · 646 阅读 · 0 评论 -
WdfRequestRetrieveOutputBuffer
WdfRequestRetrieveOutputBuffer方法可以取得一个I/O请求的输出缓冲区。NTSTATUS WdfRequestRetrieveOutputBuffer( [in] WDFREQUEST Request, [in] size_t MinimumRequiredSize, [out] PVOI原创 2015-11-16 14:45:40 · 1855 阅读 · 0 评论 -
vs代码同步的问题
vs2013的代码同步到vs2010,会编译失败。 需要修改工程属性页——>配置属性——>常规——>平台工具集, 把v120改成v100就可以了。两个人同时进行一个项目开发, 甲用vs2013, 乙用vs2010,现在甲在项目工程里添加了a.h和a.c两个文件。乙用beyondcompare对比甲的项目目录, 只对比同步.h和.c文件,但是,乙同步了之后,编译不过, 报错链接时找不到xx原创 2015-11-16 16:21:19 · 2247 阅读 · 0 评论 -
编程思维的点滴
编程思路要清晰,要对自己所要做的事情有个百分之一百二十的了解。 不能模棱两可差不多就行。 往后的日子还很长,只图一时的爽快,将得不偿失,不值得, 甜在前头,苦在哭在后头,是令人很烦恼的一件事情。 无论时间多么仓促,自己都要想办法弄清楚自己所面对的是什么东西, 我要把它做成什么样子,做到什么程度。做任何事情,试错没有问题,但不能不经过大脑而满目的如无头苍蝇一般胡乱瞎捉摸,那样只是做无用功,甚原创 2015-11-12 20:03:32 · 613 阅读 · 0 评论 -
vc编程判断运行时os是32位还是64位
windows操作系统有32位和64位两种。 一个程序如何在运行时判断所运行的系统是32位的还是64位的? 64位操作系统上可以运行32位和64位程序。 vs2013采用Visual Studio 2013 - Windows XP (v120_xp)平台工具集编译的exe程序,既可以运行在32位操作系统上,也可以在64位操作系统上运行。通过sizeof(int *)的值是4或8不能判断所运行原创 2015-11-12 11:31:02 · 1268 阅读 · 0 评论 -
windows删除一个目录下的文件c代码
/************************************************************************ deleteFile.h* 删除一个目录下的文件****************/#ifdef __cplusplus extern "C" { #endif#ifdef UNICODE#define DelFile DelFileW原创 2015-12-08 13:32:49 · 1357 阅读 · 0 评论