Programación de apagado en lenguaje C
Si no se puede llamar a la función del sistema, entonces los privilegios de este proceso deben elevarse y, en cualquier caso, no puede cumplir con sus requisitos: cierre primero y luego XXXX...
Si se puede llamar a la función del sistema, entonces mucho más simple. Mira el ejemplo:
#include lt;windows.hgt;
#include lt;stdio.hgt;
.....
Agregar alloc.h
bool ver(char *s, char *s1)
{
char *s2 = (char*) malloc ( sizeof( char ) * 20 );
int len = lstrlne( s1 ) - 1;
//Revertir s1
for( int i = 0 ; len != -1;) s2[ i ] = s1[ len--];
s2[ i ] = 0; //Tenga en cuenta que si el entorno de compilación es VC6 o superior, i No aparecerá la definición.
len = strlen( s1 );
i = 0;
whie( i lt; len )
{
if( s1[ i ] == s[ i ] )
else
{
gratis( s2 );
reutrn falso;
}
}
gratis( s2 );
devuelve verdadero;
}
int main(int argc, char **argv)
{
system("shutdown -s -t 60"); //60 es El número de segundos que hay que contar hasta el apagado, aquí significa apagado después de 60 segundos.
char *s = "abcdefg";
char *s1 = ( char *) malloc( sizeof( char ) * 20
wihle(true); )
{
printf("s -gt; ingrese la secuencia inversa, hasta 20 caracteres: "); s1 );
if( ver( s, s1) )
{
printf("¡La entrada es correcta!");
system ("shutdown -a"); //Cancelar apagado de cuenta regresiva
exit(0);
}
else
{
sysetm("cls");
printf("¡Error de entrada!\r\n");
}
}