diff --git a/.idea/APD_L1.iml b/.idea/APD_L1.iml
index bc2cd87..4c94235 100644
--- a/.idea/APD_L1.iml
+++ b/.idea/APD_L1.iml
@@ -1,8 +1,2 @@
-
-
-
-
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/example.txt b/example.txt
new file mode 100644
index 0000000..b45ef6f
--- /dev/null
+++ b/example.txt
@@ -0,0 +1 @@
+Hello, World!
\ No newline at end of file
diff --git a/main.c b/main.c
index bdeaff4..70f059a 100644
--- a/main.c
+++ b/main.c
@@ -42,13 +42,13 @@ int getVolumeInformation() {
}
// ---
-long getFileSize() {
+long getFileSize(LPCSTR path) {
printf("- GetFileSize:\n");
HANDLE hFile;
DWORD fileSize;
unsigned long structLargeInt;
// Открытие файла
- hFile = CreateFile((LPCSTR) "../text.txt",
+ hFile = CreateFile(path,
GENERIC_READ,
FILE_SHARE_READ,
NULL,
@@ -101,13 +101,13 @@ int getWindowsDirectory() {
printf("Виндосв папка тут: %s\n", windowsDir);
return 0;
}
-int compareFileTime() {
+int compareFileTime(LPCSTR path_1, LPCSTR path_2) {
printf("- CompareFileTime:\n");
FILETIME fileTime1;
FILETIME fileTime2;
// первый файл
- HANDLE file1 = CreateFile((LPCSTR) "../text.txt",
+ HANDLE file1 = CreateFile(path_1,
GENERIC_READ,
FILE_SHARE_READ,
NULL,
@@ -122,7 +122,7 @@ int compareFileTime() {
CloseHandle(file1);
// Открываем второй файл
- HANDLE file2 = CreateFile((LPCSTR) "../text2.txt",
+ HANDLE file2 = CreateFile(path_2,
GENERIC_READ,
FILE_SHARE_READ,
NULL,
@@ -157,7 +157,7 @@ int setLocalTime() {
// Заполнение структуры SYSTEMTIME данными текущего времени
GetLocalTime(&systemTime);
- printf("\nДата и время ДО изменения: %02d-%02d-%d %02d:%02d:%02d\n",
+ printf("Дата и время ДО изменения: %02d-%02d-%d %02d:%02d:%02d\n",
systemTime.wDay, systemTime.wMonth, systemTime.wYear,
systemTime.wHour, systemTime.wMinute, systemTime.wSecond);
@@ -172,50 +172,42 @@ int setLocalTime() {
SetLocalTime(&systemTime);
printf("Время успешно изменено\n");
- printf("\nДата и время ПОСЛЕ изменения: %02d-%02d-%d %02d:%02d:%02d\n",
+ printf("Дата и время ПОСЛЕ изменения: %02d-%02d-%d %02d:%02d:%02d\n",
systemTime.wDay, systemTime.wMonth, systemTime.wYear,
systemTime.wHour, systemTime.wMinute, systemTime.wSecond);
return 0;
}
-int setFileAttributes() {
+void getFileAttributes(LPCSTR path){
+ DWORD fileAttributes = GetFileAttributes(path);
+ if (fileAttributes & FILE_ATTRIBUTE_READONLY) {
+ printf("\n/Read-only");
+ }
+ if (fileAttributes & FILE_ATTRIBUTE_HIDDEN) {
+ printf("\n/Hidden");
+ }
+ if (fileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
+ printf("\n/Directory");
+ }// и так далее для других атрибутов файла...
+ printf("\n");
+}
+int setFileAttributes(LPCSTR path) {
printf("- SetFileAttributes:\n");
// Gуть к файлу
- LPCWSTR filePath = L"..\\text3.txt";
// Сбрасываем атрибуты файла
- SetFileAttributes((LPCSTR) filePath, (DWORD) NULL);
+ SetFileAttributes(path, (DWORD) NULL);
// Текущие атрибуты файла
- DWORD fileAttributes = GetFileAttributes((LPCSTR) filePath);
printf("\tТекущие атрибуты файла ДО замены: ");
- if (fileAttributes & FILE_ATTRIBUTE_READONLY) {
- printf("\n- Read-only");
- }
- if (fileAttributes & FILE_ATTRIBUTE_HIDDEN) {
- printf("\n- Hidden");
- }
- if (fileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
- printf("\n- Directory");
- }// и так далее для других атрибутов файла...
- printf("\n");
+ getFileAttributes(path);
// Устанавливаем атрибуты файла
- DWORD newFileAttributes = FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_DIRECTORY |fileAttributes;
- BOOL result = SetFileAttributes((LPCSTR) filePath, (DWORD) newFileAttributes);
-
- fileAttributes = GetFileAttributes((LPCSTR) filePath);
+ DWORD newFileAttributes = FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_DIRECTORY;
+ BOOL result = SetFileAttributes( path, (DWORD) newFileAttributes);
printf("\tТекущие атрибуты файла ПОСЛЕ замены: ");
- if (fileAttributes & FILE_ATTRIBUTE_READONLY) {
- printf("\n- Read-only");
- }
- if (fileAttributes & FILE_ATTRIBUTE_HIDDEN) {
- printf("\n- Hidden");
- }
- if (fileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
- printf("\n- Directory");
- }// и так далее для других атрибутов файла...
- printf("\n");
+
+ getFileAttributes(path);
return 0;
}
@@ -257,46 +249,24 @@ int createFile() {
return 0;
}
-void copyFile(const char* sourceFile, const char* destinationFile) {
- printf("- CopyFile:\n");
-
- FILE* source = fopen(sourceFile, "rb");
- FILE* destination = fopen(destinationFile, "wb");
-
- // Копируем содержимое файла
- char buffer[1024];
- size_t bytesRead;
- while ((bytesRead = fread(buffer, 1, sizeof(buffer), source)) > 0) {
- fwrite(buffer, 1, bytesRead, destination);
- }
-
- // Закрываем файлы
- fclose(source);
- fclose(destination);
-
- printf("Файл успешно скопирован.\n");
-}
-
int main() {
setlocale(LC_ALL, "Rus");
printf("\n----------------------------\n");
printf("\tИнформация о дисках:\n");
- // getLogicalDriveStrings();// + получение букв дисков
- // getVolumeInformation();// + получение информации о файловой системе выбранного логического диска
+ getLogicalDriveStrings();// + получение букв дисков
+ getVolumeInformation();// + получение информации о файловой системе выбранного логического диска
printf("\n------------------------------------------\n");
printf("\tИнформация о файлах и директориях:\n");
- // getFileSize();// + получает размер файла
- // findNextFile();// + поиск следующего файла в месте поиска
- // getWindowsDirectory();// + путь к основному каталогу виндовс
- // compareFileTime();// + определение какой из файлов более новый
+ getFileSize("text.txt");// + получает размер файла
+ findNextFile();// + поиск следующего файла в месте поиска
+ getWindowsDirectory();// + путь к основному каталогу виндовс
+ compareFileTime("text.txt", "text2.txt.");// + определение какой из файлов более новый
printf("\n----------------------------\n");
printf("\tУправляющие функции:\n");
- // setLocalTime();// + установить текущую дату и время
- // setFileAttributes();// + установка файловых атрибутов
- // createFile();// создать/открыть файл
- const char* sourceFile = ".//text.txt";
- const char* destinationFile = ".//text33.txt";
- CopyFile(".//text.txt", ".//text3.txt", 0);// скопировать файл
+ setLocalTime();// + установить текущую дату и время
+ setFileAttributes("text3.txt");// + установка файловых атрибутов
+ createFile();// + создать/открыть файл
+ CopyFile("text.txt", "text3.txt", 0);// скопировать файл
}
diff --git a/main.exe b/main.exe
new file mode 100644
index 0000000..0985ba4
Binary files /dev/null and b/main.exe differ
diff --git a/text2.txt b/text2.txt
index 51762f3..6c1f6a0 100644
--- a/text2.txt
+++ b/text2.txt
@@ -18,4 +18,4 @@ text.txt
text.txt
text.txt
text.txt
-text.txttexttext.txtывыфвывыав
\ No newline at end of file
+text.txttexttext.txtывыфвывыавsd
\ No newline at end of file
diff --git a/text3.txt b/text3.txt
index e69de29..6461503 100644
--- a/text3.txt
+++ b/text3.txt
@@ -0,0 +1,21 @@
+;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan
+;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan
+;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan
+;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan
+
+;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan
+;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsanss
+;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan
+;lkadsnf;lkjsd;cjsa;dijwaijfiaejfaiosjfs;lknv;lsan
+text.txttext.txttext.txt
+
+text.txttext.txttext.txttext.txtsss
+text.txttext.txttext.txttext.txt
+
+
+text.txttext.txttext.txt
+text.txtss
+text.txt
+text.txt
+text.txt
+text.txttexttext.txtss
\ No newline at end of file