@ -4,6 +4,7 @@
using System ;
using System.IO ;
using System.Runtime.InteropServices ;
using System.Runtime.Versioning ;
namespace DepotDownloader
{
@ -27,5 +28,25 @@ namespace DepotDownloader
: mode & ~ ModeExecute ) ;
}
}
[SupportedOSPlatform("windows5.0")]
public static void VerifyConsoleLaunch ( )
{
// Reference: https://devblogs.microsoft.com/oldnewthing/20160125-00/?p=92922
var processList = new uint [ 2 ] ;
var processCount = Windows . Win32 . PInvoke . GetConsoleProcessList ( processList ) ;
if ( processCount ! = 1 )
{
return ;
}
_ = Windows . Win32 . PInvoke . MessageBox (
Windows . Win32 . Foundation . HWND . Null ,
"Depot Downloader is a console application; there is no GUI.\n\nIf you do not pass any command line parameters, it prints usage info and exits.\n\nYou must use this from a terminal/console." ,
"Depot Downloader" ,
Windows . Win32 . UI . WindowsAndMessaging . MESSAGEBOX_STYLE . MB_OK | Windows . Win32 . UI . WindowsAndMessaging . MESSAGEBOX_STYLE . MB_ICONWARNING
) ;
}
}
}