WritePrivateProfileString、GetPrivateProfileString 读写配置文件
WritePrivateProfileString 写配置文件
BOOL WINAPI WritePrivateProfileString(
_In_ LPCTSTR lpAppName,
_In_ LPCTSTR lpKeyName,
_In_ LPCTSTR lpString,
_In_ LPCTSTR lpFileName
);
参数:
lpAppName:
要复制字符串的部分的名称。如果该部分不存在,则创建它。该部分的名称与大小写无关; 字符串可以是大写和小写字母的任意组合。
lpKeyName:
与字符串关联的键的名称。如果该键在指定的部分不存在,则创建它。如果此参数为NULL,则整个部分(包括该部分中的所有条目)将被删除。
lpString:
一个零结尾的字符串写入文件。如果此参数为NULL,则lpKeyName参数指向的键将被删除。
lpFileName:
初始化文件的名称。如果文件是使用Unicode字符创建的,则该函数将Unicode字符写入该文件。否则,函数写入ANSI字符。
返回值:
如果函数成功将字符串复制到初始化文件,则返回值不为零。如果函数失败,或者刷新最近访问的初始化文件的缓存版本,返回值为零。要获取扩展错误信息,请调用 GetLastError。
注意:
初始化文件中的一个部分必须具有以下形式:
[section]
key=string
.
.
.
如果lpFileName参数不包含文件的完整路径和文件名, WritePrivateProfileString会在Windows目录中搜索该文件。如果该文件不存在,则此功能将在Windows目录中创建该文件。
如果lpFileName包含完整路径和文件名,并且该文件不存在,则 WritePrivateProfileString将创建该文件。指定的目录必须已经存在。
GetPrivateProfileString 读取配置文件
DWORD WINAPI GetPrivateProfileString(
_In_ LPCTSTR lpAppName,
_In_ LPCTSTR lpKeyName,
_In_ LPCTSTR lpDefault,
_Out_ LPTSTR lpReturnedString,
_In_ DWORD nSize,
_In_ LPCTSTR lpFileName
);
参数:
lpAppName [in]
包含密钥名称的部分的名称。如果此参数为NULL,则 GetPrivateProfileString函数将文件中的所有段名复制到提供的缓冲区。
lpKeyName [in]
要检索其关联字符串的键的名称。如果此参数为NULL,则由lpAppName参数指定的部分中的所有键名将复制到由lpReturnedString参数指定的缓冲区中。
lpDefault [in]
默认字符串。如果在初始化文件中找不到lpKeyName键,则 GetPrivateProfileString将默认字符串复制到lpReturnedString缓冲区。如果此参数为NULL,则默认值为空字符串“”。
避免指定一个带有空白字符的默认字符串。该函数在lpReturnedString缓冲区中插入一个空字符以去除任何尾随的空白。
lpReturnedString [out]
指向接收检索字符串的缓冲区的指针。
nSize [in]
lpReturnedString参数指向的缓冲区的大小,以字符为单位。
lpFileName [in]
初始化文件的名称。如果此参数不包含文件的完整路径,系统将在Windows目录中搜索该文件。
返回值:
返回值是复制到缓冲区的字符数,不包括终止空字符。
如果lpAppName和lpKeyName都不为NULL,并且提供的目标缓冲区太小而不能容纳所请求的字符串,则该字符串将被截断,后跟一个空字符,返回值等于nSize减去一个。
如果lpAppName或lpKeyName为NULL,并且提供的目标缓冲区太小而不能容纳所有字符串,则最后一个字符串将被截断,后跟两个空字符。在这种情况下,返回值等于nSize减去2。
在没有找到由lpFileName指定的初始化文件或包含无效值的情况下,该函数将设置值为“0x2”(找不到文件)的errorno。要检索扩展错误信息,请调用GetLastError。
查看更多 WritePrivateProfileString
查看更多 GetPrivateProfileString
WritePrivateProfileString、GetPrivateProfileString 读写配置文件的更多相关文章
- 利用GetPrivateProfileString读取配置文件(.ini)
利用GetPrivateProfileString读取配置文件(.ini) 配置文件中经常用到ini文件,在VC中其函数分别为: 写入.ini文件:bool WritePrivateProfileSt ...
- 用ConfigParser模块读写配置文件——Python
对于功能较多.考虑用户体验的程序,配置功能是必不可少的,如何存储程序的各种配置? 1)可以用全局变量,不过全局变量具有易失性,程序崩溃或者关闭之后配置就没了,再者配置太多,将变量分配到哪里也是需要考虑 ...
- 使用ConfigurationManager类读写配置文件
使用ConfigurationManager类 读写配置文件app.config,以下为代码: view plaincopy to clipboard print? using System; usi ...
- Python自动化测试 (二) ConfigParser模块读写配置文件
ConfigParser 是Python自带的模块, 用来读写配置文件, 用法及其简单. 直接上代码,不解释,不多说. 配置文件的格式是: []包含的叫section, section 下有op ...
- C读写配置文件
在项目开发中,经常需要读取应用配置文件的初始化参数,用于应用在启动前进行一些初始化配置.比如:Eclipse,参数项包含主题.字体大小.颜色.Jdk安装位置.自动提示等.Eclispe配置的文件格式是 ...
- Python自动化测试 -ConfigParser模块读写配置文件
C#之所以容易让人感兴趣,是因为安装完Visual Studio, 就可以很简单的直接写程序了,不需要做如何配置. 对新手来说,这是非常好的“初体验”, 会激发初学者的自信和兴趣. 而有些语言的开发环 ...
- python:实例化configparser模块读写配置文件
之前的博客介绍过利用python的configparser模块读写配置文件的基础用法,这篇博客,介绍下如何实例化,方便作为公共类调用. 实例化的好处有很多,既方便调用,又降低了脚本的维护成本,而且提高 ...
- python:利用configparser模块读写配置文件
在自动化测试过程中,为了提高脚本的可读性和降低维护成本,将一些通用信息写入配置文件,将重复使用的方法写成公共模块进行封装,使用时候直接调用即可. 这篇博客,介绍下python中利用configpars ...
- python-ConfigParser模块【读写配置文件】
对python 读写配置文件的具体方案的介绍 1,函数介绍 import configParser 如果Configparser无效将导入的configParser 的C小写 1.1.读取配置文件 - ...
随机推荐
- CentOS 6.4下安装 Mono 3.2 和Jexus 5.4
1.安装Mono源码安装需要的库 yum -y install gcc gcc-c++ bison pkgconfig glib2-devel gettext make libpng-devel li ...
- vue 实战问题-watch 数组或者对象
1.普通的watch data() { return { frontPoints: 0 } }, watch: { frontPoints(newValue, oldValue) { console. ...
- 将一个表的数据导入到另一个表的sql
ALTER PROCEDURE [dbo].[usp_ea_Copy] ( @eaId int, @createdBy varchar(), @newEaId int output ) AS decl ...
- html/css元素
块级元素 会独占一行,多个block元素会各自新起一行.默认情况下,block元素宽度自动填满其父元素宽度. 可以设置width,height属性.块级元素即使设置了宽度,仍然是独占一行. 可以设置m ...
- laravel数据迁移的时候遇到的字符串长度的问题
问题截图: 问题解决办法: use Illuminate\Support\facades\Schema; Schema::defaultStringLength(191); ...
- 让图片在div中居中
详情看:https://www.cnblogs.com/yyh1/p/5999152.html
- 数据结构(三)--- B树(B-Tree)
文章图片代码来自邓俊辉老师的课件 概述 上图就是 B-Tree 的结构,可以看到这棵树和二叉树有点不同---"又矮又肥".同时子节点可以有若干个小的子节点构成.那么这样一棵树 ...
- Docker学习(一): 基本概念
特别声明: 博文主要是学习过程中的知识整理,以便之后的查阅回顾.部分内容来源于网络(如有摘录未标注请指出).内容如有差错,也欢迎指正! =============系列文章============= 1 ...
- Echarts 有点难度的柱状图
本次的难点在于交叉传数据,又要把四组20个不同日期 显示上! 先看效果图: 数据传递方式:图 function func_echarts_2ba() { var echarts_2bar = echa ...
- MongoTemplate基本操作
本文基于spring boot项目,快速构建项目请参考:https://www.cnblogs.com/lay2017/p/8836273.html 添加mongo依赖 <dependency& ...