@ Swisston si inicia su aplicación de consola desde su otra aplicación propia, entonces quiero recomendarle "objetos kernel con nombre". Por ejemplo mutex. Puede crear un mutex con nombre en su aplicación principal. Luego, en el hilo principal de la aplicación de la consola de tu hijo, intenta abrir este mutex. Si no estuviese abierto mutex (no encontrado): aplicación de consola no tiene permisos para continuar y deben estar cerradas;) espera, voy a hacer algo de código para usted;)
Editar: lo que es muy fácil táctica. En aplicación de los padres crear un mutex llamado:
Mutex mutex = new Mutex(true, "MyPermissions");
Luego, en su cheque de aplicación de consola niño si existe el mutex:
static bool CheckPermissions()
{
try
{
Mutex mutex = Mutex.OpenExisting("MyPermissions");
}
catch (Exception ex)
{
return false;
}
return true;
}
Si su aplicación de consola se llevó a cabo sin su método CheckPermissions solicitud principal devolverá falso y la consola debe estar cerrada;)
¿Realmente quiere decir la línea de comandos de DOS (command.com), o la línea de comandos NT (cmd.exe)? ¿O está bien cualquier aplicación de consola? – CodesInChaos
¿Y qué estás tratando de lograr? ¿Por qué quiere evitar que otros programas inicien su programa? – CodesInChaos
@CodeInChaos: buenos puntos. Cualquier aplicación de consola está bien. Me gustaría evitar que la aplicación se use como parte de otro producto o servicio. – FunLovinCoder