SamForum.org  
SamLab.ws
Заблокированные пользователи

Вернуться   SamForum.org > Программирование > С
Важная информация

Ответ
 
Опции темы Опции просмотра
окна и виндовс
Старый Добавлено: 03.07.2010, 15:45
  (#1)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

Сообщение окна и виндовс

доброе время суток
мне нужно чтобы моя программа установила бы программу на компьютер, работала с кнопками окон.

я знаю вопрос конечно не простой но хотелось бы по немного начинать понимать как работает виндовс.
может книжку посоветуете или линк

я нашел как открыть ехе в С

Код:
      #include <stdlib.h>
      #include<stdio.h>
      #include<windows.h>
       int main()
      {
        ShellExecute(NULL,"open","d:\\vlc.exe",NULL,NULL,SW_SHOWNORMAL);
        return(0);
      }
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Старый Добавлено: 03.07.2010, 16:03
  (#2)
Exodus
Заблокирован
Заблокирован
 
Аватар для Exodus

По умолчанию

molodoi,
Код:
msdn

#include <windows.h> 
 
// Global variable 
 
HINSTANCE hinst; 
 
// Function prototypes. 
 
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int); 
InitApplication(HINSTANCE); 
InitInstance(HINSTANCE, int); 
LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARAM); 
 
// Application entry point. 
 
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevInstance, 
    LPSTR lpCmdLine, int nCmdShow) 
{ 
    MSG msg; 
 
    if (!InitApplication(hinstance)) 
        return FALSE; 
 
    if (!InitInstance(hinstance, nCmdShow)) 
        return FALSE; 
 
    BOOL fGotMessage;
    while ((fGotMessage = GetMessage(&msg, (HWND) NULL, 0, 0)) != 0 && fGotMessage != -1) 
    { 
        TranslateMessage(&msg); 
        DispatchMessage(&msg); 
    } 
    return msg.wParam; 
        UNREFERENCED_PARAMETER(lpCmdLine); 
} 
 
BOOL InitApplication(HINSTANCE hinstance) 
{ 
    WNDCLASSEX wcx; 
 
    // Fill in the window class structure with parameters 
    // that describe the main window. 
 
    wcx.cbSize = sizeof(wcx);          // size of structure 
    wcx.style = CS_HREDRAW | 
        CS_VREDRAW;                    // redraw if size changes 
    wcx.lpfnWndProc = MainWndProc;     // points to window procedure 
    wcx.cbClsExtra = 0;                // no extra class memory 
    wcx.cbWndExtra = 0;                // no extra window memory 
    wcx.hInstance = hinstance;         // handle to instance 
    wcx.hIcon = LoadIcon(NULL, 
        IDI_APPLICATION);              // predefined app. icon 
    wcx.hCursor = LoadCursor(NULL, 
        IDC_ARROW);                    // predefined arrow 
    wcx.hbrBackground = GetStockObject( 
        WHITE_BRUSH);                  // white background brush 
    wcx.lpszMenuName =  "MainMenu";    // name of menu resource 
    wcx.lpszClassName = "MainWClass";  // name of window class 
    wcx.hIconSm = LoadImage(hinstance, // small class icon 
        MAKEINTRESOURCE(5),
        IMAGE_ICON, 
        GetSystemMetrics(SM_CXSMICON), 
        GetSystemMetrics(SM_CYSMICON), 
        LR_DEFAULTCOLOR); 
 
    // Register the window class. 
 
    return RegisterClassEx(&wcx); 
} 
 
BOOL InitInstance(HINSTANCE hinstance, int nCmdShow) 
{ 
    HWND hwnd; 
 
    // Save the application-instance handle. 
 
    hinst = hinstance; 
 
    // Create the main window. 
 
    hwnd = CreateWindow( 
        "MainWClass",        // name of window class 
        "Sample",            // title-bar string 
        WS_OVERLAPPEDWINDOW, // top-level window 
        CW_USEDEFAULT,       // default horizontal position 
        CW_USEDEFAULT,       // default vertical position 
        CW_USEDEFAULT,       // default width 
        CW_USEDEFAULT,       // default height 
        (HWND) NULL,         // no owner window 
        (HMENU) NULL,        // use class menu 
        hinstance,           // handle to application instance 
        (LPVOID) NULL);      // no window-creation data 
 
    if (!hwnd) 
        return FALSE; 
 
    // Show the window and send a WM_PAINT message to the window 
    // procedure. 
 
    ShowWindow(hwnd, nCmdShow); 
    UpdateWindow(hwnd); 
    return TRUE; 
 
}

Последний раз редактировалось NeliyZar; 05.07.2010 в 00:27..
Exodus вне форума
Вверх
Ответить с цитированием
Старый Добавлено: 03.07.2010, 19:04
  (#3)
L.E.O.
Пользователь
Пользователь
 
Аватар для L.E.O.

По умолчанию

molodoi,
"Petzold Programming Windows 95", msdn - Для программирования под Виндовс с окнами.
Журнал "Хакер" - Для программирования с изменением внешних видов чужих окон.
Для линков, введи в гугл.
Хоть книга "Petzold..." предназначена для программирования в Windows 95, но это не важно, т.к. основной принцип не меняется с переходом на более новую систему. В новых Виндовс по сравнению с 4.0 только новые возможности (за исключением Виндовс Виста без SP).


Помог, скажи спасибо
L.E.O. вне форума Отправить личное сообщение для L.E.O.
Вверх
Ответить с цитированием
Этот пользователь сказал cпасибо за это полезное сообщение:
molodoi (04.07.2010)
Старый Добавлено: 04.07.2010, 19:43
  (#4)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

По умолчанию

Цитата:
Сообщение от virtuOS Посмотреть сообщение
Мне кажется, molodoi хочет управлять действиями другой программы через свою. Например, в своей программе открыть другую программу (калькулятор), запустить в ней какой-то процесс ("работала с кнопками окон", т.е. послать команду калькулятору 2+2, к примеру) и получить результат в своей программе. Тогда становится понятным зачем был приведен код вызова другой программы.


Если моё предположение верно, то этот журнал будет как раз то, что надо


вот это я и имел в виду.

L.E.O. спасибо за книжку, уже начал читать если есть еще какие нибудь книжки буду признателен за все.
может какую нибудь книжку по перифериям компа LPT, RS-232, usb и как работать с ними в "C" желательно чтоб понятно было что к чему, мне не лень читать

а инфа что в журналах хакер еще актуальна ??
а то я начал читать но полезного там ничего не находил (

спс всем кто откликнулись
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Старый Добавлено: 04.07.2010, 20:12
  (#5)
Exodus
Заблокирован
Заблокирован
 
Аватар для Exodus

По умолчанию

Цитата:
Сообщение от molodoi Посмотреть сообщение
LPT, RS-232, usb

DeviceIoControl

Добавлено через 4 минуты
molodoi,
а так если только начал изучать С, то не с того начинаешь...
Цитата:
Сообщение от CSerj Посмотреть сообщение
LPT, RS-232, usb и как работать с ними в "C"

это не С, а С++ уже...

Последний раз редактировалось NeliyZar; 05.07.2010 в 00:21..
Exodus вне форума
Вверх
Ответить с цитированием
Этот пользователь сказал cпасибо за это полезное сообщение:
molodoi (13.07.2010)
Старый Добавлено: 13.07.2010, 02:48
  (#6)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

По умолчанию

есть еще вопрос по этой теме.

вот что я хотел изначально сделать но стеснялся вам сказать )

у друга моего есть программка диск у него лицензионный все хорошо, но каждый раз при установке он должен звонить тому кто написал программу чтобы он ему сказал код ( )
попросил он меня сделать так чтобы он мог устанавливать программу сам.


и теперь вопрос

как легче всего сделать дело, как вообще это делается ?
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 03:11
  (#7)
Exodus
Заблокирован
Заблокирован
 
Аватар для Exodus

По умолчанию

Цитата:
Сообщение от molodoi Посмотреть сообщение
есть еще вопрос по этой теме.

вот что я хотел изначально сделать но стеснялся вам сказать )

у друга моего есть программка диск у него лицензионный все хорошо, но каждый раз при установке он должен звонить тому кто написал программу чтобы он ему сказал код ( )
попросил он меня сделать так чтобы он мог устанавливать программу сам.


и теперь вопрос

как легче всего сделать дело, как вообще это делается ?

1) что за программа?
2) создать по имеющемуся ключу примерный кейгенератор (тупо сидеть и подбирать ключ по шаблону).
3) перехват API программы на раннем этапе, перед проверкой на ключ (писал выше про это, потёрли уже: это FindWindow и т.д.).
4) disassembler, тоесть переложить программу на машинный язык или же если получиться в си код, изменить и перекомпилировать. (сложнее, так как могут быть protection security block) (итог crack)
5) создать другой исполнительный файл, который будет создавать удалённый поток, внедряться в другой исполнительный файл управлять процессами, памятью и т.д. (типа вирус, мега сложность, но возможность)

Последний раз редактировалось Exodus; 13.07.2010 в 04:26..
Exodus вне форума
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 03:24
  (#8)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

По умолчанию

CSerj, там база данных отправляешь ему это A1X69-48F4-F1A0-1AC1-28E8-019P0-19W00 и получаешь обратно то что нужно.

я подумал подобрать но не знаю как в поле вводить код
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 03:25
  (#9)
Exodus
Заблокирован
Заблокирован
 
Аватар для Exodus

По умолчанию

Цитата:
Сообщение от molodoi Посмотреть сообщение
там база данных

какая?
Exodus вне форума
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 03:33
  (#10)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

По умолчанию

язык думаю не имеет значения
[Ссылки могут видеть только зарегистрированные пользователи. ]
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 03:44
  (#11)
Exodus
Заблокирован
Заблокирован
 
Аватар для Exodus

По умолчанию

Цитата:
Сообщение от molodoi Посмотреть сообщение
язык думаю не имеет значения
[Ссылки могут видеть только зарегистрированные пользователи. ]

1) при каждом новом входе в программу требует новый ключ?
2) может в программе есть какой-нибудь файл конфигураций INI, в который можно прописать ключ и забыть о его вводе!
3) ломится ли эта программа в интернет?, тоесть трафик идёт при запуске программы, если идёт, можно вычислить на какой сервер и заблочить трафик для этого ip/host адреса!

Последний раз редактировалось Exodus; 13.07.2010 в 03:50..
Exodus вне форума
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 03:52
  (#12)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

По умолчанию

CSerj,
1. нет ключ тот же
2. то что видно на скрине это уже установленная программа
3. и доступ к инету у нее нету

в папке есть файл MachineID.dll может это поможет ??
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 03:59
  (#13)
Exodus
Заблокирован
Заблокирован
 
Аватар для Exodus

По умолчанию

Цитата:
Сообщение от molodoi Посмотреть сообщение
у друга моего есть программка диск у него лицензионный все хорошо, но каждый раз при установке он должен звонить тому кто написал программу чтобы он ему сказал код ( )

Цитата:
Сообщение от molodoi Посмотреть сообщение
1. нет ключ тот же

точнее... или есть различие код и ключ?
Exodus вне форума
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 04:05
  (#14)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

По умолчанию

не знаю я есть различие или нет но код который я отправляю
A1X69-48F4-F1A0-1AC1-28E8-019P0-19W00
не меняется при перезапуске программы
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 04:09
  (#15)
Exodus
Заблокирован
Заблокирован
 
Аватар для Exodus

По умолчанию

а обойти окно информацией и вводом кода невозможно? что пишет если сделать не так как положено?

Добавлено через 3 минуты
Цитата:
Сообщение от molodoi Посмотреть сообщение
не знаю я есть различие или нет но код который я отправляю
A1X69-48F4-F1A0-1AC1-28E8-019P0-19W00
не меняется при перезапуске программы

тогда при звонке какой код/ключ говорят?
Exodus вне форума
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 04:10
  (#16)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

По умолчанию

если делать не так как положено выдает ошибку , нажимаешь ок

ключ такого же типа что и код

A1X69-48F4-F1A0-1AC1-28E8-019P0-19W00
xxxxx-xxxx-xxxx-xxxx-xxxx-xxxxx-xxxxx

Последний раз редактировалось molodoi; 13.07.2010 в 04:14..
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 04:17
  (#17)
Exodus
Заблокирован
Заблокирован
 
Аватар для Exodus

По умолчанию

Цитата:
Сообщение от molodoi Посмотреть сообщение
в каком смысле обойти ??
я с диска устанавливаю ее все норм потом когда ее запускаешь видно то что на скрине можно в тестовом режиме запустить ее пару раз
это факты и если бы я знал как ее обойти то уже лег бы спать )

1) после пары раз что происходит?
2) а на лицензионном диске разве на обороте не написан код?, чтобы по сто раз не звонить
Exodus вне форума
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 04:21
  (#18)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

По умолчанию

неверный ключ можно вводить оч много раз

думаю тому кто создал программу нравится когда ему звонят
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 04:29
  (#19)
Exodus
Заблокирован
Заблокирован
 
Аватар для Exodus

По умолчанию

Цитата:
Сообщение от molodoi Посмотреть сообщение
неверный ключ можно вводить оч много раз

думаю тому кто создал программу нравится когда ему звонят

остается только дополнительная программа загрузчик с перехватом, либо crack этого exe файла
Exodus вне форума
Вверх
Ответить с цитированием
Старый Добавлено: 13.07.2010, 23:09
  (#20)
molodoi
Наблюдающий
Пользователь
 
Аватар для molodoi

По умолчанию

ну если уже знаем что делать пол работа как бы законченно )
Цитата:
остается только дополнительная программа загрузчик с перехватом, либо crack этого exe файла

как дальше продвигаться то. для новичка тут маловато полезной инфы
molodoi вне форума Отправить личное сообщение для molodoi
Вверх
Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Powered by vBulletin® Version 3.8.10
Copyright ©2000 - 2019, vBulletin Solutions, Inc. Перевод: zCarot

Время генерации страницы 0.20378 секунды с 16 запросами