私は WinForms アプリケーションのログイン プロセスに取り組んでおり、アプリのログイン資格情報を保存するためのさまざまなオプションを確認していましたが、助けが必要な問題に直面しました。
OSがサポートしている場合(ターゲットOSはVistaからWin10まで何でもかまいません)、それ以外の場合はWindowsレジストリに保存します。ただし、私が直面している問題は、OS が Windows Credential Manager をサポートしていることを確認する方法です。存在しない場合はエラーがスローされることをどこかで読みましたが、それを処理せずに確認できるより良い方法はありますか?例外。
CredentialManagement Nuget パッケージを使用して、Windows Credential Manager 機能にアクセスしています。
public static string GetPassword()
{
try
{
using (var cred = new Credential())
{
cred.Target = CredentialName;
if (cred.Exists())
{
cred.Load();
return cred.Password;
}
else
{
return string.Empty;
}
}
}
catch (Exception ex)
{
// Handle the exception
}
}