GetAccountProp/SetAccountProp関数(TKInfo.dll)(Ver5.78対応版)
 GetAccountProp関数は、LoadAccountProp関数で読み込まれたアカウントプロパティ中の値を取り出して返します。
 SetAccountProp関数は、LoadAccountProp関数で読み込まれたアカウントプロパティ中の値を書き換えます。

 SetAccountProp関数で書き換えた内容は、後からSaveAccountProp関数で保存しないと、実際のアカウントプロパティには反映されません。また、送受信途中でSaveAccountPropしても、現在の送受信のためのアカウントプロパティには反映されず、 次の送受信以降にだけ反映されます。
パラメータ1(文字列型)
 取り出し/書き換えたいパラメータの名前です。名前には以下の種類があります。
 ちなみに名前には法則があり、「sz」で始まる物は文字列型、「f」で始まる物はフラグ(0か1かの値)、「c」または「n」で始まる物は数値型となっています。
szTitle アカウント名。これを変更してSaveAccountPropすると、アカウント名(=フォルダ名)が変更される。
szName 送信者の名前
szEmail メールアドレス
szOrganization 所属
szReply 返信用のアドレス(「Reply-To:」に設定する値)
fBccAlways 「Bcc:」ヘッダを追加するかどうか(szBccEmailとセット)
szBccEmail 「Bcc:」ヘッダに設定する文字列(メールアドレス)
szSmtpServer SMTPサーバーのホスト名
szPop3Server POP3サーバーのホスト名
szPop3Account POP3サーバー用のユーザーアカウント
szPop3Password POP3サーバー用のパスワード
注意:GetAccountPropでszPop3Passwordを取得しようとするとエラーになり、内容の取得は失敗します。SetAccountProp専用になります。
szDialupEntry このアカウント用のダイヤルアップ先の名前
fSavePassword POP3サーバー用のパスワードを保存するかどうかのフラグ
fPopBeforeSmtp POP before SMTPするかどうかのフラグ
fSaveOnServer 受信したメールをサーバー上に残すかどうかのフラグ
fDialup このアカウント用のダイヤルアップ接続を指定するかどうかのフラグ
(1の場合はszDialupEntryが有効となる)
fDialupAtRecv 受信時にダイヤルアップ接続が必要かどうか。fDialupが1の場合にのみ有効。
fDialupAtSend 送信時にダイヤルアップ接続が必要かどうか。fDialupが1の場合にのみ有効。
fLeaveDialup fDialupが1の場合、送受信後にダイヤルアップ接続を切断するかどうかのフラグ。
fRecvLog 受信ログを作成するかどうかのフラグ
fSendLog 送信ログを作成するかどうかのフラグ
fExcludeFromAllTransmit このアカウントを「すべて送受信」の対象外とするかどうかのフラグ(1の時に対象外となる)
fFilterAtRecv 受信時に自動振り分けするかどうかのフラグ
fReplySignature 返信時にも署名を付けるかどうかのフラグ
fForwardSignature 転送時にも署名を付けるかどうかのフラグ
nLogRetainMonth ログを保持する期間(何ヶ月単位かの値)
fApop APOPを使うかどうかのフラグ
cSaveOnServerDate fSaveOnServerが1の場合、メールをサーバー上に保持しておく期間(日数)の指定。0の場合はずっと置いておくという意味。
fExcludeFromAutoDown このアカウントを「定期的な受信」の対象外とするかどうかのフラグ(1の時に対象外となる)
fFilterAtSend 送信時に自動振り分けするかどうかのフラグ
nAutoDownInterval  定期受信の時の、定期受信の間隔に対して、このアカウントを「何回に1回の割合で対象とするか」の値。例えばここが1なら定期受信時に毎回受信し、2なら2回に1回の割合で受信する。
nPop3Port POP3サーバーへ接続するポート番号
nSmtpPort SMTPサーバーへ接続するポート番号
szSmtpAccount SMTPサーバーに認証が必要な場合、またはPOP before SMTPで、それ用の認証サーバーが指定してある場合に、それ用のアカウント
szSmtpPassword 同じく、SMTPサーバーまたはPOP before SMTP時用のパスワード
注意:GetAccountPropでszSmtpPasswordを取得しようとするとエラーになり、内容の取得は失敗します。SetAccountProp専用になります。
fSaveSmtpPassword SMTPサーバー用のパスワードを保存するかどうかのフラグ
cPopLoginDelay POP before SMTP時の、POPログインしてからSMTP送信するまでの遅延時間(秒単位)。遅延無しの場合は0。
fESMTP SMTP認証がONかどうかのフラグ。
szAuthServer POP before SMTPで特定の認証サーバーを必要とする場合、そのホスト名。
fDontUseUidl 「UIDLコマンドを使わない」のフラグ
cServerTimeout サーバーとのやりとりでのタイムアウト時間(秒数)、デフォルトは120だが、0なっている場合も120秒という意味になる。
fDontChangeIconAtRecv 定期受信時に何か受信してもアイコンを変化させたり音を鳴らしたりしないフラグ
fSaveUidlInMail UIDL文字列の内容をメールに保存するかどうかのフラグ
fDontUseTop TOPコマンドを使わないフラグ
cbSizeLimit 受信時のメールサイズの制限(バイト単位)、0以下の場合は制限しないという意味。(負の数もありえる)
szEmailAlias 自分用メールアドレスの別名。
fMailFromFrom 送信時のMAIL FROM <...>コマンドでメールの「From:」ヘッダを参照するかどうかのフラグ(メールサーバーについての高度な設定)。
cbPartialSend 送信時のメールの分割サイズ(バイト数)、0の場合は分割無し。
fFlyingRecv 受信の高速化のフラグ
szSignature 署名
szNewTemplate 新規メール用のテンプレート
szReplyTemplate 返信メール用のテンプレート
szForwardTemplate 転送メール用のテンプレート
szAccountGroup 現在アカウントが属しているアカウントグループ名
fPopOverSSL POP over SSLのフラグ
fSmtpOverSSL SMTP over SSLのフラグ
fSSLNoCertificateCheck 「SSLで、証明書を検証しない」のフラグ
fPopOverSSLV3 POP over SSLでの、TLS/SSL3.0を有効にするかどうかのフラグ。1の場合はTLSまたはSSL version3.0が有効となり、0の場合はSSL version2.0でのみの接続となる。
fSmtpOverSSLV3 同じく、SMTP over SSLでの、TLS/SSL3.0を有効とするかどうか
fPopStartTLS POP over SSLで、STARTTLSを使うかどうか
fSmtpStartTLS SMTP over SSLで、STARTTLSを使うかどうか
fNTLMAuth 「セキュリティで保護されたパスワード認証」のフラグ
fDontSpamFilter 迷惑メールフィルターを通すかどうか(1なら通さない)
szBookRelation アドレス帳グループとの関連づけ(""なら関連づけ無し)
szRecvBypass 受信したメールを他のアカウントへバイパスするかどうか、および、そのバイパス先(""ならバイパスしない)
fSentBypass 送信済みメールもパイパスするかどうかのフラグ
fIgnoreRecvError 「受信時にエラーが起きてもメッセージ表示しない」のフラグ
fRemoteMailAtAutoDown 自動受信時に、リモートメールの一覧取得のみを実行するかどうかのフラグ
szMailFromSpecify 送信時のMAIL FROM:<...>で通知するメールアドレスを指定する用(""なら指定しない)
fHeloHost 送信時のHELOまたはEHLOコマンドで通知するホスト名を特別に指定するかどうか
szHeloHost fHeloHostが1の時の、ホスト名の指定
authtype SMTP認証の方式指定、0なら自動、1ならCRAM-MD5、2ならLOGIN、3ならPLAIN
recvSrv 受信メールサーバーの種類。0ならPOP3サーバー、0xA9ならIMAP4サーバー(V5.20から追加)
nAccountIconフォルダ枠に表示するアイコンの種類。0〜7まで指定出来ます。(V5.30β8から追加)

以下はV5.72以降からのみ使えます。
fCcAlways 「Cc:」ヘッダを追加するかどうか(szCcEmailとセット)
szCcEmail 「Cc:」ヘッダに設定する文字列(メールアドレス)
fNN2MThrough「メーラーdeネットニュース専用のログイン手続きをする」のオプション
fBccNoAttachBcc宛先に添付ファイルを送らない指定
fCheckMailBoxLimit「サーバー上のメール総バイト数が一定以上になったら警告する」のオプション
nMailBoxLimitLowByteサーバー上のメール総バイトのチェック値(1〜65535)の下位バイト
nMailBoxLimitHighByteサーバー上のメール総バイトのチェック値(1〜65535)の上位バイト
fCheckMailSize「LISTコマンド時のメールサイズと実際のサイズが同じかチェックする」のオプション
fDownloadReverse「最新のメールから順番にダウンロードする」のオプション
fDontGdsGoogleデスクトップでメール検索するオプションがONの場合の、アカウント毎のON/OFFオプション(1ならOFF)


パラメータ2(SetAccountPropの時のみ)
 書き換える値です。フラグまたは数値の場合は数値を指定し、文字列型の値の場合は文字列を指定しないといけないです。

注意: セットする値がおかしいと、それが原因で秀丸メールが誤動作をする可能性があります。その辺ご注意ください。
 どういう値をセットすればいいのか分からない場合は、アカウント毎設定をいろいろいじってそれによってGetAccountPropの値がどう変化するかをご自身で調べてみることをお勧めします。


返り値(数値型、文字列型) GetAccountPropの場合
 GetAccountPropの返り値は、フラグまたは数値型の場合は数値を返し、文字列の場合は文字列型を返します。


返り値(数値型) SetAccountPropの場合
 SetAccountPropの場合は、値の書き換えに成功した場合は1、失敗した場合は0を返します。ちなみに、「署名、テンプレート」以外の文字列型は、長さが79バイト以内でないとダメです。それ以上の長い文字列を指定するとエラーになります。また、フラグの所に0、1以外の値を書き込もうとすると、これもエラーになります。


テンプレート/署名についての補足説明
 szNewTemplateなどのテンプレート/署名関係の値は、少々特殊な動作をします。
 アカウント毎の設定でのテンプレートの設定が、「参照指定」となっている場合にGetAccountPropでテンプレート/署名内容を参照すると、「参照指定」となっている先のテンプレート/署名内容を返します。
 SetAccountPropでテンプレート/署名を書き換えると、たとえ元の設定が参照設定となっていても、「個別指定」に設定しなおされて、その個別指定の内容が書き換えられます。


アカウントグループ名についての補足
 アカウントグループ名はGetAccountPropする分には普通に使えますが、SetAccountPropについては今のところ正常動作しません(V3.07β21時点で)。


#n = dllfunc("LoadAccountProp", "テストアカウント" );
#fSavePassword = dllfunc("GetAccountProp", "fSavePassword");
$name = dllfuncstr("GetAccountProp", "szName");
#n = dllfunc("SetAccountProp", "fSavePassword", 0);
#n = dllfunc("SetAccountProp", "szBccEmail", "hoge@fuga.com");
#n = dllfunc("SaveAccountProp");

戻る