none
カスタム動作でVBScriptを設定するとうまく動いてくれません。 RRS feed

  • 質問

  • お世話になっております。

     

    早速ですが質問です。

    現在Visual Studio 2005 + VSTO 2005 SEでOutlookアドインを作成しています。

    セットアッププロジェクトのアンインストール時のカスタム動作でVBScriptを実行させているのですが、

    オブジェクトの生成時にエラーが発生してしまいます。

    下記VBSをアンインストール時に実行させるとメッセージボックスで「この変数は宣言されていません。(500)」と2回表示されます。

    On Error~~を外すと「オブジェクトがありません。(424)」と表示されます。 

     

    しかし、このVBSをエクスプローラ上でダブルクリックによる実行をさせるとエラーが発生しません。

     

    いろいろ調べてみたのですが、原因が分からずこちらで質問をさせていただきました。

     

    どなたか対応策をご存知でしたら、宜しくお願いいたします。

     

    環境:

    WinXP Pro SP2

    Visual Studio 2005(.NET Framework 2.0)

    VSTO 2005 SE

     

     

    ~~~~~Test.vbsの中身~~~~~

    Option Explicit

    On Error Resume Next

     

    Dim objWshShell ' WshShell オブジェクト

    Dim objFSO      ' FileSystemObject

     

    'WshShellオブジェクト作成

    Set objWshShell = WScript.CreateObject("WScript.Shell")

     

    If Err.Number <> 0 Then
        MsgBox Err.Description & "(" & Err.Number & ")"

    End If

    Err.Clear

     

    Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

     

    If Err.Number <> 0 Then
        MsgBox Err.Description & "(" & Err.Number & ")"

    End If

     

    Set objWshShell = Nothing

    Set objFSO = Nothing

    2007年5月30日 2:43

回答

  • WScript.CreateObjectをWScriptを無くしてCreateObjectだけで実行してみてください。WScriptではなくCScriptで動いているのかもしれません。

    Set objFSO = CreateObject("Scripting.FileSystemObject")
    2007年5月30日 3:59

すべての返信

  • WScript.CreateObjectをWScriptを無くしてCreateObjectだけで実行してみてください。WScriptではなくCScriptで動いているのかもしれません。

    Set objFSO = CreateObject("Scripting.FileSystemObject")
    2007年5月30日 3:59
  • ご回答ありがとうございました。

     

    おっしゃるとおり、CreateObjectだけで実行したらうまく動いてくれました。

    ありがとうございました。

    2007年5月30日 6:17