1 (изменено: AHK_on, 2018-10-25 20:24:02)

Тема: AHK: Код не работает в одном файле с другими

Есть рабочий код, по нажатию ctrl + alt + N он создаёт текстовый файл с датой.

FileName := "\" A_YYYY A_MM A_DD "_" A_Hour A_Min A_Sec ".txt"  ; шаблон имени нового файла
SetTitleMatchMode, Regex
Return

#IfWinActive ahk_class (Progman|WorkerW|CabinetWClass)
^!vk4E::  ; Ctrl + Alt + N
   WinGetClass, class, A
   if (class ~= "Progman|WorkerW")
      FolderPath := A_Desktop
   else  {
      for item in ComObjCreate("Shell.Application").Windows
         continue
      until WinExist("A") = item.hwnd || item := ""
      FolderPath := item.Document.Folder.Self.Path
   }
   SplitPath, FolderPath,,,,, Drive
   if InStr(Drive, "::")  {
      MsgBox, Это служебная папка, в ней нельзя создать файл
      Return
   }
   NewFileName := FolderPath "\" FileName ".txt"
   
   While FileExist(NewFileName)  {
      RegExMatch(NewFileName, "i).*\\" FileName " \((\d+)\)\.txt", number)
      NewFileName := FolderPath "\" FileName " (" . (number1 = "" ? 2 : number1 + 1) . ").txt"
   }

   FileAppend,, % NewFileName
   Run, % NewFileName
   Return

Проблема в том, что когда я его вставляю в общий файл, он перекрывает все остальные скрипты, и скрипты перестают работать.

Подскажтие пожалуйста, что нужно дописать или убрать из кода, чтобы не мешал работать остальные скриптам.

2

Re: AHK: Код не работает в одном файле с другими

Добавьте в конце #IfWinActive

3 (изменено: AHK_on, 2018-10-26 13:20:08)

Re: AHK: Код не работает в одном файле с другими

Спасибо, заработало!:)

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