No title

文件配置

Ini文件

1,ini文件是个啥?

.ini 文件是Initialization File的缩写,即初始化文件,是 windows 的系统配置文件所采用的存储格式,统管 windows 的各项配置,一般用户就用 windows 提供的各项图形化管理界面就可实现相同的配置了。

2,ini文件以什么格式存储数据?

[节点名称]
key1=value1
key2=value2
[其它节点]
key1=value1
key2=value2

3,C# winform项目中如何读写ini文件呢?

借助动态链接库kernel32.dll

kernel32.dll是Windows 9x/Me中非常重要的32位动态链接库文件,属于内核级文件。它控制着系统的内存管理、数据的输入输出操作和中断处理,当Windows启动时,kernel32.dll就驻留在内存中特定的写保护区域,使别的程序无法占用这个内存区域。

4,在winform项目中使用一个动态链接库的基本步骤?

动态链接库不需要引用,系统自带。

动态链接库提供的功能比较多,说明动态链接库中方法比较多。

a. 先导入动态链接库,其实本质上是导入的动态链接库中某个方法。 [DllImport(“kernel32.dll”)]
b. 就可以在C#代码中使用导入的动态链接库中的某个方法。

App.config文件读取

配置文件 (AppSettings) 中读取 INI 文件的路径。在App.config文件中读取appSetting部分

1
2
3
<appSettings>
<add key="IniFilePath" value="D:\\test.ini"/>
</appSettings>

DllImport 属性用于从 kernel32.dll 动态链接库中导入 GetPrivateProfileString 函数。kernel32.dll 是 Windows 系统的核心库之一,包含了很多低级操作系统功能的实现。

[DllImport("kernel32.dll")]

extern:表示这个方法的实现是在外部 DLL(动态链接库)中提供的,而不是在 C# 代码中实现的。
调用了Windows API 函数GetPrivateProfileString

private static extern int GetPrivateProfileString(string section, string key, string defval, StringBuilder retval, int size, string filepath);

这个外部方法用于从 INI 文件中读取字符串。参数解释如下:

section: INI 文件中的节(类似于标题)。
key: 要读取的键。
defval: 如果键不存在,则返回的默认值。
retval: 存储读取值的 StringBuilder 对象。
size: retval (读取值的大小)的大小。
filepath: INI 文件的路径。

private static extern int WritePrivateProfileString(string section, string key, string val, string filepath);

这个外部方法用于将字符串写入 INI 文件。参数解释如下:
section: INI 文件中的节。
key: 要写入的键。
val: 要写入的值。
filepath: INI 文件的路径。

ConnectionStrings 是 Configuration 对象的一个属性,返回一个 ConnectionStringsSection 对象。ConnectionStringsSection 表示配置文件中的 部分

ConnectionStringsConnectionStringsSection 对象的一个属性,它返回一个 ConnectionStringSettingsCollection 对象。ConnectionStringSettingsCollection 是一个包含所有连接字符串设置的集合。

对比
Settings
ConnectionStringSettings:

用于表示单个连接字符串的设置,包括连接字符串的内容、名称和提供程序名称。
通常用在操作单个连接字符串时,例如读取或修改一个连接字符串的内容。

AppSettingsSection
ConnectionStringsSection:

用于表示配置文件中的 <connectionStrings> 部分。
包含多个 ConnectionStringSettings 对象的集合,并提供访问这些对象的方法。
通常用在需要访问或操作多个连接字符串时。