私は現在、Windows アンインストーラーですべてのユーザーに対して「設定の削除」を実装していますが、解決できるかどうかさえわからない問題に遭遇しました。
アプリケーションは、CredentialManager ( ) を使用して、現在のユーザーの資格情報エントリを保存しますkeymgr.dll
。資格情報のターゲットを「X」と呼びましょう。アンインストール時に、ターゲット「X」に保存されているすべての資格情報をすべてのユーザーから削除する必要があります。もちろん、アンインストーラーには管理者権限が必要ですが、それでもこれを達成するのは非常に難しいと思います。
現在のユーザーの場合、そのコマンドは通常cmdkey /delete=:X
、コマンド プロンプトから解決されます。私の知るcmdkey.exe /list
限り、現在のユーザーのエントリを一覧表示するのに役立つだけで、別のユーザーからローカル エントリを削除することはできません。
資格情報はフォルダーの下に OS ファイルとして保存されていることを知りましC:\Users\_user_\AppData\Local\Microsoft\Credentials
たが、削除したいエントリがどのファイルであるかがわからず、すべてを削除すると他のアプリケーションにとって危険です。また、OS ファイルの削除は危険であり、制限 (追加の UAC プロンプト?) もあると思います。
Runas
コマンドは私が得た最も近いショットですが、ユーザーのパスワードが必要なため、非常に難しくなり、アンインストーラーで必要なものではなくなります。また、各ユーザーのユーザー名とドメインを取得して反復する方法も必要です。
cmd
どちらかまたはこれを使用することをお勧めしますpowershell
。