写入DLL文件

摘要:
如果设置为vbNullString,请在lpReturnedString缓冲区中加载ini文件所有部分的列表字符串键//要获取的项目名称或条目名称。可以设置为null(“”)StringBuilderretVal//指定长度至少为nSizeintsize的字符串缓冲区//指定加载到lpReturnedString缓冲区(stringfilePath)中的最大字符数//初始化文件的名称。使用vbNullString删除此节的所有设置项stringval//指定为此项写入的字符串值。使用vbNullString删除此项的现有字符串stringfilePath)//初始化文件的名称。如果未指定完整路径名,Windows将在Windows目录中查找该文件。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;

namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}


[DllImport("kernel32")]
private static extern int GetPrivateProfileString
(string section, //欲在其中查找条目的小节名称。这个字串不区分大小写。如设为vbNullString,就在lpReturnedString缓冲区内装载这个ini文件所有小节的列表
string key, //欲获取的项名或条目名。这个字串不区分大小写。如设为vbNullString,就在lpReturnedString缓冲区内装载指定小节所有项的列表
string def, //指定的条目没有找到时返回的默认值。可设为空("")
StringBuilder retVal, //指定一个字串缓冲区,长度至少为nSize
int size, //指定装载到lpReturnedString缓冲区的最大字符数量
string filePath);//初始化文件的名字。如没有指定一个完整路径名,windows就在Windows目录中查找文件
/*
例子:
*
* section: [111]
* key: 123=huze
* huze是键入的值
*/
[DllImport("kernel32")]
private static extern long WritePrivateProfileString(
string section, //要在其中写入新字串的小节名称。这个字串不区分大小写
string key, //要设置的项名或条目名。这个字串不区分大小写。用vbNullString可删除这个小节的所有设置项
string val, //指定为这个项写入的字串值。用vbNullString表示删除这个项现有的字串
string filePath);//初始化文件的名字。如果没有指定完整路径名,则windows会在windows目录查找文件。如果文件没有找到,则函数会创建它
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = ReadIniReg("111", "123");
}
public static string ReadIniReg(string Section, string Key)
{
StringBuilder retVal = new StringBuilder(0xff);
GetPrivateProfileString(Section, Key, "", retVal, 0xff, Application.StartupPath + "\\123.dll");
return retVal.ToString();
}
public static void WriteintReg(string Section, string Key, string Value)
{
WritePrivateProfileString(Section, Key, Value, Application.StartupPath + "\\123.dll");
}

private void button2_Click(object sender, EventArgs e)
{
WriteintReg("111", "123", this.textBox2.Text);
WriteintReg("222", "234", this.textBox3.Text);
/* [111]
* 123=huze
* [222]
* 234=mengzi
*/
}
}
}

免责声明:文章转载自《写入DLL文件》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇openxml(二) 添加页眉,页脚kvm虚拟机vnc配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

springboot制作自定义starter

自定义starterSpringBoot中的starter是一种非常重要的机制,能够抛弃以前繁杂的配置,将其统一集成进 starter,应用者只需要在maven中引入starter依赖,SpringBoot就能自动扫描到要加载的信息并启 动相应的默认配置。starter让我们摆脱了各种依赖库的处理,需要配置各种信息的困扰。 SpringBoot会自动通过...

Asp.net mvc与PHP的Session共享的实现

最近在做的一个ASP.NET MVC的项目,要用到第三方的php系统,为了实现两个系统的互联互通。决定将两者的session打通共享。让asp.net mvc 和php 都能正常访问和修改Session内容。 在决定实现之前,先搜索了一下院子里有没有相类似的文章,对于跨语言的程序互通,有两种方案: (1) SSO单点登录,其实就是把用户名和密码传给另一个系...

C#中调用远程桌面时全屏的问题

C#中是可以调用RDP来实现远程桌面的(AxMSTSCLib.AxMsTscAxNotSafeForScripting),但是如何实现全屏了,让远程桌面随窗体大小一直变化。 RDP1.Dock =DockStyle.None; RDP1.Left = 0; RDP1.Top = 0;...

一文揭秘如何利用AndroidGodEye 打造Android应用性能测试监控

  AndroidGodEye是什么?     官网的介绍如下。   Android开发者在性能检测方面的工具一直比较匮乏,仅有的一些工具,比如Android Device Monitor,使用起来也有些繁琐,使用起来对开发者有一定的要求。而线上的App监控更无从谈起。所以需要有一个系统能够提供Debug和Release阶段全方位的监控,更深入地了解对Ap...

JAVA8的java.util.function包 @FunctionalInterface

1函数式接口java.util.functionhttps://www.cnblogs.com/CobwebSong/p/9593313.html2JAVA8的java.util.function包https://www.cnblogs.com/linzhanfly/p/9686941.html 3 Java HashMap computeIfAbse...

基于H5的混合开发介绍(一)WebView

转自: https://www.cnblogs.com/sanchang/p/9261461.html 一 WebView到底是什么      1 WebView是一种控件,它基于webkit引擎,因此具备渲染Web页面的功能。     2 基于Webview的混合开发,就是在 Anddroid os(安卓)/I os(苹果)原生APP里,通过WebVie...