問題タブ [mstsc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1737 参照

c# - ネットワーク レベル認証を使用してリモート デスクトップ サーバーに適切な資格情報を提供できなかった場合にログオン試行ウィンドウが失敗するのを防ぐ

「Microsoft Terminal Services Control Type Library」を使用して、リモート デスクトップ サーバーへの接続を確立しています。ネットワーク レベル認証 (NLA) を使用するリモート デスクトップ サーバーに接続するときに、適切なユーザー名とパスワードの組み合わせを提供できない場合に表示される「Windows セキュリティ」プロンプトを防止または抑制する方法を探しています。ウィンドウは次のようになります。

ここに画像の説明を入力

現時点でオンラインで見つけることができるすべての設定の組み合わせについて読んで試しましたが、どれも成功していません。これは私がstackoverlowで見つけたいくつかの質問で、この正確な問題について話し、おそらく解決されたと思われますが、答えは私にとってはうまくいきません:

AxMsRdpClient9 ログイン ダイアログを閉じる

AxMsRdpClient6NotSafeForScripting AllowPromptingForCredentials

ばかげているように聞こえるかもしれませんが、私の最終的な目標は、rdp サーバーへの接続を試み、意図的に無効なユーザー名/パスワードを入力し、失敗したときに切断することです。実際に何かを接続したり表示したりすることは気にしません。問題がある場合は、別のアプリが後で使用するリモート サーバーのイベント ログで失敗したログオン試行をトリガーするためにこれを行っています。

以下のコードは、すでにイベント ログでログオン試行の失敗をトリガーしていますが、この失敗したログオン ボックスがクライアント マシンに表示されるのを止める方法が見つかりません。開いた。リモート デスクトップ サーバーが任意のバージョンのリモート デスクトップを実行しているコンピューターからの接続を許可するように構成されている場合 (安全性の低いオプション)、ポップアップ プロンプトは明らかに NLA が提供する追加のセキュリティの一部であるため、同じ問題は発生しません。

このコントロールのさまざまな設定の組み合わせをすでに試したので、頭が回転します。上記の他のスタックオーバーフローの質問の1つをモデルにした1つの例を次に示します。

おそらく、このポップアップを防ぐべき行ですが、その値がまたはocx.PromptForCredentials = Falseに設定されている場合、違いはないようです。実際に機能する可能性のあるプロパティ名からほぼ推測できますが、繰り返しますが、その値を何に設定しても違いはありません。いつも同じポップアップが表示されます。TrueFalseocx.PromptForCredsOnClient

この時点で、何が間違っているのかわかりませんが、これを機能させるには、ベースAxMsRdpClient6NotSafeForScriptingオブジェクトを別のものとしてインスタンス化する必要があるか、フォームにドロップしたときにコントロールが使用するデフォルトのタイプでAxMsRdpClient9NotSafeForScriptingさえあると直感的にわかりますAxMsTscAxNotSafeForScripting. しかし、私はすでにこれらの設定の組み合わせをたくさん試しましたが、誰かが状況に光を当てることができることを望んでいます.

また、.Net を使用してリモート デスクトップ サーバーに接続する別の方法がMicrosoft Terminal Services Control Type Libraryあれば、それを使用する必要がないことにも言及する必要があります。それらが存在する場合、それらを見つけるのはあまり運がありませんでしたが、検索で何かを見逃した場合はお知らせください.

編集:自分のサーバーが私のサーバーと同じか似たように設定されていることを確認するには、満たす必要がある要件が 2 つだけあります。

  1. リモート デスクトップは、Vista 以降のバージョンの Windows で実行する必要があります
  2. NLA を使用するには、リモート デスクトップを設定する必要があります。Win7 では、正確なオプション テキストは次のとおりです。

その時点で、接続しようとしたときにサーバーがログインの失敗をログに記録し、資格情報ボックス (またはその他のポップアップ) がクライアント側に表示されない限り、コードでどのオプションを変更してもかまいません。

このコードが必要とする適切な参照を追加する最も簡単な方法は、COM タブから「Microsoft ターミナル サービス コントロール」をツールボックスに追加し、「Microsoft RDP クライアント コントロール」をフォームにドロップすることです。詳細はこちら: http://s.codeproject.com/Articles/43705/Remote-Desktop-using-C-NET

この質問をより一般的にする場合に備えて、C#の同じコードを次に示します。

0 投票する
1 に答える
991 参照

windows - Windows リモート接続ループ MSTSC

Windows を介してリモート マシンのリストに接続するプログラムを作成しました。私が抱えている唯一の問題は、リモートデスクトップに接続した後、リモートから切断するまでWindowsコマンドプロンプトが「フリーズ状態」になることです。その時点で、別のマシンを選択できる場所にコードをループバックします。

複数のマシンに接続できるように、切断せずにループバックできるようにしたい。

これが私のコードです:

goto :machinelist接続先のサーバーを閉じるまで、cls clear コマンドを実行してマシン リスト ( ) に戻ることはありません。

「&」を使用して 2 つのコマンドを結合しようとしましたが、うまくいきませんでした。

すなわちmstsc /v:"SERVERNAME" & goto :machinelist

mstsc の後で切断せずに cls に移動して :machinelist に移動するにはどうすればよいですか?

0 投票する
1 に答える
308 参照

windows - HTA から実行した場合、bWaitOnReturn は mstsc.exe に影響を与えません

VBScript では、このWScript.Shell.Runメソッドには3 つの引数があり、その 3 番目の引数は、処理を続行する前にプログラムが新しく生成されたプロセスの終了を待機する必要があるかどうかを指定するブール値です。

この動作をmstsc.exe(Windows のリモート デスクトップ接続プログラム) で正しく動作させるのに問題があります。

以下のファイルを として保存してtest.vbs実行するとcscript test.vbs、期待どおりに動作します。

しかし、HTA ファイルから同じコードを実行しようとすると、正しく動作せず、実行後のメッセージ ボックスmstsc.exeが待機せずにすぐに表示されます。

なぜこれが起こるのか、それを修正する方法はありますか?

編集: Windows 10 および 7 でこれをテストしました。

0 投票する
1 に答える
767 参照

c# - AxMSTSCLib からの AxMsRdpClient9 の MsRdpClient_OnDisconnected イベントで「内部エラーが発生しました」の原因は何ですか?

単一の ActiveX コントロールを含む単純な Windows フォーム アプリケーションがあります。これは Microsoft RDP Client Control - バージョン 10 です。フォームのコンストラクターは次のとおりです。

これから得られるのは、MsRdpClient_OnDisconnected イベントをサブスクライブするときに切断された引数からの「内部エラーが発生しました」だけです。

コントロール内のほとんどのイベントをサブスクライブしようとしましたが、他に取得できるのは MsRdpClient_OnAuthenticationWarningDisplayed イベントの呼び出しだけですが、情報は得られません。

PSコントロール自体は空白のビューを提供します。mstsc 経由で remtoe pc に接続すると、すべて問題なく、資格情報が適合します。誰でもこれについて何か考えがありますか?