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

5
str.h
View File

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