Added INI cfg

Signed-off-by: luca0N! <63941044+luca0N@users.noreply.github.com>
This commit is contained in:
luca0N! 2020-05-04 00:11:13 -03:00
parent fb58d0819f
commit a96bac1756
No known key found for this signature in database
GPG Key ID: 9F1B99B522287CAB
3 changed files with 75 additions and 54 deletions

17
cfg/pastas.ini Normal file
View File

@ -0,0 +1,17 @@
;
; ┌──┐ │ ┌── ┌──┐ ─┬─ ┌──┐ │
; ├──┤ │ ├─ ├──┘ │ ├──┤ │
; │ │ └── └── │ \ │ │ │ •
;
; ALERTA!
;
; O limpador do luca0N! vai limpar as pastas especificadas abaixo.
; Tome cuidado! Certifique-se de que nenhuma pasta indesejada esteja listada abaixo.
; Após execução, não será possível restaurar os arquivos removidos.
;
[Pastas]
Pastas=3
Pasta1=%appdata%
Pasta2=%tmp%
Pasta3=C:\Windows\Temp\

107
main.c
View File

@ -1,81 +1,84 @@
/*
limpador do luca0N! 3
Copyright (C) 2020 luca0N!
limpador do luca0N! 3
Copyright (C) 2020 luca0N!
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Contact me by e-mail via <mailto:luca0n@protonmail.com>
Contact me by e-mail via <mailto:luca0n@protonmail.com>
*/
#include "about.h"
#include "str.h"
#include "colors.h"
#include <windows.h>
#include <stdio.h>
int printLicense(int full){
if (full == 0) {
printf("%s\n", LICENSE_0);
printf("%s\n", LICENSE_1);
printf("%s\n", LICENSE_2);
printf("%s\n", LICENSE_3);
return 0;
} else {
FILE* flic = fopen("./LICENSE", "r");
if (flic == NULL){
printf("%s\n", STR_ERROR_LIC);
return -1;
}
char c;
while ((c = fgetc(flic)) != EOF) {
printf("%c", c);
}
}
if (full == 0) {
printf("%s\n", LICENSE_0);
printf("%s\n", LICENSE_1);
printf("%s\n", LICENSE_2);
printf("%s\n", LICENSE_3);
return 0;
} else {
FILE* flic = fopen("./LICENSE", "r");
if (flic == NULL){
printf("%s\n", STR_ERROR_LIC);
return -1;
}
char c;
while ((c = fgetc(flic)) != EOF) {
printf("%c", c);
}
}
}
void getAdditionalDirs(){
printf("%sRecolhendo pastas adicionais...\n", ANSI_COLOR_CYAN);
FILE* adf = fopen("./adf.txt", "r");
printf("%sRecolhendo pastas adicionais...\n", ANSI_COLOR_CYAN);
//FILE* adf = fopen("./adf.txt", "r");
int dirs;
dirs = GetPrivateProfileInt("Pastas", "Pastas", 3, ".\\cfg\\pastas.ini");
printf("%s %d\n", STR_DIR_COUNT, dirs);
}
void cleanLoadedDirs(){
printf("%s%s...\n", ANSI_COLOR_CYAN, STR_CLEANING_DIRS);
printf("%s%s\n", ANSI_COLOR_CYAN, STR_CLEANING_DIRS);
// TODO: Limpar pastas.
// TODO: Limpar pastas.
}
int main(void){
printLicense(0);
printLicense(0);
printf("--------------------\n%s %d, %s\n", PROGRAM_NAME, PROGRAM_SEASON, PROGRAM_VERSION);
printf("%s\n--------------------\n\n", PROGRAM_COPYRIGHT);
printf("--------------------\n%s %d, %s\n", PROGRAM_NAME, PROGRAM_SEASON, PROGRAM_VERSION);
printf("%s\n--------------------\n\n", PROGRAM_COPYRIGHT);
printf("%s%s\n", ANSI_COLOR_YELLOW, STR_USE_WARNING);
const char* in;
//printf(ANSI_COLOR_RESET);
fflush(stdout);
printf("%s%s\n", ANSI_COLOR_YELLOW, STR_USE_WARNING);
char in;
printf(ANSI_COLOR_RESET);
fflush(stdout);
scanf("%c", &in);
scanf("%c", &in);
if (in == 'w' || in == 'c')
if (printLicense(1) != 0)
return 0;
if (in == 'w' || in == 'c')
if (printLicense(1) != 0)
return 0;
if (in != 's' && in != 'S' && in != 'y' && in != 'Y')
return 0;
//getAdditionalDirs();
cleanLoadedDirs();
return 0;
if (in != 's' && in != 'S' && in != 'y' && in != 'Y')
return 0;
getAdditionalDirs();
cleanLoadedDirs();
printf("%s\n", ANSI_COLOR_RESET);
return 0;
}

5
str.h
View File

@ -25,8 +25,9 @@
#define STR_FETCHING_ADD "Recolhendo pastas adicionais..."
#define STR_CLEANING_DIRS "Limpando pastas carregadas..."
#define STR_REMOVED_FILE "[Arquivo removido] "
#define STR_REMOVED_DIR "[Pasta removida] "
#define STR_REMOVED_FILE "[Arquivo removido]"
#define STR_REMOVED_DIR "[Pasta removida]"
#define STR_DIR_COUNT "[Contagem de pastas]"
#define STR_ERROR_LIC "Falha ao ler arquivo de licença. Visite <https://www.gnu.org/licenses/> para mais informações."