![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:. |
|
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
|
(*.*) Сообщения: 36574 |
Внимание! В связи с созданием отдельного форума по AutoIt, эта тема переводится в архивное состояние. Если у вас есть вопрос, создайте новую тему или поднимите существующую, если в ней обсуждается аналогичная проблема. Пожалуйста, не создавайте тем с названием "Помогите!" или "Нужна помощь по AutoIt". Это и так понятно ![]() ![]() Сайт программы Русская справка Коллекция AutoIt скриптов от Sanja Alone Коллекция AutoIt скриптов от MSFN (могут быть устаревшие). Справочник по командам rundll32 (команды запуска диалоговых окон и не только...) AutoIt скрипты - введение и FAQ (статья содержит вводную информацию по AutoIt, а также ответы на ЧаВо). Архивы старых тем по AutoIt или они же в 7z архиве (версии для печати) - 846 кб (настоятельно рекомендуется к прочтению/поиску) (он же прикреплен в шапке) Данная тема предназначена для общих вопросов по AutoIt. Вопросы по установке приложений при помощи AutoIt следует задавать в соответствии с правилами форума "Автоматическая установка приложений". Таким образом, если вы хотите узнать как установить Winamp 5.x при помощи AutoIt, то создайте тему [autoit] Winamp 5.х (если таковой еще нет на форуме). Проверить наличие тем можно при помощи поиска или фильтров. Цитата Vadikan:
|
||
------- Отправлено: 00:02, 05-02-2006 |
Новый участник Сообщения: 36
|
Профиль | Отправить PM | Цитировать Цитата Creat0R:
Если чесно то не работает как надо ,Не важно куда я нажимаю мышкой на экране ,иконка закривается .А я хотел именно назимая на иконку ,закриват ее |
|
Последний раз редактировалось shyra1976, 21-12-2008 в 12:28. Отправлено: 08:58, 21-12-2008 | #1321 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 916
|
Профиль | Отправить PM | Цитировать Maza Faka, если рассказать в кратце, то что мне нужно сделать:
1. В авторане стоит soulseek 2. В свойствах его ярлыка стоит запускать во весь экран (это я так хочу сделать, дабы потом его в ручнуб не увеличивать) 3. Нужно после того, как он загрузится, свернуть его - тогда он попадёт в трей(!) Это и есть задача сама ![]() 4. И здесь уже после запуска скрипта задать время в секундах, после которого скрипт бы сработал - дав таким образом SoulSeek'у загрузиться полностью. Поскольку, если в ярлыке указать сворачивать в значок, то он просто свернётся на панель задач, в отличии например от Total Commander'а, который нормально при таких действиях с ярлыком сворачивается в трей после запуска... И кстати, из приведённого скрипта, я могу понять, что он с начала запускает приложение, а затем уже сворачивает его, верно? Можно ли задать разворачивание на весь экран, либо сразу, либо после запуска? |
------- Отправлено: 11:54, 21-12-2008 | #1322 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата shyra1976:
|
|
------- Отправлено: 12:15, 21-12-2008 | #1323 |
Новый участник Сообщения: 36
|
Профиль | Отправить PM | Цитировать Dobavil
|
Отправлено: 12:33, 21-12-2008 | #1324 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать shyra1976,
У меня почему то удаётся это сделать только по двойному щелчку (можно конечно избавиться от перетаскивания иконки, но я так понял оно тоже нужно?)... #NoTrayIcon #include <GDIPlus.au3> #include <GuiComboBox.au3> #include <WindowsConstants.au3> #include <GuiConstantsEx.au3> #include <ButtonConstants.au3> #include <WinAPI.au3> ; Global Const $WM_LBUTTONDOWN = 0x0201 Global Const $AC_SRC_ALPHA = 1 Global $launchDir = @DesktopDir, $GUI Global $iExitLoop = False $temp = @ScriptDir & "\1.png" Transp_PNG($temp) Func Transp_PNG($temp, $iOpacity = 255, $EnableFade = True) If $iOpacity < 0 Then $iOpacity = 0 If $iOpacity > 255 Then $iOpacity = 255 ; Load PNG file as GDI bitmap _GDIPlus_Startup() $pngSrc = $temp $hImage = _GDIPlus_ImageLoadFromFile($pngSrc) ; Extract image width and height from PNG $width = _GDIPlus_ImageGetWidth($hImage) $height = _GDIPlus_ImageGetHeight($hImage) ; Create layered window $GUI = GUICreate("lod3n launcher", $width, $height, -1, -1, $WS_POPUP, $WS_EX_LAYERED) WinSetOnTop($GUI, "", 1) GUIRegisterMsg($WM_LBUTTONDOWN, "WM_LBUTTONDOWN") GUIRegisterMsg($WM_LBUTTONUP, "WM_LBUTTONUP") GUIRegisterMsg($WM_WINDOWPOSCHANGED, "WM_WINDOWPOSCHANGED") GUISetState() If $EnableFade Then ;fade in png background For $i = 0 To $iOpacity Step 1 SetBitmap($GUI, $hImage, $i) Next Else SetBitmap($GUI, $hImage, $iOpacity) EndIf ; set default button for Enter key activation - renders outside GUI window $BtnExit = GUICtrlCreateButton("Exit", $width, $height, 10, 10, $BS_DEFPUSHBUTTON) While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE, $BtnExit ExitLoop EndSwitch If $iExitLoop Then ExitLoop WEnd If $EnableFade Then ;fade out png background For $i = $iOpacity To 0 Step -1 SetBitmap($GUI, $hImage, $i) Next Else SetBitmap($GUI, $hImage, 0) EndIf Exit EndFunc ;==>Transp_PNG Func CancelPressed() Exit EndFunc ;==>CancelPressed ; Handle the WM_LBUTTONDOWN for the layered window so it can be dragged by clicking anywhere on the image. Func WM_LBUTTONDOWN($hWnd, $iMsg, $wParam, $lParam) If BitAND(WinGetState($hWnd), 32) Then Return $GUI_RUNDEFMSG DllCall("user32.dll", "long", "SendMessage", "hwnd", $hWnd, "int", $WM_SYSCOMMAND, "int", 0xF009, "int", 0) EndFunc ;==>WM_LBUTTONDOWN Func WM_LBUTTONUP($hWnd, $iMsg, $wParam, $lParam) $iExitLoop = True EndFunc ;==>WM_LBUTTONUP Func WM_WINDOWPOSCHANGED($hWnd, $iMsg, $wParam, $lParam) $iExitLoop = False EndFunc ;==>WM_WINDOWPOSCHANGED ; SetBitMap Func SetBitmap($hGUI, $hImage, $iOpacity) Local $hScrDC, $hMemDC, $hBitmap, $hOld, $pSize, $tSize, $pSource, $tSource, $pBlend, $tBlend $hScrDC = _WinAPI_GetDC(0) $hMemDC = _WinAPI_CreateCompatibleDC($hScrDC) $hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage) $hOld = _WinAPI_SelectObject($hMemDC, $hBitmap) $tSize = DllStructCreate($tagSIZE) $pSize = DllStructGetPtr($tSize) DllStructSetData($tSize, "X", _GDIPlus_ImageGetWidth($hImage)) DllStructSetData($tSize, "Y", _GDIPlus_ImageGetHeight($hImage)) $tSource = DllStructCreate($tagPOINT) $pSource = DllStructGetPtr($tSource) $tBlend = DllStructCreate($tagBLENDFUNCTION) $pBlend = DllStructGetPtr($tBlend) DllStructSetData($tBlend, "Alpha", $iOpacity) DllStructSetData($tBlend, "Format", $AC_SRC_ALPHA) _WinAPI_UpdateLayeredWindow($hGUI, $hScrDC, 0, $pSize, $hMemDC, $pSource, 0, $pBlend, $ULW_ALPHA) _WinAPI_ReleaseDC(0, $hScrDC) _WinAPI_SelectObject($hMemDC, $hOld) _WinAPI_DeleteObject($hBitmap) _WinAPI_DeleteDC($hMemDC) EndFunc ;==>SetBitmap |
------- Отправлено: 13:09, 21-12-2008 | #1325 |
Новый участник Сообщения: 36
|
Профиль | Отправить PM | Цитировать SPASIBO, YRA zarabotalo
I eshe ,Kak ti pishesh kod v foryme ,Chto on tak krasivo polychaetsia? |
Последний раз редактировалось shyra1976, 21-12-2008 в 15:36. Отправлено: 13:54, 21-12-2008 | #1326 |
![]() Старожил Сообщения: 232
|
Профиль | Сайт | Отправить PM | Цитировать Можно ли как нибуть сделать так, чтобы откомпиленный скрипт не палился в Диспетчере задач? и если да, то как?
|
------- Отправлено: 23:18, 21-12-2008 | #1327 |
Ветеран Сообщения: 604
|
Профиль | Отправить PM | Цитировать Цитата shyra1976:
![]() скачать Au3ToPost 1.8 |
|
Последний раз редактировалось Maza Faka, 24-12-2008 в 08:40. Отправлено: 06:49, 22-12-2008 | #1328 |
Новый участник Сообщения: 36
|
Профиль | Отправить PM | Цитировать ;~ #include <GUIConstants.au3> ;~ ------------------------------------------------------- ; Description : ; Written by : Alex Pougach ; Date : 22/12/2008 ; ; With help of Igal Bravshtein and Creat0R ; -------------------------------------------------------- #include-once ; Transp_PNG( $temp , x , y),$temp = "E:\VBA\AutoIt\GUI\2.png" ; $temp- Doroga k file ; x - prozrachnost ; y- Plavnost poiavleniia #NoTrayIcon #include <GDIPlus.au3> #include <GuiComboBox.au3> #include <WindowsConstants.au3> #include <GuiConstantsEx.au3> #include <ButtonConstants.au3> #include <WinAPI.au3> Global Const $WM_LBUTTONDOWN = 0x0201 Global Const $WM_LBUTTONUP = 0x0202 Global Const $ULW_ALPHA = 2 Global Const $AC_SRC_ALPHA = 1 Global $launchDir = @DesktopDir, $GUI Global $iExitLoop = False Func Transp_PNG($temp, $iOpacity = 255, $EnableFade = True) If $iOpacity < 0 Then $iOpacity = 0 If $iOpacity > 255 Then $iOpacity = 255 ; Load PNG file as GDI bitmap _GDIPlus_Startup() $pngSrc = $temp $hImage = _GDIPlus_ImageLoadFromFile($pngSrc) ; Extract image width and height from PNG $width = _GDIPlus_ImageGetWidth($hImage) $height = _GDIPlus_ImageGetHeight($hImage) ; Create layered window $GUI = GUICreate("", $width, $height, -1, -1, $WS_POPUP, $WS_EX_LAYERED) WinSetOnTop($GUI, "", 1) GUIRegisterMsg($WM_LBUTTONDOWN, "WM_LBUTTONDOWN") GUIRegisterMsg($WM_LBUTTONUP, "WM_LBUTTONUP") GUIRegisterMsg($WM_WINDOWPOSCHANGED, "WM_WINDOWPOSCHANGED") GUISetState() If $EnableFade Then ;fade in png background For $i = 0 To $iOpacity Step 1 SetBitmap($GUI, $hImage, $i) Next Else SetBitmap($GUI, $hImage, $iOpacity) EndIf ; set default button for Enter key activation - renders outside GUI window $BtnExit = GUICtrlCreateButton("Exit", $width, $height, 10, 10, $BS_DEFPUSHBUTTON) While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE, $BtnExit ExitLoop EndSwitch If $iExitLoop Then ExitLoop WEnd If $EnableFade Then ;fade out png background For $i = $iOpacity To 0 Step -1 SetBitmap($GUI, $hImage, $i) Next Else SetBitmap($GUI, $hImage, 0) EndIf EndFunc ;==>Transp_PNG ; Handle the WM_LBUTTONDOWN for the layered window so it can be dragged by clicking anywhere on the image. Func WM_LBUTTONDOWN($hWnd, $iMsg, $wParam, $lParam) If BitAND(WinGetState($hWnd), 32) Then Return $GUI_RUNDEFMSG DllCall("user32.dll", "long", "SendMessage", "hwnd", $hWnd, "int", $WM_SYSCOMMAND, "int", 0xF009, "int", 0) EndFunc ;==>WM_LBUTTONDOWN Func WM_LBUTTONUP($hWnd, $iMsg, $wParam, $lParam) $iExitLoop = True EndFunc ;==>WM_LBUTTONUP Func WM_WINDOWPOSCHANGED($hWnd, $iMsg, $wParam, $lParam) $iExitLoop = False EndFunc ;==>WM_WINDOWPOSCHANGED ; SetBitMap Func SetBitmap($hGUI, $hImage, $iOpacity) Local $hScrDC, $hMemDC, $hBitmap, $hOld, $pSize, $tSize, $pSource, $tSource, $pBlend, $tBlend $hScrDC = _WinAPI_GetDC(0) $hMemDC = _WinAPI_CreateCompatibleDC($hScrDC) $hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage) $hOld = _WinAPI_SelectObject($hMemDC, $hBitmap) $tSize = DllStructCreate($tagSIZE) $pSize = DllStructGetPtr($tSize) DllStructSetData($tSize, "X", _GDIPlus_ImageGetWidth($hImage)) DllStructSetData($tSize, "Y", _GDIPlus_ImageGetHeight($hImage)) $tSource = DllStructCreate($tagPOINT) $pSource = DllStructGetPtr($tSource) $tBlend = DllStructCreate($tagBLENDFUNCTION) $pBlend = DllStructGetPtr($tBlend) DllStructSetData($tBlend, "Alpha", $iOpacity) DllStructSetData($tBlend, "Format", $AC_SRC_ALPHA) _WinAPI_UpdateLayeredWindow($hGUI, $hScrDC, 0, $pSize, $hMemDC, $pSource, 0, $pBlend, $ULW_ALPHA) _WinAPI_ReleaseDC(0, $hScrDC) _WinAPI_SelectObject($hMemDC, $hOld) _WinAPI_DeleteObject($hBitmap) _WinAPI_DeleteDC($hMemDC) EndFunc ;==>SetBitmap Мужыки спасибо Получилось вот так : $temp = @ScriptDir & "\1.png" Transp_PNG($temp,x,y) ;-vizov где : $temp - дорога к file ($temp = @ScriptDir & "\1.png") x - прозрачность y - плавностьпоявления |
Последний раз редактировалось shyra1976, 22-12-2008 в 10:27. Отправлено: 09:18, 22-12-2008 | #1329 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Привет.
Подскажите как определить имя диска, в который вставлена флешка. |
Отправлено: 15:11, 22-12-2008 | #1330 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[архив - Часть 2] AutoIt скрипты | Vadikan | AutoIt | 985 | 21-01-2008 09:58 | |
Вопрос - [Архив] Антивирусные программы - ОБЩИЕ ВОПРОСЫ | FOX RED | Защита компьютерных систем | 67 | 21-11-2007 15:05 | |
[Архив - Часть 1.3] AutoIt скрипты | biork | AutoIt | 503 | 09-06-2007 11:27 | |
[Архив - Часть 1.2] AutoIt скрипты | Dirk Diggler | AutoIt | 505 | 02-12-2006 11:00 | |
[Архив - Часть 1.1] AutoIt скрипты | EgOrus | AutoIt | 335 | 04-02-2006 16:58 |
|