Что нового

Не получается запустить команду "Выполнить"

dr.room

Новичок
Сообщения
283
Репутация
0
Всем привет
Не получается просто вызвать команду Выполнить
По идее нужно так
Код:
Send("{LWin}{R}")

Но почему-то жмет кнопку Пуск и вставляет в строку поиска букву R
Что не так ? Спасибо
 

Dima1337

Осваивающий
Сообщения
186
Репутация
24
Re: Не запуститвыполнить команду "Выполнить"

Код:
Send("#r")

OffTopic:
Название темы: "Не запуститвыполнить команду "Выполнить"" не слишком удачное. Вот пример отражающий суть вопроса: "Как эмулировать сочетание клавиш 'Win+R'?"
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Re: Не запуститвыполнить команду "Выполнить"

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"Не запуститвыполнить команду "Выполнить"" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Глобальный модератор.
 

vovsla

Осваивающий
Сообщения
607
Репутация
36
Re: Не запуститвыполнить команду "Выполнить"

"Решётка" теперь эмулирует клавишу Windows; поэтому, Send("#r") эмулирует нажатие Win+r, который запускает диалоговое окно "Выполнить".
http://autoit-script.ru/autoit3_docs/functions/Send.htm
 
Автор
D

dr.room

Новичок
Сообщения
283
Репутация
0
Что ни пробую не помогает
Код:
Send("#r")

Код:
Send("{LWINDOWN}r{LWINUP}")
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Можно ещё вот так:

Код:
Run('rundll32.exe shell32.dll,#61')


или вот так:

Код:
#include <WindowsConstants.au3>
#include <WinAPI.au3>
#include <SendMessage.au3>

_SendMessage(_WinAPI_FindWindow('Shell_TrayWnd', Null), $WM_COMMAND, 401, 0)
 

alex33

Скриптер
Сообщения
1,457
Репутация
186
Код:
Send("#к")



Добавлено:
Сообщение автоматически объединено:

OffTopic:
CreatoR сказал(а):
Можно ещё вот так:

Код:
Run('rundll32.exe shell32.dll,#61')
Только в заголовке окна написано не "Выполнить", а "Запуск программы" :smile: :-D
 
Автор
D

dr.room

Новичок
Сообщения
283
Репутация
0
CreatoR сказал(а):
Можно ещё вот так:

Код:
Run('rundll32.exe shell32.dll,#61')
Побороть команду Выполнить не удалось, но удалось решить задачу через Запуск программ: равноценное решение Спасибо
Огромная благодарность всем участникам




Добавлено:
Сообщение автоматически объединено:

Alofa сказал(а):
tref777 сказал(а):
... Должно работать
Не всегда.

Вау, всё получилось теперь у меня!! Вначале я неправильно копировал Ваш код, и выскочила ошибка, что запутало меня, но потом пересмотрел еще раз и внес исправления. Спасибо за решение!!
PS
Правильно ли я понимаю что шаблон можно применить такой для контроля клавиатуры ?
Код:
; Script Start - Add your code below here

#include <GUIConstantsEx.au3>
#include <GUIEdit.au3>
#include <WinAPIEx.au3>

_FixAccelHotKeyLayout()

; а в этом месте -  указать любой свой код

Func _FixAccelHotKeyLayout()
    Static $iKbrdLayout, $aKbrdLayouts

    If Execute('@exitMethod') <> '' Then
        Local $iUnLoad = 1

        For $i = 1 To $aKbrdLayouts[0]
            If Hex($iKbrdLayout) = Hex('0x' & StringRight($aKbrdLayouts[$i], 4)) Then
                $iUnLoad = 0
                ExitLoop
            EndIf
        Next

        If $iUnLoad Then
            _WinAPI_UnloadKeyboardLayout($iKbrdLayout)
        EndIf

        Return
    EndIf

    $iKbrdLayout = 0x0409
    $aKbrdLayouts = _WinAPI_GetKeyboardLayoutList()
    _WinAPI_LoadKeyboardLayout($iKbrdLayout, $KLF_ACTIVATE)

    OnAutoItExitRegister('_FixAccelHotKeyLayout')
EndFunc





Добавлено:
Сообщение автоматически объединено:

Dima1337 сказал(а):
Вот пример отражающий суть вопроса
Спасибо
Вкралась :smile: грамматическая ошибка в название, от большой спешки, что исказило ее суть. Но уже всё исправил
 
A

Alofa

Гость
dr.room сказал(а):
Правильно ли я понимаю что шаблон можно применить такой для контроля клавиатуры ?
Код:
; Сама пользовательская функция может распологаться
;где угодно в скрипте
Func _FixAccelHotKeyLayout()
; ...
EndFunc

; А вот ее вызов ...
_FixAccelHotKeyLayout()
; ... нужно выполнить либо в начале скрипта, либо
; непосредственно ПЕРЕД ПЕРВЫМ выполнением функций
; в которых необходимо эмулировать нажатие клавиш
; таких как:
Send()
ControlSend()
; а также
HotKeySet()
GUISetAccelerators()
 
Автор
D

dr.room

Новичок
Сообщения
283
Репутация
0
Alofa сказал(а):
Сама пользовательская функция может распологаться
;где угодно в скрипте

Отличный мануал
Хоть понял что к чему (на уровне чайника :smile:)
Правда боюсь нужно не забыть о "шапке" т.е. об указании перед вызовом функции вот этого (не понял что это, правда :smile:) а то - не заработает, в этом то и была моя первая ошибка. Но это уже - другая тема. Еще раз спасибо
Код:
#include <GUIConstantsEx.au3>
#include <GUIEdit.au3>
#include <WinAPIEx.au3>

_FixAccelHotKeyLayout()
 

uritalex

Новичок
Сообщения
197
Репутация
3
Эта шапка
Код:
#include <GUIConstantsEx.au3>
#include <GUIEdit.au3>
#include <WinAPIEx.au3>

Это ссылки на файлы с различными функциями и переменными которые применяются в скрипте.
Своего рода ящики с инструментами: в одном ящике плоскогубцы, кусачки и пр для электрики, во втором набор ключей и отверток ну и так далее.....
И когда вам нужно что то сделать вы берете пару ящиков и из них берете тот инструмент что нужен для решения конкретной задачи.
Вод так и тут :smile:
 
Автор
D

dr.room

Новичок
Сообщения
283
Репутация
0
uritalex сказал(а):
Это ссылки на файлы с различными функциями и переменными которые применяются в скрипте.
Вот оно что - тогда программа просто знает, благодаря этой "шапке" где и что ей искать и брать для применения. Спасибо. :smile:
 
Автор
D

dr.room

Новичок
Сообщения
283
Репутация
0
Garrett сказал(а):
OffTopic:
dr.room [?]
Вы ещё больше удивитесь, если узнаете, что есть справка (даже на русском языке)!
О да - она таки есть. Но назвать её исчерпывающим руководством , как-то не получается.
И возможно Вы удивитесь - но её читал. (и как только у меня хватило :smile:) И мне как чайнику, 90% из-того что написано, не было понятно.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
OffTopic:
dr.room [?]
Но назвать её исчерпывающим руководством , как-то не получается.
Как вы можете судить об этом, если...
И мне как чайнику, 90% из-того что написано, не было понятно.

Что именно вам непонятно - #include?



Добавлено:
Сообщение автоматически объединено:

Хоть и с нарушениями правил форума, но мне нравится ход ваших мыслей :ok:
 
Верх