Windows API 第三篇】的更多相关文章

1.获得程序自身的路径: DWORD GetModuleFileName( HMODULE hModule, // handle to module LPTSTR lpFilename, // path buffer DWORD nSize // size of buffer );参数说明:hModudle :[in] Handle to the module whose path is being requested. If this parameter is NULL, GetModuleF…
函数原型:DWORD WTSGetActiveConsoleSessionId (VOID)先看一下原文介绍: The WTSGetActiveConsoleSessionId function retrieves the Terminal Services session currently attached to the physical console. The physical console is the monitor, keyboard, and mouse. Note that…
相关函数:HANDLE FindFirstVolumeMountPoint(                                                               LPTSTR lpszRootPathName,     // volume name                                                              LPTSTR lpszVolumeMountPoint, // output buffe…
上一篇介绍了MoveFile,这次分析MoveFileEx,它是MoveFile的扩展函数,功能还要更加强大些.先看定义: BOOL WINAPI MoveFileEx( _In_     LPCTSTR lpExistingFileName, _In_opt_ LPCTSTR lpNewFileName, _In_     DWORD   dwFlags );返回值: 成功返回1, 失败返回0这里只介绍dwFlags参数:dwFlags:设置移动标志,指明要怎样操作文件或者目录.取值可以有:M…
GetLocalTime获取系统时间信息.函数原型:VOID   WINAPI  GetLocalTime(    __out LPSYSTEMTIME lpSystemTime    ); 先来看SYSTEMTIME结构:typedef struct _SYSTEMTIME {    WORD wYear;    WORD wMonth;    WORD wDayOfWeek;    WORD wDay;    WORD wHour;    WORD wMinute;    WORD wSec…
函数原型:BOOL DeleteVolumeMountPoint(                                                      LPCTSTR lpszVolumeMountPoint  // volume mount point path                                                   ); 参数:lpszVolumeMountPoint  :挂载点路径,必须以反斜杠'\'结尾. [in] Poi…
函数原型:BOOL SetVolumeMountPoint(                                                   IN   LPCTSTR lpszVolumeMountPoint, // mount point                                                 IN   LPCTSTR lpszVolumeName        // volume to be mounted             …
函数原型: BOOL GetVolumeNameForVolumeMountPoint(                                                                            IN  LPCTSTR lpszVolumeMountPoint, // volume mount point or directory                                                              …
函数定义:Retrieves the name of a volume on a computer. FindFirstVolume is used to begin scanning the volumes of a computer. HANDLE WINAPI FindFirstVolume( _Out_ LPTSTR lpszVolumeName, _In_  DWORD  cchBufferLength );说明: 检索本机卷的名字,但这个名字是GUID(全局唯一标志符)路径的,可见卷…
函数原型:DWORD GetLogicalDriveStrings(  DWORD nBufferLength,  // size of buffer                                                           LPTSTR lpBuffer       // drive strings buffer                                                       );说明:参数不多讲,需要注意函…
函数原型:DWORD GetLogicalDrives(VOID);The GetLogicalDrives function retrieves a bitmask representing the currently available disk drives. 说明:该函数用法简单,没有参数,返回值为DWORD类型,返回的是当前驱动器的位掩码,0位代表A盘,1位代表B盘,以此类推,以我的笔记本为例:我的笔记本盘符有C , D , E , F, 还有一个DVD RW驱动器(H). 当执行下面…
先看定义:BOOL GetVolumeInformation(    [IN]  LPCTSTR lpRootPathName,           // root directory  卷所在的根目录,如:"C:\\", 如果为NULL,表示当前目录  [OUT]  LPTSTR lpVolumeNameBuffer,        // volume name buffer ,输出参数,存放卷名缓冲区  [IN]  DWORD nVolumeNameSize,           …
函数定义:BOOL DeleteAndRenameFile( LPCWSTR lpszDestFile,                                                    LPCWSTR lpszSourFile                                                );说明:函数把sourceFile的内容复制到DestFile中,然后再删除sourceFile.调用前必须保证sourceFile和DestFile都存…
MoveFile可以移动文件,更名文件,移动目录(包括目录下的所有文件以及子目录).函数定义:BOOL MoveFile(  LPCTSTR lpExistingFileName, // file name                             LPCTSTR lpNewFileName       // new file name); 参数不介绍了,一个指向source 一个指向destination.返回值:成功返回1,失败返回0:说明:    1:不管移动文件还是移动目录…
GetCurrentDirectory函数获得当前文件所在的目录,并不是进程的目录(debug 和 release),它和GetCommandLine不同这里只讲 GetCurrentDirectory,GetCurrentDirectory是一个宏#ifdef UNICODE#define GetCurrentDirectory  GetCurrentDirectoryW#else#define GetCurrentDirectory  GetCurrentDirectoryA#endif /…
函数原型:BOOL SearchTreeForFile(  PSTR RootPath,      //系统查找的起始路径,   PSTR InputPathName,                           //要查找的文件名,可以使用通配符,例如 *.doc     PSTR OutputPathBuffer  );             //输出参数,查找到以后文件的绝对路径放在此返回值:查找到返回1,没有查找到或失败返回0,调用GetLastError()查看错误代码,包含…
这些函数都是比较字符串小写的,忽略大写,出入的字符串都将按照小写比较Perform a lowercase comparison of strings. 函数原型: int _stricmp( const char *string1, const char *string2 );        //#include <string.h> int _wcsicmp( const wchar_t *string1, const wchar_t *string2 );    //#include &…
创建或打开文件(也可用于打开管道,油槽,硬件设备等): HANDLE CreateFile( LPCTSTR lpFileName, // file name DWORD dwDesiredAccess, // access mode DWORD dwShareMode, // share mode LPSECURITY_ATTRIBUTES lpSecurityAttributes, // SD DWORD dwCreationDisposition, // how to create DWO…
来到了新公司,一开始就要做个程序去获取另外一个程序里的数据,哇,挑战性很大. 经过两周的学习,终于搞定,主要还是对Windows API有了更多的了解. 文中所有的消息常量,API,结构体都整理出来了(还不是很全):Windows.zip  目录: 获取控件句柄 模拟键盘和鼠标 文本框赋值 操作DateTimePicker控件 操作TreeView控件 识别简单验证码 判断按钮状态 正文: 一丶怎么获取每个控件的句柄 第一种是使用FindWindow和FindWindowEx两个API结合使用,…
REST不是一个标准,而是一种软件应用架构风格.基于SOAP的Web服务采用RPC架构,如果说RPC是一种面向操作的架构风格,而REST则是一种面向资源的架构风格.REST是目前业界更为推崇的构建新一代Web服务(或者Web API)的架构风格.由于REST仅仅是一种价格风格,所以它是与具体的技术平台无关的,也就是说采用REST架构的应用未必一定建立在Web之上,所以在正式介绍REST之前,我们先来简单认识一下Web. 目录 一.TCP/IP与HTTP 二.Web资源       媒体类型   …
使用C#调用windows API(从其它地方总结来的,以备查询) C#调用windows API也可以叫做C#如何直接调用非托管代码,通常有2种方法: 1.  直接调用从 DLL 导出的函数. 2.  调用 COM 对象上的接口方法 我主要讨论从dll中导出函数,基本步骤如下: 1.使用 C# 关键字 static 和 extern 声明方法. 2.将 DllImport 属性附加到该方法.DllImport 属性允许您指定包含该方法的 DLL 的名称. 3.如果需要,为方法的参数和返回值指定…
本篇文章主要介绍了"Windows API教程文件系统",主要涉及到Windows API教程文件系统方面的内容,对于Windows API教程文件系统感兴趣的同学可以参考一下. 索引 概念简介 文件对象 文件流 文件句柄 文件指针 文件系统操作 常见 API 高级文件操作 本讲程序功能列表 CreateFile 具体参数 返回值 DeleteFile 参数 返回值 CopyFile.MoveFile.FindFirstFile ReadFile GetCurrentDirectory…
这是ElasticSearch 2.4 版本系列的第三篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 ElasticSearch入门 第三篇:索引 ElasticSearch入门 第四篇:使用C#添加和更新文档 ElasticSearch入门 第五篇:使用C#查询文档 ElasticSearch入门 第六篇:复合数据类型——数组,对象和嵌套 ElasticSearch入门 第七篇:分析器 Elasti…
前言 这学期学可视化程序设计,要使用 Windows API 绘制界面,由于笔者的笔记本硬盘太小,无法装臃肿的 VS(主要是不想装),也不想用 VC++ 6.0,所以就选用 GCC 来编译. 安装 msys2 下面为 64 位操作系统版本的 msys2 下载地址: http://repo.msys2.org/distrib/x86_64/msys2-x86_64-20180531.exe 下载完成后,像普通软件一样安装即可. 安装 toolchain 安装完成后,在开始菜单下会有如下目录结构:…
Redis总结(五)缓存雪崩和缓存穿透等问题   前面讲过一些redis 缓存的使用和数据持久化.感兴趣的朋友可以看看之前的文章,http://www.cnblogs.com/zhangweizhong/category/771056.html .今天总结总结缓存使用过程中遇到的一些常见的问题.比如缓存雪崩,缓存穿透,缓存预热等等. 缓存雪崩 缓存雪崩是由于原有缓存失效(过期),新缓存未到期间.所有请求都去查询数据库,而对数据库CPU和内存造成巨大压力,严重的会造成数据库宕机.从而形成一系列连锁…
Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全局锁.决策竞选.分布式会话和集群状态管理等操作提供了一种简单的开发方式. Spring Cloud包含了多个子项目(针对分布式系统中涉及的多个不同开源产品),比如:Spring Cloud Config.Spring Cloud Netflix.Spring Cloud CloudFoundry.S…
LWJGL3的内存管理,第三篇,剩下的两种策略 上一篇讨论的基于 MemoryStack 类的栈上分配方式,是效率最高的,但是有些情况下无法使用.比如需要分配的内存较大,又或许生命周期较长.这时候就可以考虑使用 MemoryUtil 类来进行内存分配. MemoryUtil 在内部实现中,MemoryUtil 是通过JNI调用本地库用作Allocator来完成功能.截至目前,LWJGL3支持的内存库有: rpmalloc (项目地址:https://github.com/mjansson/rpm…
从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnblogs.com/lyhabc/p/4682028.html第三篇http://www.cnblogs.com/lyhabc/p/4682986.html第四篇http://www.cnblogs.com/lyhabc/p/6136227.html 这一篇是从0开始搭建SQL Serve…
原文地址: http://www.cnblogs.com/lyhabc/p/4682986.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建AlwaysOn,前两篇是为搭建AlwaysOn 做准备的 步骤 这一篇依然使用step by step的方式介绍怎麽搭建AlwaysOn 请先使用本地用户Administrator登录这两个集群节点并执行下面的操作,先不要用域用户DCADMIN登录 1.两个集群节点都需先安装.NET Framework…
离上一篇博客,快一周,工作太忙,只能利用休息日来写一些跟大家分享,Entity Framework Plus 组件系列文章,之前已经写过两篇 第一篇 Entity Framework Plus 之 Audit 第二篇 Entity Framework Plus 之 Query Future 计划还会写两篇,一篇是关于查询缓存的(二级缓存),一篇是批量操作(只讲更新,删除). 今天写查询缓存,标题 第三篇 Entity Framework Plus 之 Query Cache  ,废话不多说,直接…