La soluzione più semplice è controllare il valore di argv[0] nel main del programma. Controlla che il nome del file (che viene automaticamente passato al tuo programma quando esso viene lanciato) corrisponde con il nome che tu ti aspetti. Ecco un esempio:
codice:
#include <stdio.h>
int main(int argc, char **argv) {
if (strstr(argv, "pippo.exe") == NULL) {
printf("Errore nell'esecuzione del programma|\n");
exit(1);
}
printf("Il nome del file è proprio \"pippo.exe\"\n");
return 0;
}
Questo semplicissimo programma funziona solamente se il nome del programma è pippo.exe.
ATTENZIONE: in questo caso il programma funziona solo se nel nome del file non ci sono lettere maiuscole. In alternativa funziona se viene lanciato da un percorso contenente una directory di nome "pippo.exe".
Io ti ho dato uno spunto... a te giostrarti meglio la cosa.
Ciao.