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

Компьютерный форум 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

 

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

Ветеран


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

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


Цитата BonD 007:
при нажатии тех же Ctrl + Shift + n создавалась папка в любом окне Explorer'а, которое в данный момент активно (или на рабочем столе) »
Правильно заданный вопрос - половина ответа

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


Отправлено: 15:26, 03-01-2009 | #1391



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

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


Аватара для ganselo

Старожил


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

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


Цитата Creat0R:
тогда так: »
Что то у меня этот скриптик не хочит работать... Я компилю его запускаю, жму в активном окне проводника ctrl+shift+n и ни чего не происходит. Мб что то делаю не так?

-------
К величайшему сожалению "история учит нас тому, что она ничему не учит".


Отправлено: 17:56, 03-01-2009 | #1392


Аватара для katok888

Старожил


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

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


Цитата ganselo:
Что то у меня этот скриптик не хочит работать. »
Такая же фигня.

Отправлено: 18:52, 03-01-2009 | #1393


Аватара для Creat0R

Must AutoIt


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

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


ganselo, katok888,
Цитата ganselo:
этот скриптик не хочит работать »
Вроде поправил... интересно, что у вас показывает Au3 Info Tool при навидении на тело папки (во вкладке «Visible Text»)?

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

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

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


Отправлено: 19:53, 03-01-2009 | #1394


Аватара для ganselo

Старожил


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

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


Цитата Creat0R:
интересно, что у вас показывает Au3 Info Tool при навидении на тело папки (во вкладке «Visible Text»)? »
У меня показывает CabinetWClass

-------
К величайшему сожалению "история учит нас тому, что она ничему не учит".


Отправлено: 20:02, 03-01-2009 | #1395


Аватара для katok888

Старожил


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

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


Creat0R,
Цитата Creat0R:
интересно, что у вас показывает Au3 Info Tool при навидении на тело папки »
Код: Выделить весь код
FolderView

Отправлено: 20:04, 03-01-2009 | #1396


Аватара для ganselo

Старожил


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

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


Цитата katok888:
интересно, что у вас показывает Au3 Info Tool при навидении на тело папки »
Смотри скрин.
И еще... На Рабочем столе папки создаются, а в проводнике нет.

-------
К величайшему сожалению "история учит нас тому, что она ничему не учит".


Последний раз редактировалось ganselo, 07-01-2010 в 18:34.


Отправлено: 20:10, 03-01-2009 | #1397


Аватара для katok888

Старожил


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

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


Все равно не работает

Отправлено: 20:18, 03-01-2009 | #1398


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


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

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


Помогите сделать небольшой скрипт, сам в программировании не силен
Смысл в том, что имеется запускной файл (допустим Zapusk.exe), при его запуске появляется окно с полосой проверки измененных файлов в папке "sys", после проверки в окне загорается кнопка "установить", после нажатия этой кнопки закрывается процесс Zapusk.exe и открывается Ustanovka.exe, вот надо чтобы после нажатия этой кнопки "установить" - процесс Ustanovka.exe не запустился, а сначала переименовывалась папка "sys" в папку "sys1", а после - папка "path" в папку "sys", и только потом с новой папки "1" запускался процесс Ustanovka.exe. Понимаю что заумно, но прошу помочь, вот код скрипта, где вопросы это то место где надо вставить то чего я не понимаю


Код: Выделить весь код
If FileExists("path") Then
	RunWait("Zapusk.exe", "")
	ProcessWaitClose ( "Zapusk.exe" )

???; ВОТ ЗДЕСЬ Я НЕ ПОНИМАЮ ЧТО НАПИСАТЬ)

        DirMove("sys", "sys1")
	DirMove("path", "sys")
EndIf

ProcessWaitClose ( "Ustanovka.exe" )
DirMove("system", "path")
DirMove("system1", "system")
exit
Ну и соотвественно после закрытия процесса Ustanovka.exe, папки переименовывались назад, что выше уже написано в коде

Забыл сказать, просто так файл Ustanovka.exe не запустишь, тока через Zapusk.exe

Последний раз редактировалось Frag-o-Matik, 03-01-2009 в 20:37.


Отправлено: 20:26, 03-01-2009 | #1399


Аватара для Creat0R

Must AutoIt


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

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


ganselo, katok888,
У вас я так понял Vista? Я проверял на XP

Цитата ganselo:
Смотри скрин »
А что во вкладке Hidden Text?

Так или иначе, вот версия-отладчик, будет записывать лог, если не работает, лог в студию:

Код: Выделить весь код
#NoTrayIcon

Opt("WinWaitDelay", 1)

Global $iDebug = True
Global $sDebug_LogFile = @ScriptDir & "\DebugLog.log"

Global $sFileNameFormat = "New_%i"

HotKeySet("^+n", "_CreateFolder_Proc")  ;Ctrl + Shift + n
HotKeySet("^+w", "_Quit")               ;Ctrl + Shift + w

OnAutoItStart_Init()

While 1
    Sleep(1000)
WEnd

Func _CreateFolder_Proc()
    _DebugToLog_Proc("_CreateFolder_Proc Call: Called by HotKey(" & @HotKeyPressed & ").")

    Local $sExplorer_Title = "[CLASS:CabinetWClass]"
    Local $sPath, $iFolder_Created = 0

    If Not WinActive($sExplorer_Title) Then $sExplorer_Title = "[CLASS:ExploreWClass]"
    If Not WinActive($sExplorer_Title) Then $sExplorer_Title = "[CLASS:Progman]"
    If Not WinActive($sExplorer_Title) Then _
        Return _DebugToLog_Proc("_CreateFolder_Proc Call: Dir creation is not possible in currently active window: " & _
            WinGetTitle("[ACTIVE]") & @CRLF)

    Switch $sExplorer_Title
        Case "[CLASS:CabinetWClass]", "[CLASS:ExploreWClass]"
            Local $sWin_Title = WinGetTitle($sExplorer_Title)
            Local $sWin_Text = WinGetText($sExplorer_Title)

            $sPath = StringRegExpReplace($sWin_Text, "(?s).*(\r\n|)(\w+:\\.*" & $sWin_Title & ")(\r\n|.*)", "\2")
        Case "[CLASS:Progman]"
            $sPath = @DesktopDir
        Case Else
            Return _DebugToLog_Proc( _
                "_CreateFolder_Proc Call: " & _
                "Unexpected error (can not get window class name, perhaps a memory unavailable)." & @CRLF)
    EndSwitch

    _DebugToLog_Proc("_CreateFolder_Proc Call: Found active window with following Class Name: " & $sExplorer_Title)
    _DebugToLog_Proc("_CreateFolder_Proc Call: And with the following Title: " & WinGetTitle($sExplorer_Title))

    If Not StringInStr(FileGetAttrib($sPath), "D") Then $sPath = ControlGetText($sExplorer_Title, "", "Edit1")
    If Not StringInStr(FileGetAttrib($sPath), "D") Then _
        Return _DebugToLog_Proc("_CreateFolder_Proc Call: Path for creating folder was not found: " & $sPath)

    _DebugToLog_Proc("_CreateFolder_Proc Call: Detected path for creating folder in: " & $sPath)

    Local $iFolder_Num = 1
    Local $sNewFolderName = StringFormat($sFileNameFormat, $iFolder_Num)

    While StringInStr(FileGetAttrib($sPath & "\" & $sNewFolderName), "D")
        $iFolder_Num += 1
        $sNewFolderName = StringFormat($sFileNameFormat, $iFolder_Num)
    WEnd

    _DebugToLog_Proc("_CreateFolder_Proc Call: Creating folder with the following name: " & $sNewFolderName & "...")

    $iFolder_Created = DirCreate($sPath & "\" & $sNewFolderName)
    _DebugToLog_Proc("_CreateFolder_Proc Call: Folder created(?): " & ($iFolder_Created = 1) & @CRLF)
EndFunc   ;==>_CreateFolder_Proc

Func _DebugToLog_Proc($sDebug_Info)
    If Not $iDebug Then Return

    _FileWriteLogEx($sDebug_LogFile, $sDebug_Info & @CRLF)
EndFunc   ;==>_DebugToLog_Proc

Func _FileWriteLogEx($sLogPath, $sLogMsg, $iFlag = -1)
    Local $sDateNow, $sTimeNow, $sMsg, $iWriteFile, $hOpenFile, $iOpenMode = 1

    $sDateNow = @YEAR & "-" & @MON & "-" & @MDAY
    $sTimeNow = @HOUR & ":" & @MIN & ":" & @SEC

    $sMsg = $sDateNow & " " & $sTimeNow & ">> " & $sLogMsg

    If $iFlag <> -1 Then
        $sMsg &= FileRead($sLogPath)
        $iOpenMode = 2
    EndIf

    $hOpenFile = FileOpen($sLogPath, $iOpenMode)
    If $hOpenFile = -1 Then Return SetError(1, 0, 0)

    $iWriteFile = FileWriteLine($hOpenFile, $sMsg)
    If $iWriteFile = -1 Then Return SetError(2, 0, 0)

    Return FileClose($hOpenFile)
EndFunc   ;==>_FileWriteLogEx

Func _Quit()
    Exit
EndFunc   ;==>_Quit

Func OnAutoItStart_Init()
    If $iDebug Then
        If FileRead($sDebug_LogFile) <> "" Then
            _FileWriteLogEx($sDebug_LogFile, _
                StringFormat("============ Debug Log For [%s] Started ============\r\n\r\n...\r\n\r\n", @ScriptName))
        Else
            _FileWriteLogEx($sDebug_LogFile, StringFormat("============ Debug Log For [%s] Started...", @ScriptName))
            _FileWriteLogEx($sDebug_LogFile, StringFormat("============ Operating System: %s\r\n", @OSVersion))
            _FileWriteLogEx($sDebug_LogFile, StringFormat("============ Service Pack: %s\r\n", @OSServicePack))
            _FileWriteLogEx($sDebug_LogFile, _
                StringFormat("============ File System: %s ============\r\n\r\n...\r\n\r\n", DriveGetFileSystem(@HomeDrive)))
        EndIf
    EndIf
EndFunc   ;==>OnAutoItStart_Init

Func OnAutoItExit()
    If $iDebug Then
        _FileWriteLogEx($sDebug_LogFile, _
            StringFormat("============ Debug Log Finished (EXIT CODE: %i) ============\r\n\r\n\r\n", @ScriptName, @exitCode))

        $iOpen_LogFile = MsgBox(36, @ScriptName & " - Attention", "Open Debug Log File?" & @CRLF & @CRLF & $sDebug_LogFile)
        If $iOpen_LogFile = 6 Then ShellExecute($sDebug_LogFile)
    EndIf
EndFunc   ;==>OnAutoItExit

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

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

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


Последний раз редактировалось Creat0R, 04-01-2009 в 13:09.


Отправлено: 01:17, 04-01-2009 | #1400



Компьютерный форум 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




 
Переход