2017-01-27 6 views
-1

私はこの問題を数日前から取り組んできました。私は実行する必要があるスクリプトを持っている、それはCLIプログラムを実行し、sendkeys経由でログイン情報を入力します。これは、「ユーザーがログオンしているときにのみ実行する」オプションが選択されていれば正常に実行されます。ユーザーがログオンしているかどうかにかかわらず、シェルとsendkeysを使用してVBSをスケジューリングする

ただし、「ユーザーがログオンしているかどうかにかかわらず実行する」を選択すると、スケジュールされたタスクで実行されたことが示されますが、そうではありません。どのように私はこれに近づけることができますか?

答えて

1

Sendkeysは、アクティブユーザーのインターフェイスと対話するようにプログラムされています。したがって、コンピュータがロックされていると、インターフェイスがロックされているため何もしません。

CLIによっては、初期化時にログインするためのパラメータがある可能性があります。パラメータがオプションでない場合は、SendKeysの代わりのSendMessage /のPostMessageとのFindWindowを使用しよう

CD C:\Program Files\example\exampleclidirectory 
set user=username 
set pswd=password 
cmdline.exe -user %user% -password %pswd% 

はTEST.BATファイルを考えます。これはC#またはVBで利用できるはずです。しかし、私はC#をお勧めします。

は、ここにその上でいくつかのリソースです:

http://www.codingvision.net/miscellaneous/c-send-text-to-notepad

I can't understand how to use SendMessage or PostMessage calls

そして、それはあなたがプログラム圧延を取得する必要があるデータで入力するいくつかの方法を与える必要があります。

+0

チップをありがとう。 CLIは、実際にはユーザー名/パスワードのファイルからの入力を受け取ります。 –

関連する問題