FreeBasic
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.

Windows приложение закрывающее определенные окна

Участников: 3

Перейти вниз

Windows приложение закрывающее определенные окна Empty Windows приложение закрывающее определенные окна

Сообщение  creepd Пт Июн 20, 2014 5:27 pm

Вопрос такой: необходимо было сделать программу, которая закрывает определенное окно (определяется по заготовку окна), сделал следующее:
Код:
#include "windows.bi"

declare function WinMain ( byval hInst as HINSTANCE, _
byval hPrevInst as HINSTANCE, _
  byval szCmdLine as LPSTR, _
  byval iCmdShow as integer ) as integer

#define ClassName "SimpleWinClass"
#define AppName "Our First Window"
dim hModule as HINSTANCE
dim CommandLine as LPSTR
hModule = GetModuleHandle( NULL )

end WinMain( hModule,NULL,CommandLine, SW_SHOWNORMAL )

function  WndProc _
(byval hwnd as HWND, _
byval uMsg as UINT, _
byval wParam as WPARAM, _
byval lParam as LPARAM) as LRESULT
function = 0
select case uMsg  
case WM_DESTROY
PostQuitMessage(0)
exit function
end select
function = DefWindowProc(hWnd,uMsg,wParam,lParam)
end function

function WinMain _
(byval hInst as HINSTANCE, _
byval hPrevInst as HINSTANCE, _
byval szCmdLine as LPSTR, _  
byval iCmdShow as integer ) as integer  

dim wc as WNDCLASSEX
dim wMsg as MSG
dim hWnd as HWND

Dim fhwnd As HWND

Do
fhwnd = FindWindow(NULL, "чччччччччччч")
ShowWindow (fhwnd, SW_HIDE)
Loop

end function
Программа работает, но при этом подозрительно долго запускается и не запускается, если ее поместить в автозагрузку. Думается, что сделал я криво Smile Хотелось бы узнать, как это сделать правильно. Спасибо

creepd

Сообщения : 2
Дата регистрации : 2014-06-20

Вернуться к началу Перейти вниз

Windows приложение закрывающее определенные окна Empty Re: Windows приложение закрывающее определенные окна

Сообщение  trew Пт Июн 20, 2014 6:03 pm

creepd пишет:Вопрос такой: необходимо было сделать программу, которая закрывает определенное окно (определяется по заготовку окна), сделал следующее:

Ваша программа в лучшем случае скрывает (не закрывает) окно, но приложение при этом работает в фоновом режиме.

Для вашей задачи не нужно столько кода, вполне хватит этого:

Код:
#Include "windows.bi"

Dim fhwnd As HWND

Do
   fhwnd = FindWindow(NULL, "Калькулятор")
   If fhwnd Then
      MessageBox(0,"Окно найдено","",0)
      SendMessage(fhwnd,WM_CLOSE,0,0)
      Exit do
   EndIf
   Sleep(10)
Loop


trew

Сообщения : 331
Дата регистрации : 2010-10-14

Вернуться к началу Перейти вниз

Windows приложение закрывающее определенные окна Empty Re: Windows приложение закрывающее определенные окна

Сообщение  creepd Сб Июн 21, 2014 12:51 pm

да, так тоже работает) но проблема не решилась... при запуске 4-х секундная задержка

creepd

Сообщения : 2
Дата регистрации : 2014-06-20

Вернуться к началу Перейти вниз

Windows приложение закрывающее определенные окна Empty Re: Windows приложение закрывающее определенные окна

Сообщение  trew Сб Июн 21, 2014 3:12 pm

creepd пишет:да, так тоже работает) но проблема не решилась... при запуске 4-х секундная задержка

Эту причину ищите у себя (тормоза при запуске могут вызывать антивирусные программы или тот же встроенный защитник Windows).

trew

Сообщения : 331
Дата регистрации : 2010-10-14

Вернуться к началу Перейти вниз

Windows приложение закрывающее определенные окна Empty Re: Windows приложение закрывающее определенные окна

Сообщение  Замабувараев Вс Авг 03, 2014 5:52 am

Есть утилита командной строки, называется taskkill. Читайте описание в документации как пользоваться.
Замабувараев
Замабувараев

Сообщения : 99
Дата регистрации : 2008-08-20
Возраст : 40
Откуда : Красноярск

http://www.freebasic.su

Вернуться к началу Перейти вниз

Вернуться к началу

- Похожие темы

 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения