一部のプロジェクトでは、次のことが必要です。
ローカル ユーザー アカウントを動的に作成します (このために、.NET フレームワークの UserPrincipal クラスを使用しています)。
そのユーザーになりすます (ネイティブの LogonUser (advapi32.dll) を呼び出すいくつかのクラスを作成しました)
DPAPI を使用して一部のユーザー データを暗号化します。ネイティブの CryptProtectData と CryptUnprotectData (crypt32.dll) を呼び出すクラスもいくつかあります。
ここでの問題は、ユーザーを動的に作成するときに、LogonUser を呼び出しても、ユーザー固有のフォルダーが作成されないことです。
DPAPI はこれらのフォルダーを検索しますが、フォルダーがそこにないため、呼び出しは失敗します。
ここで、手動でユーザー ログインを実行すると、それらのフォルダーが作成され、その後はすべて問題ありません。しかし、手動でログインせずに、これらのフォルダーを自動的に作成する方法が必要です。
それを行う方法はありますか?