Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
52899e12e6 |
Generated
-6
@@ -1,6 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="Encoding">
|
|
||||||
<file url="file://$PROJECT_DIR$/main.c" charset="windows-1251" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
||||||
@@ -1,11 +1,7 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <locale.h>
|
#include <locale.h>
|
||||||
#include <unistd.h>
|
|
||||||
|
|
||||||
// Ëàáîðàòîðíàÿ ðàáîòà ¹ 2 - óñòðîéñòâà ðó÷íîãî ââîäà
|
|
||||||
|
|
||||||
// --- Èíôîðìàöèÿ î êëàâèàòóðå
|
|
||||||
int getLogicalDriveStrings() {
|
int getLogicalDriveStrings() {
|
||||||
printf("- GetLogicalDriveStrings:\n");
|
printf("- GetLogicalDriveStrings:\n");
|
||||||
char buffer[4096]; // ñàì áóôåð äëÿ ñòðîêè
|
char buffer[4096]; // ñàì áóôåð äëÿ ñòðîêè
|
||||||
@@ -49,8 +45,8 @@ int getVolumeInformation() {
|
|||||||
long getFileSize(LPCSTR path) {
|
long getFileSize(LPCSTR path) {
|
||||||
printf("- GetFileSize:\n");
|
printf("- GetFileSize:\n");
|
||||||
HANDLE hFile;
|
HANDLE hFile;
|
||||||
DWORD fileSize;
|
unsigned long long high;
|
||||||
unsigned long structLargeInt;
|
unsigned long long low;
|
||||||
// Îòêðûòèå ôàéëà
|
// Îòêðûòèå ôàéëà
|
||||||
hFile = CreateFile(path,
|
hFile = CreateFile(path,
|
||||||
GENERIC_READ,
|
GENERIC_READ,
|
||||||
@@ -59,15 +55,20 @@ long getFileSize(LPCSTR path) {
|
|||||||
OPEN_EXISTING,
|
OPEN_EXISTING,
|
||||||
FILE_ATTRIBUTE_NORMAL,
|
FILE_ATTRIBUTE_NORMAL,
|
||||||
NULL);
|
NULL);
|
||||||
|
if (hFile == INVALID_HANDLE_VALUE) {
|
||||||
|
printf("Íå óäàëîñü îòêðûòü ôàéë\n");
|
||||||
|
CloseHandle(hFile);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
// Ïîëó÷åíèå ðàçìåðà ôàéëà
|
// Ïîëó÷åíèå ðàçìåðà ôàéëà
|
||||||
structLargeInt = GetFileSize(hFile, NULL);
|
low = GetFileSize(hFile, (LPDWORD) &high);
|
||||||
|
|
||||||
// Çàêðûòèå ôàéëà
|
// Çàêðûòèå ôàéëà
|
||||||
CloseHandle(hFile);
|
CloseHandle(hFile);
|
||||||
|
|
||||||
// Âûâîä ðàçìåðà ôàéëà
|
// Âûâîä ðàçìåðà ôàéëà
|
||||||
printf("Ðàçìåð ôàéëà: %lu áàéò\n", structLargeInt);
|
printf("Ðàçìåð ôàéëà: %llu\n", high << 32 | low);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
int findNextFile() {
|
int findNextFile() {
|
||||||
@@ -118,6 +119,11 @@ int compareFileTime(LPCSTR path_1, LPCSTR path_2) {
|
|||||||
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);
|
||||||
@@ -133,6 +139,11 @@ int compareFileTime(LPCSTR path_1, LPCSTR path_2) {
|
|||||||
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);
|
||||||
|
|
||||||
@@ -182,31 +193,36 @@ int setLocalTime() {
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
void getFileAttributes(LPCSTR path){
|
int getFileAttributes(LPCSTR path){
|
||||||
DWORD fileAttributes = GetFileAttributes(path);
|
DWORD fileAttributes = GetFileAttributes(path);
|
||||||
|
if (fileAttributes == INVALID_FILE_ATTRIBUTES)
|
||||||
|
{
|
||||||
|
printf("Îøèáêà îòêðûòèÿ ôàéëà.\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
if (fileAttributes & FILE_ATTRIBUTE_READONLY) {
|
if (fileAttributes & FILE_ATTRIBUTE_READONLY) {
|
||||||
printf("\n/Read-only");
|
printf("\n/Read-only");
|
||||||
}
|
}
|
||||||
if (fileAttributes & FILE_ATTRIBUTE_HIDDEN) {
|
if (fileAttributes & FILE_ATTRIBUTE_HIDDEN) {
|
||||||
printf("\n/Hidden");
|
printf("\n/Hidden");
|
||||||
}
|
}
|
||||||
if (fileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
|
if (fileAttributes & FILE_ATTRIBUTE_ARCHIVE) {
|
||||||
printf("\n/Directory");
|
printf("\n/Directory");
|
||||||
}// è òàê äàëåå äëÿ äðóãèõ àòðèáóòîâ ôàéëà...
|
}// è òàê äàëåå äëÿ äðóãèõ àòðèáóòîâ ôàéëà...
|
||||||
printf("\n");
|
printf("\n");
|
||||||
}
|
}
|
||||||
int setFileAttributes(LPCSTR path) {
|
int setFileAttributes(LPCSTR path, DWORD dwFileAttributes) {
|
||||||
|
|
||||||
printf("- SetFileAttributes:\n");
|
printf("- SetFileAttributes:\n");
|
||||||
// Góòü ê ôàéëó
|
// Góòü ê ôàéëó
|
||||||
// Ñáðàñûâàåì àòðèáóòû ôàéëà
|
// Ñáðàñûâàåì àòðèáóòû ôàéëà
|
||||||
SetFileAttributes(path, (DWORD) NULL);
|
SetFileAttributes(path, (DWORD) 0);
|
||||||
// Òåêóùèå àòðèáóòû ôàéëà
|
// Òåêóùèå àòðèáóòû ôàéëà
|
||||||
printf("\tÒåêóùèå àòðèáóòû ôàéëà ÄÎ çàìåíû: ");
|
printf("\tÒåêóùèå àòðèáóòû ôàéëà ÄÎ çàìåíû: ");
|
||||||
getFileAttributes(path);
|
getFileAttributes(path);
|
||||||
|
|
||||||
// Óñòàíàâëèâàåì àòðèáóòû ôàéëà
|
// Óñòàíàâëèâàåì àòðèáóòû ôàéëà
|
||||||
DWORD newFileAttributes = FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_DIRECTORY;
|
DWORD newFileAttributes = dwFileAttributes;
|
||||||
BOOL result = SetFileAttributes( path, (DWORD) newFileAttributes);
|
BOOL result = SetFileAttributes( path, (DWORD) newFileAttributes);
|
||||||
|
|
||||||
printf("\tÒåêóùèå àòðèáóòû ôàéëà ÏÎÑËÅ çàìåíû: ");
|
printf("\tÒåêóùèå àòðèáóòû ôàéëà ÏÎÑËÅ çàìåíû: ");
|
||||||
@@ -254,147 +270,31 @@ int createFile() {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// --- Èíôîðìàöèÿ î êëàâèàòóðå
|
|
||||||
void getKeyboardType(){
|
|
||||||
printf("\t- getKeyboardType()\n");
|
|
||||||
BYTE typeValue;
|
|
||||||
typeValue = GetKeyboardType(0);
|
|
||||||
printf("- Èíôîðìàöèÿ î êëàâèàòóðå:\n");
|
|
||||||
switch (typeValue) {
|
|
||||||
case 1:
|
|
||||||
printf("83-êëàâèøíàÿ êëàâèàòóðà äëÿ IBM PC/XT -ñîâìåñòèìûõ êîìïüþòåðîâ\n");
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
printf("102-êëàâèøíàÿ êëàâèàòóðà Olivetti\n");
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
printf("IBM PC/AT -ñîâìåñòèìàÿ êëàâèàòóðà (84êëàâèøè)\n");
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
printf("Ðàñøèðåííàÿ IBM-êëàâèàòóðà (101- èëè 102 êëàâèøè)\n");
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
printf("Êëàâèàòóðà Nokia 1050\n");
|
|
||||||
break;
|
|
||||||
case 6:
|
|
||||||
printf("Êëàâèàòóðà Nokia 9140\n");
|
|
||||||
break;
|
|
||||||
case 7:
|
|
||||||
printf("ßïîíñêàÿ êëàâèàòóðà\n");
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
printf("Âèäèìî êëàâèàòóðû íå ñóùåñòâóåò\n");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
printf("×èñëî ôóíêöèîíàëüíûõ êëàâèø = %d\n", GetKeyboardType(2L));
|
|
||||||
} // ïîçâîëÿåò ïîëó÷èòü òèï êëàâèàòóðû è êîëè÷åñòâî ôóíêöèîíàëüíûõ êëàâèø
|
|
||||||
void getKeyboardState(){
|
|
||||||
printf("\n\t- getKeyboardState()\n");
|
|
||||||
BYTE keyState[256] = {0};
|
|
||||||
|
|
||||||
// Ïîëó÷åíèå ñîñòîÿíèÿ âñåõ êëàâèø
|
int main() {
|
||||||
GetKeyboardState(keyState);
|
|
||||||
|
|
||||||
// Âûâîä íîìåðîâ íàæàòûõ êëàâèø â êîíñîëü
|
|
||||||
printf("Íà ìîìåíò çàïóñêà ïðîãðàììû áûëè íàæàòû êëàâèøè ïîä íîìåðàìè:\n");
|
|
||||||
for (int i = 0; i < 256; i++) {
|
|
||||||
if (keyState[i] & 0x80) {
|
|
||||||
printf("Êëàâèøà %d\n", i);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} // ïîçâîëÿåò ïîëó÷èòü òåêóùåå ñîñòîÿíèå âñåõ êëàâèø (êëàâèàòóðû è ìûøè)
|
|
||||||
// --- Èíôîðìàöèÿ î ìûøè
|
|
||||||
void getCursorPos(){
|
|
||||||
printf("\t- getCursorPos()\n");
|
|
||||||
POINT cp;
|
|
||||||
GetCursorPos(&cp);
|
|
||||||
printf("Òåêóùàÿ ïîçèöèÿ êóðñîðà: (%ld, %ld)\n", cp.x, cp.y);
|
|
||||||
} // óêàçûâàåò ïîëîæåíèå êóðñîðà ìûøè
|
|
||||||
void getCaretBlinkTime(){
|
|
||||||
printf("\n\t- getCaretBlinkTime()\n");
|
|
||||||
printf("Âðåìÿ ìåðöàíèÿ êàðåòêè - %dìñ\n", GetCaretBlinkTime());
|
|
||||||
} // ïîçâîëÿåò ïîëó÷èòü âðåìÿ ìåðöàíèÿ êàðåòêè
|
|
||||||
void getSystemMetrics(){
|
|
||||||
printf("\n\t- getSystemMetrics()\n");
|
|
||||||
printf("Êîëè÷åñòâî êíîïîê ìûøè: %d\n", GetSystemMetrics(SM_CMOUSEBUTTONS));
|
|
||||||
} // ïîçâîëÿåò ïîëó÷èòü êîëè÷åñòâî êíîïîê ìûøè
|
|
||||||
// --- Óïðàâëÿþùèå ôóíêöèè
|
|
||||||
void showCursor(){
|
|
||||||
printf("\t- showCursor()\n");
|
|
||||||
printf ("Ñåé÷àñ êóðñîð èñ÷åçíåò íà 3 ñåê\n");
|
|
||||||
// CHAR age;
|
|
||||||
// scanf("%c", &age);
|
|
||||||
// sleep(1);
|
|
||||||
ShowCursor(FALSE);
|
|
||||||
// scanf("%c", &age);
|
|
||||||
sleep(3);
|
|
||||||
ShowCursor(TRUE);
|
|
||||||
printf ("Êóðñîð âåðíóëñÿ\n");
|
|
||||||
} // ïîêàçûâàåò è ñêðûâàåò êóðñîð
|
|
||||||
void swapMouseButton(){
|
|
||||||
printf("\n\t- swapMouseButton()\n");
|
|
||||||
printf ("Ñåé÷àñ íà 5 ñåêóíä îñíîâíûå êíîïêè ìûøè ïîìåíÿþòñÿ ìåñòàìè\n");
|
|
||||||
SwapMouseButton (1);
|
|
||||||
sleep(5);
|
|
||||||
SwapMouseButton (0);
|
|
||||||
printf ("Êíîïêè ìûøè âåðíóëèñü íà ñâîè ìåñòà\n");
|
|
||||||
} // ïîçâîëÿåò ïîìåíÿòü ôóíêöèè êíîïîê ìåæäó ñîáîé
|
|
||||||
void setCaretBlinkTime(){
|
|
||||||
printf("\n\t- setCaretBlinkTime()\n");
|
|
||||||
UINT blinkTime = GetCaretBlinkTime();
|
|
||||||
UINT blinkTime_old = GetCaretBlinkTime();
|
|
||||||
printf ("Ñåé÷àñ íà 5 ñåêóíä êàðåòêà áóäåò ìåðöàòü áûñòðåå\n");
|
|
||||||
SetCaretBlinkTime(blinkTime / 20);
|
|
||||||
sleep(5);
|
|
||||||
SetCaretBlinkTime (blinkTime_old);
|
|
||||||
printf ("Êàðåòêà ñíîâà ìåðöàåò êàê îáû÷íî\n");
|
|
||||||
sleep(5);
|
|
||||||
} // ïîçâîëÿåò çàäàòü âðåìÿ ìåðöàíèÿ êàðåòêè
|
|
||||||
void setCursorPos(){
|
|
||||||
printf("\n\t- setCursorPos()\n");
|
|
||||||
printf("Ñåé÷àñ êóðñîð óñòàíîâèòñÿ â íóëåâóþ ïîçèöèþ\n");
|
|
||||||
INT y = 0, x = 0;
|
|
||||||
sleep(2);
|
|
||||||
SetCursorPos(x,y);
|
|
||||||
printf("Êóðñîð óñòàíîâëåí â íóëåâóþ ïîçèöèþ\n");
|
|
||||||
} // ïîçâîëÿåò çàäàòü ïîçèöèþ êóðñîðà
|
|
||||||
void systemParametersInfo(){
|
|
||||||
printf("\n\t- systemParametersInfo()\n");
|
|
||||||
PVOID mouseSpeed;
|
|
||||||
PVOID mouseSpeed_new = (PVOID) 1;
|
|
||||||
// Ïîëó÷àåì èíôîðìàöèþ î íàñòðîéêàõ ìûøè
|
|
||||||
SystemParametersInfo(SPI_GETMOUSESPEED, 0, &mouseSpeed, 0);
|
|
||||||
// Ïðîâåðÿåì ðåçóëüòàò âûïîëíåíèÿ ôóíêöèè
|
|
||||||
printf("Òåêóùàÿ ñêîðîñòü ìûøè: %d\n", mouseSpeed);
|
|
||||||
printf("Ñåé÷àñ ñêîðîñòü ìûøè ñèëüíî óìåíüøèòñÿ íà 3 ñåêóíäû\n");
|
|
||||||
sleep(1);
|
|
||||||
SystemParametersInfo(SPI_SETMOUSESPEED, 0, mouseSpeed_new, 0);
|
|
||||||
sleep(3);
|
|
||||||
SystemParametersInfo(SPI_SETMOUSESPEED, 0, mouseSpeed, 0);
|
|
||||||
printf("Ñêîðîñòü ìûøè âîññòàíîâëåíà\n");
|
|
||||||
} // äëÿ óñòàíîâêè ñêîðîñòè ïåðåìåùåíèÿ êóðñîðà
|
|
||||||
|
|
||||||
void main() {
|
|
||||||
setlocale(LC_ALL, "Rus");
|
setlocale(LC_ALL, "Rus");
|
||||||
|
printf("\n----------------------------\n----------------------------\n----------------------------\n");
|
||||||
printf("--------------------------------------------------");
|
printf("\tÈíôîðìàöèÿ î äèñêàõ:\n");
|
||||||
printf("\n\t\t\t/ Èíôîðìàöèÿ î êëàâèàòóðå:\n");
|
// getLogicalDriveStrings();// + ïîëó÷åíèå áóêâ äèñêîâ
|
||||||
getKeyboardType(); // + ïîçâîëÿåò ïîëó÷èòü òèï êëàâèàòóðû è êîëè÷åñòâî ôóíêöèîíàëüíûõ êëàâèø
|
// getVolumeInformation();// + ïîëó÷åíèå èíôîðìàöèè î ôàéëîâîé ñèñòåìå âûáðàííîãî ëîãè÷åñêîãî äèñêà
|
||||||
getKeyboardState(); // + ïîçâîëÿåò ïîëó÷èòü òåêóùåå ñîñòîÿíèå âñåõ êëàâèø (êëàâèàòóðû è ìûøè)
|
printf("\n------------------------------------------\n");
|
||||||
|
printf("\tÈíôîðìàöèÿ î ôàéëàõ è äèðåêòîðèÿõ:\n");
|
||||||
printf("\n--------------------------------------------");
|
getFileSize("text.txt");// + ïîëó÷àåò ðàçìåð ôàéëà
|
||||||
printf("\n\t\t\t/ Èíôîðìàöèÿ î ìûøè:\n");
|
getFileSize("texàâïàâït.txt");// + ïîëó÷àåò ðàçìåð ôàéëà
|
||||||
getCursorPos(); // + óêàçûâàåò ïîëîæåíèå êóðñîðà ìûøè
|
// findNextFile();// + ïîèñê ñëåäóþùåãî ôàéëà â ìåñòå ïîèñêà
|
||||||
getCaretBlinkTime(); // + ïîçâîëÿåò ïîëó÷èòü âðåìÿ ìåðöàíèÿ êàðåòêè
|
// getWindowsDirectory();// + ïóòü ê îñíîâíîìó êàòàëîãó âèíäîâñ
|
||||||
getSystemMetrics(); // + ïîçâîëÿåò ïîëó÷èòü êîëè÷åñòâî êíîïîê ìûøè
|
compareFileTime("text.txt", "text2.txt.");// + îïðåäåëåíèå êàêîé èç ôàéëîâ áîëåå íîâûé
|
||||||
|
printf("\n----------------------------\n");
|
||||||
printf("\n----------------------------------------------");
|
printf("\tÓïðàâëÿþùèå ôóíêöèè:\n");
|
||||||
printf("\n\t\t\t/ Óïðàâëÿþùèå ôóíêöèè:\n");
|
// setLocalTime();// + óñòàíîâèòü òåêóùóþ äàòó è âðåìÿ
|
||||||
// showCursor(); // - ïîêàçûâàåò è ñêðûâàåò êóðñîð
|
printf("\tÂâåäèòå íóæíûé àòðèáóò äëÿ óñòàíîâêè ôàéëó: 1 - òîëüêî äëÿ ÷òåíèÿ, 2 - ñêðûòûé, 3 - àðõèâíûé\n");
|
||||||
// swapMouseButton(); // + ïîçâîëÿåò ïîìåíÿòü ôóíêöèè êíîïîê ìåæäó ñîáîé
|
int chislo = 0;
|
||||||
// setCaretBlinkTime(); // +- ïîçâîëÿåò çàäàòü âðåìÿ ìåðöàíèÿ êàðåòêè
|
scanf("%d", &chislo);
|
||||||
// setCursorPos(); // + ïîçâîëÿåò çàäàòü ïîçèöèþ êóðñîðà
|
if (chislo == 1 || chislo == 2 || chislo == 3)
|
||||||
// systemParametersInfo(); // + äëÿ óñòàíîâêè ñêîðîñòè ïåðåìåùåíèÿ êóðñîðà
|
setFileAttributes("text3.txt", chislo);// + óñòàíîâêà ôàéëîâûõ àòðèáóòîâ
|
||||||
printf("\nÄëÿ âûõîäà íàæìèòå Enter\n");
|
else {
|
||||||
scanf("%c");
|
printf("Óêàçàí íåâåðíûé íîìåð àòðèáóòà\n");
|
||||||
|
}
|
||||||
|
// createFile();// + ñîçäàòü/îòêðûòü ôàéë
|
||||||
|
// CopyFile("text.txt", "text3.txt", 0);// ñêîïèðîâàòü ôàéë
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user