in SimpleRemoteConsole/Program.cs [173:217]
static bool CheckUserWarning()
{
var pathToThisExe = new FileInfo(Assembly.GetEntryAssembly().Location).DirectoryName;
var pathToAckFile = Path.Combine(pathToThisExe, "UserWarningAcknowledged");
var pathToWarnTxt = Path.Combine(pathToThisExe, "UserWarning.txt");
if (File.Exists(pathToAckFile))
{
// user acknowledged warning already (or preset it)
return true;
}
else
{
// show the warning
var warningText = File.ReadAllText(pathToWarnTxt);
Console.Write(warningText);
// get user response
ConsoleKeyInfo resp;
while (true)
{
resp = Console.ReadKey();
if (! new[] { 'Y', 'y', 'N', 'N'}.Contains(resp.KeyChar))
{
Console.WriteLine();
Console.Write("Please enter Y or N: ");
}
else break;
}
if (resp.KeyChar == 'y' || resp.KeyChar == 'Y')
{
// user has acknowledged risk. Proceed and don't ask again
File.Create(pathToAckFile).Dispose(); // close the file immediately.
Console.WriteLine();
return true;
}
else
{
Console.WriteLine();
return false;
}
}
}