Познавательный блог Мобильная врсия

Страницы

Промо

Узнаём Reget и CuteFtp Download Directory на C++

Узнаём Reget и CuteFtp Download Directory на C++. Большинство программ хранит настройки в системном реестре. Так и папка разных FTP и Download менеджеров, куда скачиваются все файлы тоже обозначена там. В примере ниже мы узнаем путь к папке CuteFTP 5.0 и Reget Deluxe.

#include <stdio.h>
#include <windows.h>

int main(int argc, char* argv[])
{
//-------------------------------
// Cute Ftp Download Directory
//-------------------------------
HKEY cKey;
unsigned char CuteFTP[512];
DWORD CuteFTPPath = sizeof(CuteFTP);
RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\GlobalSCAPE\\CuteFTP 5.0\\CuteFTP", 0, KEY_QUERY_VALUE, &cKey);
RegQueryValueEx(cKey, "DLPath", NULL, NULL, CuteFTP, &CuteFTPPath);
RegCloseKey(cKey);
//------------------------------
printf("%s",CuteFTP);
getchar();
return 0;
}

Читать полностью →

Работа с системным реестром Windows на C++

Работа с системным реестром Windows на C++. В сегодняшней статейке, я расскажу вам, как вы можете читать, писать ключи в реестр, создавать разделы в реестре и т.д. Функции RegOpenKeyEx, RegQueryValueEx, RegCreateKeyEx, RegCloseKey. В примере ниже я покажу как узнать куда сохраняет настройки программа Reget. А именно, как изменить станартную папку закачки.

#include <stdio.h>
#include <windows.h>

int main(int argc, char* argv[])
{
//-------------------------------
HKEY rKey;
unsigned char Reget[512];
DWORD RegetPath = sizeof(Reget);
RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\ReGet Software\\ReGetDx\\History\\Download\\SaveTo", 0, KEY_QUERY_VALUE, &rKey);
RegQueryValueEx(rKey, "A", NULL, NULL, Reget, &RegetPath);
RegCloseKey(rKey);
//------------------------------
printf("%s",Reget);
getchar();
return 0;
}

Читать полностью →

Где хранятся пути к стандартным пользовательским папкам

Где хранятся пути к стандартным пользовательским папкам. У каждого пользователя в системе Windows есть свой уникальный рабочий стол, панель закладок, панель быстрого запуска, мои документы, моя музыка, мои картинки и т.д. Так вот адреса и настройки всех этих папок можно легко вынуть из системного реестра.

Ниже приведен ко программы на C++, которая показывает все пути к этим папкам.

Читать полностью →

Как работать с курсором в Windows на C++

Как работать с курсором в Windows на C++. Для работы с курсором мы будем использовать фугкции WinAPI GetCursorPos и SetCursorPos. А также рассмотрим другие функции для работы с курсором.

Функция SetCursorPos перемещает курсор в заданные экранные координаты. Если новые координаты не внутри экранного прямоугольника, установленного самой последней функцией ClipCursor, Windows автоматически корректирует координаты так, чтобы курсор остался внутри прямоугольника.

Функция GetCursorPos извлекает информацию о позиции курсора, в экранных координатах.Функция SetCursor устанавливает форму курсора.

Функция ShowCursor отображает или скрывает курсор.

Функция ClipCursor ограничивает перемещение курсора в прямоугольной области на экране. Если последующая позиция курсора (установленная функцией SetCursorPos или мышью) лежит снаружи прямоугольника, Windows автоматически корректирует позицию, чтобы сохранить курсор внутри прямоугольной области.

Функция GetClipCursor извлекает информацию об экранных координатах прямоугольной области, в которой ограничен курсор.

Синтаксис всех этих функций легко найти в справочниках WinAPI или во встроенное справке компилятора.

Как узнать папку куда установлена Windows на C++

Как узнать папку куда установлена Windows на C++. Как определить папку WIndows. Функция

GetWindowsDirectory — возвращает путь к каталогу Windows. Этот каталог содержит файлы приложений Windows, файлы инициализации .ini и файлы справок .hlp. В этом каталоге вы можете хранить файлы инициализации и файлы справок своего приложения. Если приложение создает другие файлы, которые вы хотите хранить, не допуская к ним других пользователей, то помещайте их в каталог, указанный в переменной окружения HOMEPATH. При соответствующей установке этот каталог различен для всех пользователей.

GetWindowsDirectory(windir,sizeof(windir));

Читать полностью →

Как определить версию ОС Windows на C++

Как определить версию ОС Windows на C++. Новая реализация функции получения версии системы GetVersionEx():

BOOL GetVersionEx
(
LPOSVERSIONINFO lpVersionInfo // указатель на структуру,
//в которую будет получена информация.
);

Читать полностью →

Как жить в системе одному процессу С++.

Как жить в системе одному процессу С++. Данная программа позволит пресечь возможность запуска второго экземпляра программы. Тоесть, если программа уже запущена, то запустится 2 раз ей не удастся.

Функции CreateMutex() и ReleaseMutex().

Создается Mutex функцией CreateMutex():

HANDLE CreateMutex
(
LPSECURITY_ATTRIBUTES lpMutexAttributes, // атрибут безопастности
BOOL bInitialOwner, // флаг начального владельца
LPCTSTR lpName // имя объекта
);

Результатом будет дескриптор объекта mutex, если такое имя есть, то дескпритор существующего. Функция GetLastError() при вызове будет выдавать ERROR_ALREADY_EXISTS.

Читать полностью →

Как получить список запущенных процессов на C++

Перебор всех запущенных процессов на C++. Как получить список запущенных процессов? В этом примере мы определим, каким образом можно последовательно получить полный список всех процессов, запущенных в системе.

Функция CreateToolhelp32Snapshot возвращает Handle снимка процессов и динамических памятей, модулей и потоков, используемых процессами. Пример:

Читать полностью →

Сканер портов на C++

Сканер портов на C++.Технология работы для читавшего мануал по сокетам элементарна. Пробуем просканировать себя (127.0.0.1) по всем портам с 0 по 65535. Не забываем подключить winsock.h.

#include <stdio.h>
#include <
stdlib.h>
#include <winsock.h>

int sec = 0;
int main(int argc, char *argv[])
{
int sock;
struct sockaddr_in addr;
addr.sin_family = AF_INET;
addr.sin_addr.s_addr = inet_addr( "127.0.0.1");
sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);

for(sec=0; sec<=65535; sec++)
{
addr.sin_port = htons(sec);

if(connect(sock, (struct sockaddr*)&addr, sizeof(addr)) == 0)
{
printf("открытый порт: %d\n", sec);
}
}
getchar();
}

Ромашка



Поиск по сайту

Статистика

Мета

  Разработка и дизайн — StvPromo.ru