1

リモート ディレクトリを監視するプログラムをコーディングしており、Windows API: WNetAddConnection を使用しています。指定したユーザー/パスワードを使用して、リモートディレクトリを Z: にマップするために使用します。

このプログラムを作業環境に置いた後、誰かがエクスプローラーの場所「\192.168.XX\somedir」を使用して、監視していた同じディレクトリにログインし、プログラムがこのディレクトリに接続できなくなるため、この人に接続しないように依頼する必要があります。このことをしますが、そうしないように強制することはできません。

それで、他のすべての接続を切断する方法があるかどうか、または彼らがこのことを行うことを証明する方法があるかどうかを知りたいのですが、誰か方法を知っていますか?

ところで、私は Windows の専門家ではありません。Windows ネットワークの詳細 (またはこのバグが実際に何を意味するのか) を知りません。

4

4 に答える 4

1
WNetCancelConnection2

しかし、それは人に対して最も友好的なことではありません。

于 2009-03-25T08:35:10.680 に答える
1

醜いオプション:

「net use」の出力を解析してから、「net use /d」を使用して不要な接続を切断できます

( WNetCancelConnection2は net use /d が使用する API のようです)

于 2009-03-27T15:42:55.427 に答える
0

これを行うには、次の手順に従います。 1、すべてのネット ユーザーと passwd を削除する順序を実行します。順序は次のとおりです。 rundll32.exe shell32.dll、Control_RunDLL keymgr.dll 2、ネット ユーザーのすべての情報を削除します。メモリを使用する順序: net use * /delete /y または、次の情報を含む 1 つのバット ファイルを作成できます。

@echo off
rundll32.exe shell32.dll,Control_RunDLL keymgr.dll
net use * /delete /y
net use * /delete /y
net use * /delete /y
net use * /delete /y
net use * /delete /y
net use * /delete /y

net use
net use
net use

net use * /delete /y
net use * /delete /y
net use * /delete /y
net use * /delete /y
net use * /delete /y
net use * /delete /y
于 2010-05-31T07:41:52.300 に答える
0

APIについてはわかりませんが、net session /deleteは、開いているすべてのセッションを共有から切断します。

于 2009-03-27T15:37:00.137 に答える