/// <summary> /// sectionとkeyからiniファイルの設定値を取得、設定します。 /// </summary> /// <returns>指定したsectionとkeyの組合せが無い場合は""が返ります。</returns> public string this[string section, string key, string defaultValue] { set { Win32Methods.WritePrivateProfileString(section, key, value, Path); } get { StringBuilder sb = new StringBuilder(256); Win32Methods.GetPrivateProfileString(section, key, defaultValue, sb, sb.Capacity, Path); return(sb.ToString()); } }
/// <summary> /// IEにクッキーを設定します。 /// </summary> /// <param name="cookies">設定するクッキー</param> /// <param name="isDispose">設定後にクッキーを破棄するかどうか。デフォルト=true</param> public static void InternetSetCookie(string url, Cookie cookie, string cookieData = "{0}; expires={1}", bool isDispose = true) { // 取得したクッキーをIEに流用 Win32Methods.InternetSetCookie( url, cookie.Name, String.Format(cookieData, cookie.Value, GetExpiresDate() ) ); if (isDispose) { IEnumerable <Cookie> cookies = new Cookie[] { cookie }; var disposable = cookies.OfType <IDisposable>().FirstOrDefault(); if (disposable != null) { // 破棄可能なクッキーは破棄する。 disposable.Dispose(); } } }