Programación General > C/C++
Archivo y auto startup
(1/1)
llsnm:
Hola y gracias por interesarte en el post,
estoy escribiendo un código que básicamente cuenta las cantidades de reiniciadas o apagadas al s.o y las escribe en un archivo de texto. Hice que se auto inicie con windows modificando el registro.
El problema es que al reiniciar o apagar, no vuelve a escribir el archivo. El programa se auto inicia y las funciones que utilice no devuelven ningún error, pero aun así no escribe el archivo.
El código:
--- Código: C ---#include <stdio.h>#include <stdlib.h>#include <windows.h>//------------------------------------------------------------------------------int s(void);int c(void);//------------------------------------------------------------------------------int main(int argc, char *argv[]){ if(s()== 0) return 0; if(c()== 0) return 0; while(1){Sleep(100);} // para ver el return de las funciones: sacar. return 1;}//------------------------------------------------------------------------------int s(void){ HKEY hkey; const char PATH[] = "C:\\Users\\User1\\Desktop\\reboot.exe"; // por ahora al escritorio. int regResult=RegOpenKeyEx(HKEY_CURRENT_USER/*HKEY_LOCAL_MACHINE*/, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",0,KEY_SET_VALUE,&hkey); if(regResult != 0) /*return 0;*/ printf("REG OPEN ERROR\n"); regResult=RegSetValueEx(hkey,"count",0,REG_SZ,(BYTE *)PATH, strlen(PATH)); if(regResult != 0) /*return 0;*/printf("REG SET ERROR\n"); regResult=RegCloseKey(hkey); if(regResult != 0) /*return 0;*/printf("REG CLOSE ERROR\n"); return 1;}//------------------------------------------------------------------------------int c(){ FILE *counter; counter=fopen("filecounter.txt","a"); if(counter==NULL) /*return 0;*/ printf("FILE OPEN ERROR\n"); int check=fprintf(counter,"hola\n"); if (check==0) /*return 0;*/ printf("FPRINTF ERROR\n"); //int check = fputs("hello\n",counter); // tampoco anda //if (check!=0) return 0; // printf("FPUTS ERROR\n"); if(fclose(counter)!= 0) /*return 0;*/ printf("FCLOSE ERROR\n"); return 1;}//------------------------------------------------------------------------------
Alguna sugerencia?
PD: Aun no escribí la parte de contar los reinicios, pero una vez que pueda escribir el file después de reiniciar no va a ser mucho problema.
RHL:
Ya viste que la clave se escribe en el registro? :ball:
Navegación
Ir a la versión completa