Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

Закрытая тема
Настройки темы
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

(*.*)


Сообщения: 36560
Благодарности: 6694


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


Изменения
Автор: Vadikan
Дата: 21-01-2009
Описание: архив
Внимание!


В связи с созданием отдельного форума по AutoIt, эта тема переводится в архивное состояние. Если у вас есть вопрос, создайте новую тему или поднимите существующую, если в ней обсуждается аналогичная проблема.

Пожалуйста, не создавайте тем с названием "Помогите!" или "Нужна помощь по AutoIt". Это и так понятно Заголовок темы должен быть осмысленным.



Сайт программы
Русская справка
Коллекция AutoIt скриптов от Sanja Alone
Коллекция AutoIt скриптов от MSFN (могут быть устаревшие).


Справочник по командам rundll32 (команды запуска диалоговых окон и не только...)

AutoIt скрипты - введение и FAQ (статья содержит вводную информацию по AutoIt, а также ответы на ЧаВо).

Архивы старых тем по AutoIt или они же в 7z архиве (версии для печати) - 846 кб (настоятельно рекомендуется к прочтению/поиску)
(он же прикреплен в шапке)


Данная тема предназначена для общих вопросов по AutoIt. Вопросы по установке приложений при помощи AutoIt следует задавать в соответствии с правилами форума "Автоматическая установка приложений". Таким образом, если вы хотите узнать как установить Winamp 5.x при помощи AutoIt, то создайте тему [autoit] Winamp 5.х (если таковой еще нет на форуме). Проверить наличие тем можно при помощи поиска или фильтров.
Цитата Vadikan:
В теме уже свыше 500 сообщений и поиск нужной информации в ней усложняется. Есть предложение собрать все решения (скрипты) и разместить их на Wiki по принципу "один скрипт - одна статья wiki", добавляя статьи в категорию Autoit. Речь, в принципе, идет об общих решениях, а не о скриптах для установки конкретной программы. Название статьи, очевидно, должно отражать назначение скрипта. Затем можно в шапке просто разместить ссылки на статьи Wiki.

-------
Канал Windows 11, etc | Чат @winsiders

Это сообщение посчитали полезным следующие участники:

Отправлено: 00:02, 05-02-2006

 

Аватара для beve

Старожил


Сообщения: 307
Благодарности: 137

Профиль | Отправить PM | Цитировать


Помогите узнать истину! Суть вот в чем: часто в примерах знающие приводят в коде некоторые константы, как я понял, например вот эти: $WS_CAPTION, $WS_POPUP, $WS_SYSMENU,$WM_MOVE ну и другие, а в справке ни в русской, ни в английской к программе о них ни-гугу, в интернете искал, что они значат, тож ноль, а код не хочет выполнятся, ибо ругается что "эти" не описаны, но я так понял, что их и не нужно прописывать, а Autoit сам знает, что оно такое. Внимание вопрос: где найти описание этих и подобных, и почему описанный ниже пример с этими,с форума ру.боард у меня не хочет работать, ибо не может понять, что эти - такое?
Пример :
читать дальше »
Код: Выделить весь код
#include <GUIConstants.au3> 

Global Const $WM_MOVE = 0x0003 

$Form1 = GUICreate("Form1", 193, 106, 193, 125) 
$Button1 = GUICtrlCreateButton("Button1", 8, 64, 75, 25, 0) 

$Form2 = GUICreate("Form2", 193, 106, 193, 100, BitOR($WS_CAPTION, $WS_POPUP, $WS_SYSMENU), -1, $Form1) 

GUISetState(@SW_SHOW, $Form1) 

GUIRegisterMsg($WM_MOVE, "WM_MOVE") 

While 1 
Switch GUIGetMsg() 
Case $GUI_EVENT_CLOSE 
Exit 
Case $Button1 
If Not BitAND(WinGetState($Form2), 2) Then 
GUISetState(@SW_SHOW, $Form2) 
Else 
GUISetState(@SW_HIDE, $Form2) ;Это можно убрать если не нужно прятать 
EndIf 
EndSwitch 
WEnd 

Func WM_MOVE($hWndGUI, $MsgID, $WParam, $LParam) 
If $hWndGUI = $Form1 Then 
$aParent_Pos = WinGetPos($Form1) 
WinMove($Form2, "", $aParent_Pos[0], $aParent_Pos[1]-25, $aParent_Pos[2], $aParent_Pos[3]) 
Else 
$aChild_Pos = WinGetPos($Form2) 
WinMove($Form1, "", $aChild_Pos[0], $aChild_Pos[1]+25, $aChild_Pos[2], $aChild_Pos[3]) 
EndIf 
EndFunc
P.S.
Добавлено:Попробовал объявить так - Dim $WS_CAPTION, $WS_POPUP, $WS_SYSMENU, $WM_MOVE - Заработало! Но вопрос в силе, где найти описание?

Последний раз редактировалось beve, 08-01-2009 в 15:39. Причина: Добавлено:


Отправлено: 13:39, 08-01-2009 | #1471



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

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


Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Цитата beve:
в интернете искал, что они значат, тож ноль »
Нужно искать без символа $.

Цитата beve:
где найти описание этих и подобных »
Есть на оф. форуме утилита: Win32 API Constants (Skinnable)

Цитата beve:
почему описанный ниже пример с этими,с форума ру.боард у меня не хочет работать »
Нужно добавить #include <WindowsConstants.au3>, и к тому же там есть синтаксическая ошибка (в BitOr)...

Код: Выделить весь код
#include <GUIConstants.au3>
#include <WindowsConstants.au3>

$Form1 = GUICreate("Form1", 193, 106, 193, 125)
$Button1 = GUICtrlCreateButton("Button1", 8, 64, 75, 25, 0)

$Form2 = GUICreate("Form2", 193, 106, 193, 100, BitOR($WS_CAPTION, $WS_POPUP, $WS_SYSMENU), -1, $Form1)

GUISetState(@SW_SHOW, $Form1)

GUIRegisterMsg($WM_MOVE, "WM_MOVE")

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
            If Not BitAND(WinGetState($Form2), 2) Then
                GUISetState(@SW_SHOW, $Form2)
            Else
                GUISetState(@SW_HIDE, $Form2) ;Это можно убрать если не нужно прятать
            EndIf
    EndSwitch
WEnd

Func WM_MOVE($hWndGUI, $MsgID, $WParam, $LParam)
    If $hWndGUI = $Form1 Then
        $aParent_Pos = WinGetPos($Form1)
        WinMove($Form2, "", $aParent_Pos[0], $aParent_Pos[1] - 25, $aParent_Pos[2], $aParent_Pos[3])
    Else
        $aChild_Pos = WinGetPos($Form2)
        WinMove($Form1, "", $aChild_Pos[0], $aChild_Pos[1] + 25, $aChild_Pos[2], $aChild_Pos[3])
    EndIf
EndFunc

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:13, 08-01-2009 | #1472


Аватара для beve

Старожил


Сообщения: 307
Благодарности: 137

Профиль | Отправить PM | Цитировать


Спасибо,Creat0R за потраченное время на ответ. Искал действительно с символом $. Биг сенкс. Теперь нашел по совету вот >http://trubetskoy1.narod.ru/translat...slation01.html тут описано много таких констант для работы с GUI, пробовал, работает!!!

Последний раз редактировалось beve, 08-01-2009 в 18:03.


Отправлено: 16:57, 08-01-2009 | #1473


Аватара для morgan1991

Старожил


Сообщения: 398
Благодарности: 13

Профиль | Сайт | Отправить PM | Цитировать


Скажите, есть файл (архив) в нём несколько папок в одной из папок есть несколько файлов с раширением wav. Может ли автоит запустить любой файл и заменить его прямо в архиве на другой?

-------
Хочу научиться писать драйвера на с++


Отправлено: 00:17, 09-01-2009 | #1474


Пользователь


Сообщения: 67
Благодарности: 13

Профиль | Отправить PM | Цитировать


morgan1991, я для таких задач использовал winrar, у него есть хорошая справочка по командам. Составляй список аргументов и работай с архивами, перепаковывая что угодно...

-------
Информация для размышления
Такому в вузах не научат

Это сообщение посчитали полезным следующие участники:

Отправлено: 01:10, 09-01-2009 | #1475


Аватара для Maza Faka

Ветеран


Сообщения: 604
Благодарности: 133

Профиль | Отправить PM | Цитировать


Цитата litus:
если выбераю "Роза" то в ини фаел передаёться "1" если "Тюльпан"то "2" а если "Гвоздика то "3" »
Если порядок строк сохраняется, то можно так:
Код: Выделить весь код
#include <GUIConstants.au3>
#include <ComboConstants.au3>

GUICreate("Моё окно", 200, 115)

$List_001 = GUICtrlCreateCombo("", 5, 5, 100, 20)
GUICtrlSetData(-1, "Роза|Тюльпан|Гвоздика", "Роза")
$Button_001 = GUICtrlCreateButton("Ok", 20, 80, 75, 20)
GUISetState()

While 1
    $msg = GUIGetMsg()
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    Select
        Case $msg = $Button_001
            $iIndex = GUICtrlSendMsg($List_001, $CB_GETCURSEL, 0, 0) ;Получаем индекс текущей строки (отсчёт индекса начинается с нуля)
            IniWrite("List.ini", "List", "List", $iIndex + 1)
    EndSelect
WEnd
morgan1991
Какой тип архива?

-------
Сообщение помогло? Не забудьте нажать на Полезное сообщение

Это сообщение посчитали полезным следующие участники:

Отправлено: 06:54, 09-01-2009 | #1476


Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


Да оба премера работают во втором как бы проще но непонял цытаты:Если сохраняеться порядок строк.
И если позволете чуть чуть усложнить
КАк с помощью значения $List_000 = IniRead("List.ini", "List", "List", "")
вернуть в окно значение по умолчанию
Да ивобще несильно ли я мудрую когда перевожу таким образом переменые может просто забивать в ини файл то что содержут строки и не заморачиваться, просто возникают сомнение строки будут содержатьсловосочитания и как это может повлиять потом на работу скрипта

код:
#include <GUIConstants.au3>
#include <ComboConstants.au3>

GUICreate("Моё окно", 200, 115)

$List_000 = IniRead("List.ini", "List", "List", "")



$List_001 = GUICtrlCreateCombo("", 5, 5, 100, 20)
GUICtrlSetData(-1, "Роза|Тюльпан|Гвоздика", $List_000)
$Button_001 = GUICtrlCreateButton("Ok", 20, 80, 75, 20)
GUISetState()

While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Select
Case $msg = $Button_001
$iIndex = GUICtrlSendMsg($List_001, $CB_GETCURSEL, 0, 0)
;Получаем индекс текущей строки (отсчёт индекса начинается с нуля)
IniWrite("List.ini", "List", "List", $iIndex + 1)
EndSelect
WEnd

-------
Да всё гениальное заключаеться в простом!!!


Отправлено: 08:11, 09-01-2009 | #1477


Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Цитата litus:
КАк с помощью значения $List_000 = IniRead("List.ini", "List", "List", "")
вернуть в окно значение по умолчанию »
Нужно использовать $CB_SETCURSEL:

Код: Выделить весь код
#include <GUIConstants.au3>
#include <ComboConstants.au3>

GUICreate("Моё окно", 200, 115)

$iList_Default = IniRead("List.ini", "List", "List", "")

$List = GUICtrlCreateCombo("", 5, 5, 100, 20, BitOr($GUI_SS_DEFAULT_COMBO, $CBS_DROPDOWNLIST))

GUICtrlSetData($List, "Роза|Тюльпан|Гвоздика")
GUICtrlSendMsg($List, $CB_SETCURSEL, Number($iList_Default), 0)

$Button = GUICtrlCreateButton("Ok", 20, 80, 75, 20)
GUISetState()

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button
            ;Получаем индекс текущей строки (отсчёт индекса начинается с нуля)
            $iIndex = GUICtrlSendMsg($List, $CB_GETCURSEL, 0, 0)
            IniWrite("List.ini", "List", "List", $iIndex)

            Exit
    EndSwitch
WEnd

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 08:30, 09-01-2009 | #1478


Аватара для Pozia

Ветеран


Сообщения: 2756
Благодарности: 211

Профиль | Отправить PM | Цитировать


Народ не пинайте сильно если не по теме спрошу. В скриптах я ноль почти полный а нужно мне очень Windows Script Encoder. Нужен он для создания защиты на диск по этой теме. Подскажите где скачать, весь нет облазил не нашел и в той теме нету. Спасибо

-------
Жизни вглядись в глаза: Это то, что ты всегда искал? Это то, что ты всегда хотел? Да или нет?


Отправлено: 22:11, 09-01-2009 | #1479


Новый участник


Сообщения: 5
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Maza Faka:
Цитата BonD 007:
при нажатии тех же Ctrl + Shift + n создавалась папка в любом окне Explorer'а, которое в данный момент активно (или на рабочем столе)
Правильно заданный вопрос - половина ответа »
Ты на что намекаешь, Maza Faka? Что я вопрос неправильно задал? Рабочий стол это тоже оболочка Explorer'а.

Люди, можно ли сделать скрипт, который бы после запуска показывал/скрывал скрытые файлы и папки? Если уже есть что-то подобное, дайте пожалуйста.

Последний раз редактировалось BonD 007, 10-01-2009 в 00:01. Причина: Стар я стал


Отправлено: 23:58, 09-01-2009 | #1480



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[архив - Часть 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




 
Переход