ITaskService::Connect メソッド (taskschd.h)

リモート コンピューターに接続し、このインターフェイスの後続のすべての呼び出しをリモート セッションに関連付けます。 serverName パラメーターが空の場合、このメソッドはローカル コンピューターで実行されます。 ユーザーが指定されていない場合は、現在のトークンが使用されます。

構文

HRESULT Connect(
  [in, optional] VARIANT serverName,
  [in, optional] VARIANT user,
  [in, optional] VARIANT domain,
  [in, optional] VARIANT password
);

パラメーター

[in, optional] serverName

接続するコンピューターの名前。 serverName パラメーターが空の場合、このメソッドはローカル コンピューターで実行されます。

[in, optional] user

コンピューターへの接続中に使用されるユーザー名。 ユーザーが指定されていない場合は、現在のトークンが使用されます。

[in, optional] domain

user パラメーターで指定された ユーザー のドメイン。

[in, optional] password

コンピューターへの接続に使用されるパスワード。 ユーザー名とパスワードが指定されていない場合は、現在のトークンが使用されます。

戻り値

このメソッドは、これらの値のいずれかを返すことができます。

リターン コード/値 説明
S_OK
0
操作は正常に完了しました。
E_ACCESS_DENIED
0x80070005
タスク スケジューラ サービスに接続するためにアクセスが拒否されました。
SCHED_E_SERVICE_NOT_RUNNING
0x80041315
タスク スケジューラ サービスが実行されていません。
E_OUTOFMEMORY
0x8007000e
アプリケーションに操作を完了するための十分なメモリが不足しているか、 ユーザーパスワード、または ドメイン に少なくとも 1 つの null 値と 1 つの null 以外の値があります。
ERROR_BAD_NETPATH
53
このエラーは、次の状況で返されます。
  • serverName パラメーターで指定されたコンピューター名が存在しません。
  • Windows Server 2003 または Windows XP コンピューターに接続しようとしたときに、リモート コンピューターでファイルとプリンターの共有ファイアウォールの例外が有効になっていないか、リモート レジストリ サービスが実行されていません。
  • Windows Vista コンピューターに接続しようとしているときに、リモート コンピューターでリモート スケジュールされたタスク管理ファイアウォールの例外が有効になっていない場合、およびファイルとプリンターの共有ファイアウォールの例外が有効になっている場合、またはリモート レジストリ サービスが実行されていません。
ERROR_NOT_SUPPORTED
50
Windows Vista コンピューターからリモート Windows XP または Windows Server 2003 コンピューターに接続する場合、 ユーザーパスワード、または ドメイン のパラメーターを指定することはできません。

解説

他の ITaskService メソッドを呼び出す前に、ITaskService::Connect メソッドを呼び出す必要があります。

Windows Vista からリモート Windows Vista コンピューターに接続する場合は、リモート コンピューターでリモート スケジュールタスク管理ファイアウォールの例外を許可する必要があります。 この例外を許可するには、[スタート]、[コントロール パネル、[セキュリティ]、[Windows ファイアウォール経由でプログラムを許可する] の順にクリックし、[リモート スケジュールされたタスク管理] チェック ボックスを選択します。 次に、[Windows ファイアウォールの設定] ダイアログ ボックスの [ OK ] ボタンをクリックします。

Windows Vista コンピューターからリモートの Windows XP または Windows Server 2003 コンピューターに接続する場合、リモート コンピューター上でファイアウォールの例外 [ ファイルとプリンターの共有 ] を許可する必要があります。 この例外を許可するには、[スタート]、[コントロール パネル]、[Windows ファイアウォール] の順にダブルクリックし、[例外] タブを選択し、[ファイルとプリンターの共有] ファイアウォールの例外を選択します。 次に、[Windows ファイアウォール] ダイアログ ボックスの [ OK ] ボタンをクリックします。 リモート レジストリ サービスは、リモート コンピューターでも実行されている必要があります。

メモ リモート タスクのスキーマが現在のコンピューターでサポートされていない場合、 ITaskService::Connect はタスク定義の読み 取り中 にSCHED_E_INVALIDVALUEエラーを返す可能性があります。 現在のコンピューターでサポートされている最も高いスキーマ バージョンを確認するには、ITaskService::HighestVersion プロパティをチェックします。
 

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー taskschd.h
Library Taskschd.lib
[DLL] Taskschd.dll

関連項目

ITaskService

ITaskService::HighestVersion