Category Archives: C#

「C#開発」WinformINI設定ファイルの読み込みと書き込みのサンプル

C#コード
// システムインターフェースクラス
public static class WinAPI
{
[DllImport(“kernel32”)] // ファイルの書き込みinterface
private static extern long WritePrivateProfileString(
string section, string key, string val, string filePath);

[DllImport(“kernel32”)] // ファイルの読み込みinterface
private static extern int GetPrivateProfileString(
string section, string key, string def,
StringBuilder retVal, int size, string filePath);

// 設定ファイルに値を書き込む
public static void ProfileWriteValue(
string section, string key, string value, string path)
{
WritePrivateProfileString(section, key, value, path);
}

//設定ファイルから値を読み込み
public static string ProfileReadValue(
string section, string key, string path)
{
StringBuilder sb = new StringBuilder(255);
GetPrivateProfileString(section, key, “”, sb, 255, path);
return sb.ToString().Trim();
}
}

「C#開発」User-agentを設定するサンプルコード

サンプルコード
private static string defaultUserAgent = null;

[DllImport(“urlmon.dll”, CharSet = CharSet.Ansi)]
private static extern int UrlMkSetSessionOption(int dwOption, string pBuffer, int dwBufferLength, int dwReserved);

const int URLMON_OPTION_USERAGENT = 0x10000001;

/// <summary>
/// </summary>
public static void AppendUserAgent(string appendUserAgent)
{
if (string.IsNullOrEmpty(defaultUserAgent))
defaultUserAgent = GetDefaultUserAgent();

string usat = defaultUserAgent + “;” + appendUserAgent;
ChangeUserAgent(usat);
}

/// <summary>
/// UserAgent修正
/// </summary>
public static void ChangeUserAgent(string userAgent)
{
UrlMkSetSessionOption(URLMON_OPTION_USERAGENT, userAgent, userAgent.Length, 0);
}

関数を呼び出す
public FormCft()
{
this.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
InitializeComponent();
AppendUserAgent(“CftLj”);
this.labelcft.Text = GetDefaultUserAgent();
}