Compare commits

..

No commits in common. "l1" and "master" have entirely different histories.
l1 ... master

6 changed files with 75 additions and 89 deletions

8
.idea/APD_L1.iml generated
View File

@ -1,2 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<module classpath="CIDR" type="CPP_MODULE" version="4" /> <module type="CPP_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

View File

@ -1 +0,0 @@
Hello, World!

132
main.c
View File

@ -42,33 +42,28 @@ int getVolumeInformation() {
} }
// --- // ---
long getFileSize(LPCSTR path) { long getFileSize() {
printf("- GetFileSize:\n"); printf("- GetFileSize:\n");
HANDLE hFile; HANDLE hFile;
unsigned long long high; DWORD fileSize;
unsigned long long low; unsigned long structLargeInt;
// Îòêðûòèå ôàéëà // Îòêðûòèå ôàéëà
hFile = CreateFile(path, hFile = CreateFile((LPCSTR) "../text.txt",
GENERIC_READ, GENERIC_READ,
FILE_SHARE_READ, FILE_SHARE_READ,
NULL, NULL,
OPEN_EXISTING, OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL, FILE_ATTRIBUTE_NORMAL,
NULL); NULL);
if (hFile == INVALID_HANDLE_VALUE) {
printf("Íå óäàëîñü îòêðûòü ôàéë\n");
CloseHandle(hFile);
return 1;
}
// Ïîëó÷åíèå ðàçìåðà ôàéëà // Ïîëó÷åíèå ðàçìåðà ôàéëà
low = GetFileSize(hFile, (LPDWORD) &high); structLargeInt = GetFileSize(hFile, NULL);
// Çàêðûòèå ôàéëà // Çàêðûòèå ôàéëà
CloseHandle(hFile); CloseHandle(hFile);
// Âûâîä ðàçìåðà ôàéëà // Âûâîä ðàçìåðà ôàéëà
printf("Ðàçìåð ôàéëà: %llu\n", high << 32 | low); printf("Ðàçìåð ôàéëà: %lu áàéò\n", structLargeInt);
return 0; return 0;
} }
int findNextFile() { int findNextFile() {
@ -106,24 +101,19 @@ int getWindowsDirectory() {
printf("Âèíäîñâ ïàïêà òóò: %s\n", windowsDir); printf("Âèíäîñâ ïàïêà òóò: %s\n", windowsDir);
return 0; return 0;
} }
int compareFileTime(LPCSTR path_1, LPCSTR path_2) { int compareFileTime() {
printf("- CompareFileTime:\n"); printf("- CompareFileTime:\n");
FILETIME fileTime1; FILETIME fileTime1;
FILETIME fileTime2; FILETIME fileTime2;
// ïåðâûé ôàéë // ïåðâûé ôàéë
HANDLE file1 = CreateFile(path_1, HANDLE file1 = CreateFile((LPCSTR) "../text.txt",
GENERIC_READ, GENERIC_READ,
FILE_SHARE_READ, FILE_SHARE_READ,
NULL, NULL,
OPEN_EXISTING, OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL, FILE_ATTRIBUTE_NORMAL,
NULL); NULL);
if (file1 == INVALID_HANDLE_VALUE) {
printf("Íå óäàëîñü îòêðûòü ôàéë 1\n");
CloseHandle(file1);
return 1;
}
// âðåìÿ èçìåíåíèÿ ïåðâîãî ôàéëà // âðåìÿ èçìåíåíèÿ ïåðâîãî ôàéëà
GetFileTime(file1, NULL, NULL, &fileTime1); GetFileTime(file1, NULL, NULL, &fileTime1);
@ -132,18 +122,13 @@ int compareFileTime(LPCSTR path_1, LPCSTR path_2) {
CloseHandle(file1); CloseHandle(file1);
// Îòêðûâàåì âòîðîé ôàéë // Îòêðûâàåì âòîðîé ôàéë
HANDLE file2 = CreateFile(path_2, HANDLE file2 = CreateFile((LPCSTR) "../text2.txt",
GENERIC_READ, GENERIC_READ,
FILE_SHARE_READ, FILE_SHARE_READ,
NULL, NULL,
OPEN_EXISTING, OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL, FILE_ATTRIBUTE_NORMAL,
NULL); NULL);
if (file2 == INVALID_HANDLE_VALUE) {
printf("Íå óäàëîñü îòêðûòü ôàéë 2\n");
CloseHandle(file2);
return 1;
}
// Ïîëó÷àåì âðåìÿ èçìåíåíèÿ âòîðîãî ôàéëà // Ïîëó÷àåì âðåìÿ èçìåíåíèÿ âòîðîãî ôàéëà
GetFileTime(file2, NULL, NULL, &fileTime2); GetFileTime(file2, NULL, NULL, &fileTime2);
@ -172,7 +157,7 @@ int setLocalTime() {
// Çàïîëíåíèå ñòðóêòóðû SYSTEMTIME äàííûìè òåêóùåãî âðåìåíè // Çàïîëíåíèå ñòðóêòóðû SYSTEMTIME äàííûìè òåêóùåãî âðåìåíè
GetLocalTime(&systemTime); GetLocalTime(&systemTime);
printf("Äàòà è âðåìÿ ÄÎ èçìåíåíèÿ: %02d-%02d-%d %02d:%02d:%02d\n", printf("\nÄàòà è âðåìÿ ÄÎ èçìåíåíèÿ: %02d-%02d-%d %02d:%02d:%02d\n",
systemTime.wDay, systemTime.wMonth, systemTime.wYear, systemTime.wDay, systemTime.wMonth, systemTime.wYear,
systemTime.wHour, systemTime.wMinute, systemTime.wSecond); systemTime.wHour, systemTime.wMinute, systemTime.wSecond);
@ -187,47 +172,50 @@ int setLocalTime() {
SetLocalTime(&systemTime); SetLocalTime(&systemTime);
printf("Âðåìÿ óñïåøíî èçìåíåíî\n"); printf("Âðåìÿ óñïåøíî èçìåíåíî\n");
printf("Äàòà è âðåìÿ ÏÎÑËÅ èçìåíåíèÿ: %02d-%02d-%d %02d:%02d:%02d\n", printf("\nÄàòà è âðåìÿ ÏÎÑËÅ èçìåíåíèÿ: %02d-%02d-%d %02d:%02d:%02d\n",
systemTime.wDay, systemTime.wMonth, systemTime.wYear, systemTime.wDay, systemTime.wMonth, systemTime.wYear,
systemTime.wHour, systemTime.wMinute, systemTime.wSecond); systemTime.wHour, systemTime.wMinute, systemTime.wSecond);
return 0; return 0;
} }
int getFileAttributes(LPCSTR path){ int setFileAttributes() {
DWORD fileAttributes = GetFileAttributes(path);
if (fileAttributes == INVALID_FILE_ATTRIBUTES)
{
printf("Îøèáêà îòêðûòèÿ ôàéëà.\n");
return 1;
}
if (fileAttributes & FILE_ATTRIBUTE_READONLY) {
printf("\n/Read-only");
}
if (fileAttributes & FILE_ATTRIBUTE_HIDDEN) {
printf("\n/Hidden");
}
if (fileAttributes & FILE_ATTRIBUTE_ARCHIVE) {
printf("\n/Directory");
}// è òàê äàëåå äëÿ äðóãèõ àòðèáóòîâ ôàéëà...
printf("\n");
}
int setFileAttributes(LPCSTR path, DWORD dwFileAttributes) {
printf("- SetFileAttributes:\n"); printf("- SetFileAttributes:\n");
// Góòü ê ôàéëó // Góòü ê ôàéëó
LPCWSTR filePath = L"..\\text3.txt";
// Ñáðàñûâàåì àòðèáóòû ôàéëà // Ñáðàñûâàåì àòðèáóòû ôàéëà
SetFileAttributes(path, (DWORD) 0); SetFileAttributes((LPCSTR) filePath, (DWORD) NULL);
// Òåêóùèå àòðèáóòû ôàéëà // Òåêóùèå àòðèáóòû ôàéëà
DWORD fileAttributes = GetFileAttributes((LPCSTR) filePath);
printf("\tÒåêóùèå àòðèáóòû ôàéëà ÄÎ çàìåíû: "); printf("\tÒåêóùèå àòðèáóòû ôàéëà ÄÎ çàìåíû: ");
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");
// Óñòàíàâëèâàåì àòðèáóòû ôàéëà // Óñòàíàâëèâàåì àòðèáóòû ôàéëà
DWORD newFileAttributes = dwFileAttributes; DWORD newFileAttributes = FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_DIRECTORY |fileAttributes;
BOOL result = SetFileAttributes( path, (DWORD) newFileAttributes); BOOL result = SetFileAttributes((LPCSTR) filePath, (DWORD) newFileAttributes);
fileAttributes = GetFileAttributes((LPCSTR) filePath);
printf("\tÒåêóùèå àòðèáóòû ôàéëà ÏÎÑËÅ çàìåíû: "); printf("\tÒåêóùèå àòðèáóòû ôàéëà ÏÎÑËÅ çàìåíû: ");
if (fileAttributes & FILE_ATTRIBUTE_READONLY) {
getFileAttributes(path); printf("\n- Read-only");
}
if (fileAttributes & FILE_ATTRIBUTE_HIDDEN) {
printf("\n- Hidden");
}
if (fileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
printf("\n- Directory");
}// è òàê äàëåå äëÿ äðóãèõ àòðèáóòîâ ôàéëà...
printf("\n");
return 0; return 0;
} }
@ -269,32 +257,46 @@ int createFile() {
return 0; 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() { int main() {
setlocale(LC_ALL, "Rus"); setlocale(LC_ALL, "Rus");
printf("\n----------------------------\n----------------------------\n----------------------------\n"); printf("\n----------------------------\n");
printf("\tÈíôîðìàöèÿ î äèñêàõ:\n"); printf("\tÈíôîðìàöèÿ î äèñêàõ:\n");
// getLogicalDriveStrings();// + ïîëó÷åíèå áóêâ äèñêîâ // getLogicalDriveStrings();// + ïîëó÷åíèå áóêâ äèñêîâ
// getVolumeInformation();// + ïîëó÷åíèå èíôîðìàöèè î ôàéëîâîé ñèñòåìå âûáðàííîãî ëîãè÷åñêîãî äèñêà // getVolumeInformation();// + ïîëó÷åíèå èíôîðìàöèè î ôàéëîâîé ñèñòåìå âûáðàííîãî ëîãè÷åñêîãî äèñêà
printf("\n------------------------------------------\n"); printf("\n------------------------------------------\n");
printf("\tÈíôîðìàöèÿ î ôàéëàõ è äèðåêòîðèÿõ:\n"); printf("\tÈíôîðìàöèÿ î ôàéëàõ è äèðåêòîðèÿõ:\n");
getFileSize("text.txt");// + ïîëó÷àåò ðàçìåð ôàéëà // getFileSize();// + ïîëó÷àåò ðàçìåð ôàéëà
getFileSize("texàâïàâït.txt");// + ïîëó÷àåò ðàçìåð ôàéëà
// findNextFile();// + ïîèñê ñëåäóþùåãî ôàéëà â ìåñòå ïîèñêà // findNextFile();// + ïîèñê ñëåäóþùåãî ôàéëà â ìåñòå ïîèñêà
// getWindowsDirectory();// + ïóòü ê îñíîâíîìó êàòàëîãó âèíäîâñ // getWindowsDirectory();// + ïóòü ê îñíîâíîìó êàòàëîãó âèíäîâñ
compareFileTime("text.txt", "text2.txt.");// + îïðåäåëåíèå êàêîé èç ôàéëîâ áîëåå íîâûé // compareFileTime();// + îïðåäåëåíèå êàêîé èç ôàéëîâ áîëåå íîâûé
printf("\n----------------------------\n"); printf("\n----------------------------\n");
printf("\tÓïðàâëÿþùèå ôóíêöèè:\n"); printf("\tÓïðàâëÿþùèå ôóíêöèè:\n");
// setLocalTime();// + óñòàíîâèòü òåêóùóþ äàòó è âðåìÿ // setLocalTime();// + óñòàíîâèòü òåêóùóþ äàòó è âðåìÿ
printf("\tÂâåäèòå íóæíûé àòðèáóò äëÿ óñòàíîâêè ôàéëó: 1 - òîëüêî äëÿ ÷òåíèÿ, 2 - ñêðûòûé, 3 - àðõèâíûé\n"); // setFileAttributes();// + óñòàíîâêà ôàéëîâûõ àòðèáóòîâ
int chislo = 0; // createFile();// ñîçäàòü/îòêðûòü ôàéë
scanf("%d", &chislo); const char* sourceFile = ".//text.txt";
if (chislo == 1 || chislo == 2 || chislo == 3) const char* destinationFile = ".//text33.txt";
setFileAttributes("text3.txt", chislo);// + óñòàíîâêà ôàéëîâûõ àòðèáóòîâ CopyFile(".//text.txt", ".//text3.txt", 0);// ñêîïèðîâàòü ôàéë
else {
printf("Óêàçàí íåâåðíûé íîìåð àòðèáóòà\n");
}
// createFile();// + ñîçäàòü/îòêðûòü ôàéë
// CopyFile("text.txt", "text3.txt", 0);// ñêîïèðîâàòü ôàéë
} }

BIN
main.exe

Binary file not shown.

View File

@ -18,4 +18,4 @@ text.txt
text.txt text.txt
text.txt text.txt
text.txt text.txt
text.txttexttext.txtывыфвывыавsd text.txttexttext.txtывыфвывыав

View File

@ -1,21 +0,0 @@
;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