Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Время чтения данных с заданного цилиндра и среднее время перехода блока головок к соседнему цилиндру FDD или HDD Нужно написать прогу на Си Условие:. Время чтения данных с заданного цилиндра и среднее время перехода блока головок к соседнему цилиндру FDD или HDD. https://www.cyberforum.ru/ cpp/ thread453254.html C++ SDL Графика.
Добрый день! Не могу соединить два проекта, в одном изображение переводится в ч\б, во втором тонируется изображение. Мне нужно получить эффект сепии(нужно сначала сделать его ч\б затем тонировать). Буду благодарен за помощь!!
C++ выудить информацию о материнской плате. есть возможность с помощью с++ выудить инфу о матплате. Такие параметры, как частота шины, название, разрядность( такая же как у проца) вроде как достаются) но не пока понятия не имею как... поможите кто чем может пожалуйста) https://www.cyberforum.ru/ cpp/ thread452990.html C++ SDL - Конфигурирование https://www.cyberforum.ru/ cpp/ thread452871.html
Всем доброго времени суток. Недавно натолкнулся проблему с настройкой SDL. Дело в том, что мне нужно отключить переадресацию stdio с консоли на файлы, что делается простым конфигурированием с ключом --disable-stdio-redirect и компилированием исходников SDL. Скачал исходники - и вот первая проблема: невозможность штатного конфигурирования под Windows. Удивлён. Запустил Mandriva 2011. Попробовал...
снимать данные с камеры и сравнивать их с БД C++
Написать программу которая будет снимать данные с камеры и сравнивать их с БД, в которую внесены изображения и если нашлись совпадение, то через динамик выводится сообщение определяющее данное изображение!:cry:
C++ Нужен калькулятор полиномов (многочленов) калькулятор полиномов(многочленов) нужно +-*\ полиномы, прошу помоч прога на С++ или паскаль(делфи) https://www.cyberforum.ru/ cpp/ thread452514.html
C++ Обработка изображений - стандартные эффекты фотошопа https://www.cyberforum.ru/ cpp/ thread452319.html
Подскажите пожалуйста какую нибудь библиотеку на C\C++ или даже C# с помощью которой можно было бы применять некоторые эффекты для фото аля фотошоп. Всякие стандартные фильтры, деформации, и т.д. ( как пример - стандартные эффекты фотошопа ) Если таковых нет, подскажите хотя бы в какую сторону копать, чтоб осуществить задуманное. Спасибо.
C++ Проблема с программным нажатием кнопок тулбара в новых интерфейсах
Есть задача: Нажать программно кнопку в интерфейсе чужой программы находящейся на тулбаре. Желательно это реализовать через SendMessage/PostMessage, а не через события Однако как оказалось тулбар то там не совсем обычный, так как на сообщение SendMessage(tbHandle, TB_BUTTONCOUNT, 0, 0); //tbHandle хэндл нужного контрола //TB_BUTTONCOUNT сообщение для получения кол-ва контролов на тулбаре...
C++ Дамп памяти https://www.cyberforum.ru/ cpp/ thread451689.html
Здравствуйте, подскажите, пожалуйста, как можно сделать дамп памяти флешки? Добавлено через 1 минуту Под windows Пишу в Visual c++ 2008 express
C++ Конвертер программы с языка Си..... https://www.cyberforum.ru/ cpp/ thread451043.html
Вообщем дали курсовую писать. И надо написать Конвертер программы с языка Си на язык Паскаль. В голове стразу же представилось какая форма..и прочее..а вот представления что и как делать вообще нет.. Подскажите с чего начать, что прочитать..или как делать? Не прощу ведь готовую программу))))) Зарание спасибо! Написать надо на Си++
Проверка значения v8 на принадлежность к Integer. C++
Здравствуйте. У меня следующая проблема: мне нужно проверить, является ли значение, переданное в функцию, 64х-битным целым. Но для проверки в v8 есть только функции IsInt32() и IsNumber(). Но не вернет ли IsNumber false, если проверяемое значение окажется целым числом, а не числом с плавающей точкой? Или в v8 все целые числа 32х битные, а int64_t IntegerValue() существует только для...
C++ Как сделать так, чтобы в окне, созданом OpenGL, рисовали 2 потока? Вот не знаю, где создать тему, с одной стороны это надо в разделе OpenGL, с другой стороны- там чисто художники, а здесь именно программёрская задача. Короче, есть прога и она рисует красный квадратик на синем фоне. Как запустить второй поток, чтобы он рисовал рядышком квадратик? В одном-то потоке я два квадрата нарисую, но мне надо чтобы каждый поток рисовал свой квадрат! Там, короче есть... https://www.cyberforum.ru/ cpp/ thread450632.html
0 / 0 / 0
Регистрация: 26.02.2012
Сообщений: 5
26.02.2012, 23:03  [ТС] 0

SIGINT с OpenSSL - C++ - Ответ 2530133

26.02.2012, 23:03. Показов 1856. Ответов 6
Метки (Все метки)

Ответ

Приведу куски кода из исходничков, может, чем-нибудь помогут.
Юзание GetProcAddress(dll,"CreateToolhelp32Snapshot");
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#include <tlhelp32.h>
#ifdef _WIN32_WCE
# define DLLNAME "TOOLHELP.DLL"
#else
# ifdef MODULEENTRY32
# undef MODULEENTRY32   /* unmask the ASCII version! */
# endif
# define DLLNAME "KERNEL32.DLL"
#endif
 
typedef HANDLE (WINAPI *CREATETOOLHELP32SNAPSHOT)(DWORD, DWORD);
typedef BOOL (WINAPI *CLOSETOOLHELP32SNAPSHOT)(HANDLE);
typedef BOOL (WINAPI *MODULE32)(HANDLE, MODULEENTRY32 *);
 
static int win32_pathbyaddr(void *addr,char *path,int sz)
    {
    HMODULE dll;
    HANDLE hModuleSnap = INVALID_HANDLE_VALUE; 
    MODULEENTRY32 me32; 
    CREATETOOLHELP32SNAPSHOT create_snap;
    CLOSETOOLHELP32SNAPSHOT  close_snap;
    MODULE32 module_first, module_next;
    int len;
 
    if (addr == NULL)
        {
        union   { int(*f)(void*,char*,int); void *p; } t =
            { win32_pathbyaddr };
        addr = t.p;
        }
 
    dll = LoadLibrary(TEXT(DLLNAME));
    if (dll == NULL)
        {
        DSOerr(DSO_F_WIN32_PATHBYADDR,DSO_R_UNSUPPORTED);
        return -1;
        }
 
    create_snap = (CREATETOOLHELP32SNAPSHOT)
        GetProcAddress(dll,"CreateToolhelp32Snapshot");
    if (create_snap == NULL)
        {
        FreeLibrary(dll);
        DSOerr(DSO_F_WIN32_PATHBYADDR,DSO_R_UNSUPPORTED);
        return -1;
        }
    /* We take the rest for granted... */
#ifdef _WIN32_WCE
    close_snap = (CLOSETOOLHELP32SNAPSHOT)
        GetProcAddress(dll,"CloseToolhelp32Snapshot");
#else
    close_snap = (CLOSETOOLHELP32SNAPSHOT)CloseHandle;
#endif
    module_first = (MODULE32)GetProcAddress(dll,"Module32First");
    module_next  = (MODULE32)GetProcAddress(dll,"Module32Next");
 
    hModuleSnap = (*create_snap)(TH32CS_SNAPMODULE,0); 
    if( hModuleSnap == INVALID_HANDLE_VALUE ) 
        { 
        FreeLibrary(dll);
        DSOerr(DSO_F_WIN32_PATHBYADDR,DSO_R_UNSUPPORTED);
        return -1;
        } 
 
    me32.dwSize = sizeof(me32); 
 
    if(!(*module_first)(hModuleSnap,&me32)) 
        { 
        (*close_snap)(hModuleSnap);
        FreeLibrary(dll);
        DSOerr(DSO_F_WIN32_PATHBYADDR,DSO_R_FAILURE);
        return -1;
        }
 
    do  { 
        if ((BYTE *)addr >= me32.modBaseAddr &&
            (BYTE *)addr <  me32.modBaseAddr+me32.modBaseSize)
            {
            (*close_snap)(hModuleSnap);
            FreeLibrary(dll);
#ifdef _WIN32_WCE
# if _WIN32_WCE >= 101
            return WideCharToMultiByte(CP_ACP,0,me32.szExePath,-1,
                            path,sz,NULL,NULL);
# else
            len = (int)wcslen(me32.szExePath);
            if (sz <= 0) return len+1;
            if (len >= sz) len=sz-1;
            for(i=0;i<len;i++)
                path[i] = (char)me32.szExePath[i];
            path[len++] = 0;
            return len;
# endif
#else
            len = (int)strlen(me32.szExePath);
            if (sz <= 0) return len+1;
            if (len >= sz) len=sz-1;
            memcpy(path,me32.szExePath,len);
            path[len++] = 0;
            return len;
#endif
            } 
        } while((*module_next)(hModuleSnap, &me32)); 
 
    (*close_snap)(hModuleSnap); 
    FreeLibrary(dll);
    return 0;
    }
Функция OPENSSL_isservice
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#if defined(_WIN32_WINNT) && _WIN32_WINNT>=0x0333
int OPENSSL_isservice(void)
{ HWINSTA h;
  DWORD len;
  WCHAR *name;
  static union { void *p; int (*f)(void); } _OPENSSL_isservice = { NULL };
 
    if (_OPENSSL_isservice.p == NULL) {
    HANDLE h = GetModuleHandle(NULL);
    if (h != NULL)
        _OPENSSL_isservice.p = GetProcAddress(h,"_OPENSSL_isservice");
    if (_OPENSSL_isservice.p == NULL)
        _OPENSSL_isservice.p = (void *)-1;
    }
 
    if (_OPENSSL_isservice.p != (void *)-1)
    return (*_OPENSSL_isservice.f)();
 
    (void)GetDesktopWindow(); /* return value is ignored */
 
    h = GetProcessWindowStation();
    if (h==NULL) return -1;
 
    if (GetUserObjectInformationW (h,UOI_NAME,NULL,0,&len) ||
    GetLastError() != ERROR_INSUFFICIENT_BUFFER)
    return -1;
 
    if (len>512) return -1;     /* paranoia */
    len++,len&=~1;          /* paranoia */
    name=(WCHAR *)alloca(len+sizeof(WCHAR));
    if (!GetUserObjectInformationW (h,UOI_NAME,name,len,&len))
    return -1;
 
    len++,len&=~1;          /* paranoia */
    name[len/sizeof(WCHAR)]=L'\0';  /* paranoia */
#if 1
    /* This doesn't cover "interactive" services [working with real
     * WinSta0's] nor programs started non-interactively by Task
     * Scheduler [those are working with SAWinSta]. */
    if (wcsstr(name,L"Service-0x")) return 1;
#else
    /* This covers all non-interactive programs such as services. */
    if (!wcsstr(name,L"WinSta0"))   return 1;
#endif
    else                return 0;
}
#else
int OPENSSL_isservice(void) { return 0; }
#endif


Вернуться к обсуждению:
SIGINT с OpenSSL C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.02.2012, 23:03
Готовые ответы и решения:

Обработка SIGINT
Изначально написан ЭХО-сервер, который работает со многими клиентами на одном порте. Работает...

сигналы SIGINT SIGABORT
нужно организовать программу перехвата сигналов: 1. SIGINT - при нажатии ctrl+c 2. SIGABRT - при...

Сигнал SIGINT и процессы
Здравствуйте, форумчане! В Си новичок, поэтому обращаюсь за советом, нагло прошу помощи. На...

Прерывание SIGINT. Почему не завершается программа?
Здравствуйте. Решал такую задачу: 12. Написать программу, предоставляющую информацию обо всех...

6
26.02.2012, 23:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.02.2012, 23:03
Помогаю со студенческими работами здесь

Обработка получения сигналов (sigabrt, sigfpe, sigill, sigint, sigsegv, sigterm)
Написать программу, обрабатывающую получение сигналов (SIGABRT, SIGFPE, SIGILL, SIGINT, SIGSEGV,...

Как при срабатывании SIGINT правильно передать значение переменной i в функцию closing
Имеется код: #include &lt;signal.h&gt; #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;unistd.h&gt; ...

OpenSSl
Добрый вечер! Помогите с OpenSSL. Вообще не разбираюсь в этой системе, т.к. лекций не было, а...

OpenSSL 1.1.1
Отвалились программы на Windows и Linux. Путём отладки выяснилась, что проблема из-за недавней...

Установка OpenSSL
Устанавливаю библиотеку OpenSSL по инструкции: &gt; perl Configure VC-WIN64A &gt; ms\do_win64a &gt;...

PHP + Openssl
Доброго времени суток. Вместе с обновлением Debian обновился openssl, в нем была включена поддержка...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru