2007年3月16日

WSH でショートカットを作成

Becky でメール新規作成画面をショートカットアイコンから起動したいので、どうにかならないかと調べた。
まず、Becky でメール新規作成画面をショートカットで起動するには、ショートカットに以下のようにリンク先を設定する
"C:\Program Files\RimArts\B2\B2.exe" mailto:hogehoge@fugafuga.com
ちなみに、mailto に、
mailto:hogehoge@fugafuga.com?subject=件名&body=内容
とすれば、件名と内容を設定できる。
RFC2368 準拠らしい。Becky ヘルプより

で、今度は上記で作成したショートカットを、メールアドレスを変えて、大量に作成したいので、WSH というスクリプトを利用して、create_mail_sc.wsf を下記の内容で作成。
[']シングルクオートで、コメントらしい
<package>
<job id="vbs">
<script language="VBScript">
Const ForReading = 1, ForWriting = 2, ForAppending = 8

Set objShell = WScript.CreateObject("WScript.Shell")
strDesktop = objShell.SpecialFolders("Desktop")

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objInput = objFSO.OpenTextFile("mail.txt", ForReading) 'メールアドレスのファイル
Do Until objInput.AtEndOfStream
strLine = objInput.ReadLine

Set objShortCut = objShell.CreateShortcut(strDesktop + "\" + strLine + ".lnk")
objShortCut.TargetPath = "C:\Program Files\RimArts\B2\B2.exe"
objShortCut.Arguments = "mailto:" + strLine ' Beckyの引数
objShortCut.WorkingDirectory = "C:\Program Files\RimArts\B2"
objShortCut.Save

Loop
objInput.Close

WScript.Echo "ショートカットを作成しました。"
</script>
</job>
</package>
そして、mail.txt をデスクトップに作成して、
hogehoge1@fugafuga.com
hogehoge2@fugafuga.com
hogehoge3@fugafuga.com
ってな内容で、作成して。create_mail_sc.wsf をダブルクリックで実行すると、ショートカットが簡単に大量に作れる。

参考:
Windows管理者のためのWindows Script Host入門
msdn - Windows Script Host

0 件のコメント: