• 締切済み

Outlook Expressのユーザー切り替えスクリプト

現在OSはWindowsXP sp3 Windows Script HostはVersion5.7です。 以前どこかのサイトに載っていた下記のOutlook Expressのユーザー切り替えスクリプトを作成し動かしてみたのですが全く反応がありません。 何が原因でしょうか??お教え下さい。 スクリプトの内容 Dim WshShell On Error Resume Next Set WshShell =WScript.CreateObject("WScript.Shell") WshShell.RegWrite "HKCU\Identities\Last Username","ユーザー名" WshShell.RegWrite "HKCU\Identities\Last User ID","{Identitiesのファイルの英数字}" WshShell.Run """C:\Program Files\Outlook Express\msimn.exe""" Set WshShell=Nothing

みんなの回答

  • kanburu
  • ベストアンサー率13% (118/865)
回答No.1

ユーザーAとユーザーBがあるとすると "ユーザー名"のユーザーAの名前と{Identitiesのファイルの英数字}のユーザーAの英数字を書き込んでホニャララ.vbsで保存する。 "ユーザー名"のユーザーBの名前と{Identitiesのファイルの英数字}のユーザーBの英数字を書き込んでヘロヘロ.vbsで保存する。 ~.vbsを起動する。 これで起動したほうでOEが立ち上がるのではないでしょうか。

oonabe777
質問者

お礼

結局Windows Script Host 5.6をインストールしたら動くようになりました。ありがとうございました。

関連するQ&A

  • レジストリの設定をすぐに反映させたい

    Windows XP で VBScript を使っています。 たとえば、次のスクリプトを実行します。 Set WshShell = CreateObject("WScript.Shell") Call WshShell.RegWrite("HKCU\Control Panel\Mouse\MouseSensitivity", "20", "REG_SZ") その後レジストリエディタで確認したところ、値は問題なく変更されていたのですが、再ログオンしないとマウスの移動速度には反映されないようです。 これを即時反映される方法はありますか。 よろしくお願いします。

  • マシンの再起動とWindowsの再起動の違いは?

    マシンの再起動とWindowsの再起動では、どういう違いがあるんでしょうか? お願いします http://tclock2ch.hp.infoseek.co.jp/storeroom.htm マシンの再起動-Reboot.vbs Set WSHShell = CreateObject("WScript.Shell") WSHShell.Run "C:\WINDOWS\RUNDLL32.EXE Shell32.dll,SHExitWindowsEx 2" -------------------------------------------------------------------------------- Windowsの再起動-Restart.vbs Set WSHShell = CreateObject("WScript.Shell") WSHShell.Run "C:\WINDOWS\RUNDLL.EXE USER.EXE,ExitWindowsExec"

  • WSHスクリプトでブラウザ更新

    教えてください。 WSHスクリプトでブラウザの更新をF5ではなくてControl + Rしたいのです。 Set WshShell = WScript.CreateObject("WScript.Shell") WScript.Sleep 2000 WshShell.AppActivate "テスト" WScript.Sleep 2000 WshShell.SendKeys "^R" WScript.Sleep 2000 WScript.Echo "終了" 最初の一回目の実行時はできるのですが、それ以降更新してくれません。 よろしくお願いいたします。

  • ファイルコピーのスクリプトで上書き確認のダイアログが表示

    Windows2003 Server にて、 ファイルコピーのスケジュールを登録しようと 下記のスクリプトを作りましたが、 実行すると「上書き確認」のダイアログが表示されてしまいます。 上書き確認のダイアログを表示させずに、 自動で上書きさせる方法を教えてください。 --------------------------------------------------- Set WshShell2 = WScript.CreateObject("Shell.Application") Set oFolder=WshShell2.NameSpace(ToFolder) oFolder.CopyHere FromFile, &h10 --------------------------------------------------- 「WScript」を使っているのは、 コピーしている事が視覚的に分かりたいので、書類が飛んでいる表示をさせたいからです。

  • VBscriptでIEスクリプト動かない

    VBScript初心者です。HTMLに書かれた文字を取ってきて環境変数に入れるスクリプトを作っているのですが、うまく動きません。かなりデバッグも頑張りましたしレファレンスも見ましたが解決に至らず。ご教示お願い致します。 Dim ie Set ie = CreateObject("InternetExplorer.Application") ie.visible = True Dim wshShell Dim wshUserEnv Set wshShell = CreateObject("WScript.Shell") Set wshUserEnv = wshShell.Environment("User") Main Public Function Main() Dim hirake Dim nakami Dim taagetto Dim kekka hirake = "etqw.dip.jp" ie.Navigate hirake Do Until ie.Busy = False Or ie.readystate <= 3 WScript.Sleep 100 Loop WScript.Sleep 100 nakami = ie.Document.getElementsByClassName("status-table") Set taagetto = nakami(2).innertxt Set kekka = Mid(taagetto,InStr(taagetto,"Password:") + 1) wshUserEnv.Item("_KOREDAYO") = kekka ie.Quit Set ie = Nothing Set hirake = Nothing Set nakami = Nothing Set taagetto = Nothing Set kekka = Nothing End Function

  • 自動ログオンを解除するVBスクリプトを作りたい

    社内のPC管理をしております。 今春の個人情報保護法施行にむけての対策を行っています。 社内のPCで自動ログオンが有効になっているものが多数あり、それを制御するVBスクリプトを作成したいと思うのですが、うまくいきません。 言い方を変えると、 ファイル名を指定して実行で control userpasswords2 を実行した際の、 ユーザがこのコンピュータを使うには、ユーザ名とパスワードの入力が必要のチェックをVBスクリプトで入れたいのです。 ユーザにはワンクリックでこの作業を終えさせたいということなのですが… ' WSHShellオブジェクトを作成する Set WSH = CreateObject("WScript.Shell") WSH.RegWrite "HKLM\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\DisableCAD", 0, "REG_DWORD" これじゃダメなのでしょうか。うまくできませんでした… 詳しい方、ご教授いただけませんでしょうか。 宜しくお願いいたします。

  • アウトルック エクスプレス> レジストリのバックアップとキー探し

    アウトルックエクスプレスが開けないという質問をしたものです。下記URLに方法が載っていたのですが、レジストリを初めにバックアップしてください、とかかれていました。これはどうしたらよいのでしょうか? また、「次の場所のキーを捜して下記の記述を残して それ以外のものは削除してください」と かかれていたのですが、そのキーというのが下記のようなものです。 HKEY_CURRENT_USER\Identities\    標準      =(値の設定なし)    Default User ID ={********-****-****-****-************}    Migrated5    =0x00000001(1)    Start As    ={********-****-****-****-************}    Last User ID  ={********-****-****-****-************}    Last Username  =****** これはどのようにして探したらよいのでしょうか? 私は本当に全くの初心者で、詳しいことがぜんぜんわからないのですが、どうぞよろしくお願いします。 助けてください。

  • VBScript

    下記、プログラムを実行すると、コマンドプロンプトの画面が 消えずに、そのまま残ってしまいます。 どうしたら、画面を消すことができるでしょうか。 お力添えをお願いいたします。 Set WshShell = Wscript.CreateObject("WScript.Shell") Set WshEnv = WshShell.Environment("user") WshEnv("C:\NET\aaa.txt") = "administrator" Wshshell.Run("cmd.exe") WScript.Sleep(500) WshShell.SendKeys("runas /user:administrator " + chr(34) + "xcopy D:\NET\aaa.txt C:\NET\aaa.txt" + chr(34)) WshShell.SendKeys("{Enter}") WScript.Sleep(500) WshShell.AppActivate "C:\WINDOWS\system32\runas.exe" WshShell.SendKeys("XXXXX") WshShell.SendKeys("{Enter}") WScript.Sleep(500)

  • vbsスクリプト作成について

    いつもありがとうございます。 今回、知識がないのですが下記のような処理のVBSを作成したく調べております。 (1)test.vbsファイルを実行時にvbsファイルと同じディレクトリに「folder」フォルダを作成 (2)作成した「folder」フォルダにサービス「idsvc」の状態をテキスト形式で「service.txt」として出力 (3)上記と同様の処理(service.txtはリネームする)を現在ログインしているユーザのスタートアップに「start.vbs」として配置 (3)上記処理後、再起動を実施 (4)再起動後、start.vbsを実行後に自動削除 大きく分けて4つの処理を個別に作成して最終1つのファイルとして作成しようと思っております。 なんとかわからいなりに作成してはいるのですが どうしても下記方法がわかりません。 (2)の処理「folder」を作成後、service.txtのパス(最下位行)を変数に入れて出力する方法 (きたないソースで申し訳ないです) ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ ' フォルダ作成 '---------------------------------------------- Dim str_Path Dim objFdr Set objFdr = CreateObject("Scripting.FileSystemObject") str_Path = objFdr.CreateFolder(".\folder") Dim WshShell Set WshShell = CreateObject("WScript.Shell") Set objLog = WshShell.Exec("cmd /C ""sc query idsvc | findstr -i state > .\folder\service.txt""") ※サービス出力はvbsでの方法がわからなかったのでcmdを呼び出しています。 (4)再起動後の処理にて、再起動前に作成したフォルダに「service.txt」を出力する方法 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ objVBSFile.WriteLine("On Error Resume Next") objVBSFile.WriteLine("Dim WshShell") objVBSFile.WriteLine("Set WshShell = CreateObject(""WScript.Shell"")") objVBSFile.WriteLine("Set objLog = WshShell.Exec(""cmd /C """sc query idsvc | findstr -i state >C:\services.txt"""")") objVBSFile.WriteLine("Set objFSO = CreateObject(""Scripting.FileSystemObject"")") objVBSFile.WriteLine("objFSO.DeleteFile WScript.ScriptFullName") 他にもわからないことはありますが、調べてなんとかなるとおもっておりますが 上記についてはVBSの理解不足なため、つかめません。 申し訳ありませんが、アドバイス頂けないでしょうか。 以上、宜しくお願い致します。

  • WSHで、レジストリを一気に消去したい

    VBスクリプトにて、WSHプログラミングを行っております。 レジストリを消去する場合、例えば Dim WshShell Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.RegDelete ("消したいレジストリ") とプロプラミングするかと思いますが、 レジストリ1個ずつではなく、とあるフォルダ以下に含まれる、 全てのフォルダ及びレジストリを一気に消去したいと考えています。 (例えば、 "HKLN\SYSTEM\CurrentControlSet\Control\Class"の フォルダ以下に含まれる、フォルダ及びレジストリを 全て消去したい) このようなことを実現するには、VBSでどのようなコードを 書けばよいのでしょうか。ご教授よろしくお願いします。