[ C / C++ ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. agrofyl2

    agrofyl2 New Member

    Joined:
    25 Apr 2008
    Messages:
    54
    Likes Received:
    4
    Reputations:
    0
    Такс.
    Значит разобрался я со даблкликом, могу запустить прогу с рабочего стола, вот так:
    Code:
           
     Sleep(3000);//чтоб успеть свернуть окно
    
    	POINT pt={25, 35};
    	    
    	HWND Wind = WindowFromPoint(pt);
    	SetCursorPos(pt.x, pt.y);
    	SendMessage(Wind, WM_LBUTTONDOWN, pt.x, pt.y);
    	SendMessage(Wind, WM_LBUTTONDBLCLK, pt.x, pt.y);
    	SendMessage(Wind, WM_LBUTTONUP, pt.x, pt.y); 
    Все ок.
    Дальше - пытаюсь закрыть открытую программу(Тотал Коммандер), кликнув по батону "закрыть", вот так:

    Code:
     Sleep(2000);
    
                POINT pt2={900, 100};
    	HWND Wind2 = WindowFromPoint(pt2);
    	SetCursorPos(pt2.x, pt2.y);
    	SendMessage(Wind, WM_LBUTTONDOWN, pt2.x, pt2.y);
    	SendMessage(Wind, WM_LBUTTONUP, pt2.x, pt2.y);
    
    Но ничего не получается...
    Сильно не пиннайте, я всего 3 дня с С++.

    ПС. Спасибо за помощь.
    ППС. Учебник у меня и вправду г.
     
    #1361 agrofyl2, 8 Aug 2008
    Last edited: 8 Aug 2008
  2. izlesa

    izlesa Elder - Старейшина

    Joined:
    3 Jan 2008
    Messages:
    112
    Likes Received:
    32
    Reputations:
    5
    2agrofyl2
    Нафига такие извращения для запуска сторонней проги?
    Прочти в МСДН про функцию CreateProcess.
    Далее, чтобы закрыть какойто процесс ненужно двигать указатель и имитировать нажатие клавиш тоже. Нужно всего лишь получить хэндл процесса (CreateProcess его кстати и вернёт, см подробней МСДН) и вызвать функцию TerminateProcess.

    Второе. Если ты лишь третий день изучаешь Си++ то тебе ещё рано изучать архитектуру винды.

    МСДН = msdn.microsoft.com
     
  3. agrofyl2

    agrofyl2 New Member

    Joined:
    25 Apr 2008
    Messages:
    54
    Likes Received:
    4
    Reputations:
    0
    1. Запуск проги просто пример. Давно хотел запустить прогу, которая сама могла бы кликать.
    А так то я знаю, что запустить/закрыть прогу лучше без мыши...
    2. Просто решил попробывать, как это происходит. Конечно лезть в винду мне пока рано.
     
  4. z01b

    z01b Муджахид

    Joined:
    5 Jan 2007
    Messages:
    494
    Likes Received:
    382
    Reputations:
    22
    Ты толком синтаксис не знаешь, а уже начал программировать на win api ...
     
  5. h17liNEr

    h17liNEr New Member

    Joined:
    25 Oct 2006
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Такой вопрос. Написал программу (работа с сокетами,клиент). Так вот .. просматриваю результат , что то передал сервер:
    printf("%x", buf);. Вообщем то всё норм. только вот проскакивает такое: FFFFFFC6. Насколько я понял ето тоже самое что C6. Откуда берётся FF FF FF??
     
  6. cash$$$

    cash$$$ Banned

    Joined:
    6 Jan 2008
    Messages:
    385
    Likes Received:
    246
    Reputations:
    10

    Имхо - это сокращенные имена для всех системных записей. Которые собраны в файлах.
    Некоторые записи имеют 32-разрядные имена и два 16-разрядных имени. Они выбирают Configuration записи, где FFFFFFC6 - это адрес
     
    #1366 cash$$$, 8 Aug 2008
    Last edited: 8 Aug 2008
  7. izlesa

    izlesa Elder - Старейшина

    Joined:
    3 Jan 2008
    Messages:
    112
    Likes Received:
    32
    Reputations:
    5
    2cash$$$
    эээ ... ты сам то понял, что сказал?

    2h17liNEr
    сорцы клиента и сервера в студию.
     
  8. Пиотр Тотамович

    Joined:
    8 Aug 2008
    Messages:
    6
    Likes Received:
    1
    Reputations:
    0
    какой тип имеют элементы массива buf? Если знаковый (по умолчанию все типы знаковые), то при помещении аргумента в стек он расширяется до 32 бит и старшие разряды заполняются знаком
     
  9. _nic

    _nic Elder - Старейшина

    Joined:
    5 May 2006
    Messages:
    651
    Likes Received:
    54
    Reputations:
    3
    Кто знает в какой строке реестра находится путь к "браузер по умолчанию" ??
     
  10. agrofyl2

    agrofyl2 New Member

    Joined:
    25 Apr 2008
    Messages:
    54
    Likes Received:
    4
    Reputations:
    0
    Эх. начав изучать C++ я понял- программирование сложно...
    Сложно потому что тупо.
    Столько премудростей чтобы сделать такую простую вещь.

    Стоит ли тратить на это время?
     
  11. merax

    merax Member

    Joined:
    3 Jul 2007
    Messages:
    18
    Likes Received:
    6
    Reputations:
    0
    /HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/Main/Check_Associations

    Если поставишь yes станет осел по умолчанию...
     
  12. M@X Dr.Akyla

    M@X Dr.Akyla Elder - Старейшина

    Joined:
    9 Apr 2008
    Messages:
    72
    Likes Received:
    44
    Reputations:
    0
    Если ты задаешь такой вопрос тогда... мой ответ: НЕТ.
     
  13. _Psi_

    _Psi_ Elder - Старейшина

    Joined:
    4 Apr 2008
    Messages:
    26
    Likes Received:
    20
    Reputations:
    0
    если язык первый, то не стоит учить, учи что-нибудь попроще(пхп, паскаль етс). Потом можно и С++ начать изучать.
    PS: Хотя я сам начал учить С++ первым, сначало было очень тяжело, потом ниче, освоился:)
     
  14. _nic

    _nic Elder - Старейшина

    Joined:
    5 May 2006
    Messages:
    651
    Likes Received:
    54
    Reputations:
    3
    Хм странно а как тогда некоторые проги определяют что у меня по умолчанию браузером Опера?
     
  15. merax

    merax Member

    Joined:
    3 Jul 2007
    Messages:
    18
    Likes Received:
    6
    Reputations:
    0
    Тут узнают

    HKEY_CURRENT_USER\Software\Clients\StartMenuInternet
     
  16. _nic

    _nic Elder - Старейшина

    Joined:
    5 May 2006
    Messages:
    651
    Likes Received:
    54
    Reputations:
    3
    Хм странно у меня Опера в :confused:
    HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet
     
  17. merax

    merax Member

    Joined:
    3 Jul 2007
    Messages:
    18
    Likes Received:
    6
    Reputations:
    0
    Конечно же не стоит. Это сложно и тупо. Изучай лучше месторасположение ближайших баров и рельеф тела девушки. Это больше тебе пригодится чем изучать С++ да потом еще ведь потом на нем программировать придется....


    А что должно быть если ты сам сказал, что у тебя опера :confused:
     
    #1377 merax, 13 Aug 2008
    Last edited: 13 Aug 2008
  18. hoty

    hoty Elder - Старейшина

    Joined:
    20 May 2008
    Messages:
    57
    Likes Received:
    10
    Reputations:
    1
    Хочу описать массив структур, кол-во структур = N.
    Если указываю вместо N число (например,10) - все работает.
    Но почему если указываю N (в выделденных местах) компиляторы (turbo c++ 3.0 и borland C 2) не хотят компилировать?
    Пишет ошибку "что-то вроде выхода границ массива".

    Но нужно испольовать N, помогите, плз.
     
  19. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    #define N 20
    без точки с запятой
     
    1 person likes this.
  20. _antony

    _antony Elder - Старейшина

    Joined:
    16 Jul 2008
    Messages:
    80
    Likes Received:
    43
    Reputations:
    0
    а все не правильно понял. пост можно стереть)
     
    #1380 _antony, 13 Aug 2008
    Last edited: 13 Aug 2008
Thread Status:
Not open for further replies.