September 01, 2005

メールリンク

_だいおーさんへのトラックバック
「サブジェクトに2バイト文字不可」が、E-mail本来の仕様であって、普通に通ってしまうOLや携帯のメーラーが普通じぁない、のですが。とは云え人情的には使いたいところですね。
subject=以降をURLエンコードしておけば日本語でもOKということでエンコーダースクリプト載せておきます。
---------------------------------------------------------------------
'!vbs
' UrlEncode.vbs 2005/09/01 by akitenh

' URLエンコード
Function getURL(ByVal Word)
dim Enchar, c
for i = 1 to len(Word)
c = mid(Word, i, 1)
if RegExpTest("[\-+\*/,\.0-9a-z]", c) = False then
Enchar = Enchar & getHex(c)
else
Enchar = Enchar & c
end if
next
getURL = Enchar
End Function

Function getHex(ByVal Char)
Char = right("0000" & hex(asc(Char)), 4)
if left(Char, 2) = "00" then
getHex = "%" & left(Char, 2)
else
getHex = "%" & left(Char, 2) & "%" & right(Char, 2)
end if
End Function

' 文字検索
Function RegExpTest(patrn, strng)
Dim regEx
Set regEx = New RegExp
regEx.Pattern = patrn
regEx.IgnoreCase = True
RegExpTest = regEx.Test(strng)
End Function

' Main
dim sWord, sURL
msg = "エンコードする文字列を入力してください"
sWord = inputbox(msg)
if sWord <> "" then
sURL = getURL(sWord)
sWord = inputbox(sWord, "エンコード結果", sURL)
end if

'end of script

投稿者 秋天越 : 09:04 PM | トラックバック (0)

このエントリーのトラックバックURL:

http://akitenh.s55.xrea.com/mt/mt-tb.cgi/124

コメント

失礼しました、ダメでした。
URLエンコードでなく「Qエンコード」でした。
=?Shift_JIS?Q?********?=
ので前言取り消します。

Posted by: 秋天越 : September 2, 2005 12:43 PM

あぁー、ちゃんと検証してみました。
メールリンクのsubject
Browser→Maler変換まとめ
※subjectの中身はS_JISコードとする

IE→OutLook
 URLエンコード ○
 Qエンコード  ×
 Bエンコード  ×
 S_JIS生コード ○

IE→ThunderBird
 URLエンコード ×
 Qエンコード  ○
 Bエンコード  ○
 S_JIS生コード ×

FireFox→OutLook
 URLエンコード ○
 Qエンコード  ×
 Bエンコード  ×
 S_JIS生コード ×

FireFox→ThunderBird
 URLエンコード ×
 Qエンコード  ○
 Bエンコード  ○
 S_JIS生コード ○

結局の所、各組合せ共通で○となるものが無い、ダメでした。

--------------TestHTML-------------
<html lang="ja">
<body>
<A href="mailto:hoge@hotten.pipi?Subject=%83%7A%81%5B%83%80%83%79%81%5B%83%57%8C%A9%82%DC%82%B5%82%BD%82%E6">メール送信URLエンコード</A><br>
<A href="mailto:hoge@hotten.pipi?Subject=%1B%24%42%25%5B%21%3C%25%60%25%5A%21%3C%25%38%38%2B%24%5E%24%37%24%3F%24%68%1B%28%4A?=">
メール送信jisURLエンコード</A><br>
<A href="mailto:hoge@hotten.pipi?Subject==?Shift_JIS?Q?=83=7A=81=5B=83=80=83=79=81=5B=83=57=8C=A9=82=DC=82=B5=82=BD=82=E6?=">
メール送信Qエンコード</A><br>
<A href="mailto:hoge@hotten.pipi?Subject==?Shift_JIS?B?g3qBW4OAg3mBW4NXjKmC3IK1gr2C5g==?=">
メール送信Bエンコード</A><br>
<A href="mailto:hoge@hotten.pipi?Subject==?ISO-2022-JP?Q?=1B=24=42=25=5B=21=3C=25=60=25=5A=21=3C=25=38=38=2B=24=5E=24=37=24=3F=24=68=1B=28=4A?=">
メール送信jisQエンコード</A><br>
<A href="mailto:hoge@hotten.pipi?Subject==?ISO-2022-JP?B?GyRCJVshPCVgJVohPCU4OCskXiQ3JD8kaBsoQg==?=">
メール送信jisBエンコード</A><br>
<A href="mailto:hoge@hotten.pipi?Subject=ホームページ見ましたよ">
メール送信S_JIS生</A>
</body>

Posted by: 秋天越 : September 2, 2005 05:55 PM

いろいろとありがとうございます
共通に方法があればよいのでしょうが・・・・

検証結果 メモ用にいただいて保存しておくかも(^^;

Posted by: だいおー : September 3, 2005 09:00 PM

コメントする









名前、アドレスを登録しますか?