AutoHotKey Outlook 2010 ile çalışmıyor


13

Bir AutoHotKey komut dosyası oluşturdum ve bir exe'ye derledim.

Sonra exe koştu ve Outlook 2010 koştu.

Kısayol tuşlarımı kullanmaya çalıştığımda, durum çubuğunda "Seçim kilitli olduğu için bu değişikliğe izin verilmiyor" hatası alıyorum.

Bazı yeniden araştırmalar yaptım ve bu hata dikişleri bir Trail sonuyla birlikte bağlanacak. Ama ben bir iş bilgisayarındayım ve deneme yapmıyorum.

Bunu düzeltmenin bir yolu var mı?

işte ahk dosyam

SendMode Input ; Recommended for new scripts due to its superior speed and reliability.

SendMode Input ; superior speed and reliability.

SetTitleMatchMode 2 ;allow partial match to window titles

;********************
;Hotkeys for Outlook 2010
;********************
;As best I can tell, the window text ‘NUIDocumentWindow’ is not present
;on any other items except the main window. Also, I look for the phrase
; ‘ – Microsoft Outlook’ in the title, which will not appear in the title (unless
;a user types this string into the subject of a message or task).
#IfWinActive – Microsoft Outlook ahk_class rctrl_renwnd32, NUIDocumentWindow

y::HandleOutlookKeys("!hy", "y") ;calls archive macro
f::HandleOutlookKeys("^f", "f") ;forwards message
r::HandleOutlookKeys("^r", "r") ;replies to message
a::HandleOutlookKeys("^+r", "a") ;reply all
v::HandleOutlookKeys("^+v", "v") ;Move message box
+u::HandleOutlookKeys("^u", "+u") ;marks messages as unread
+i::HandleOutlookKeys("^q", "+i") ;marks messages as read (^q is read/unread toggle)
j::HandleOutlookKeys("{Down}", "j") ;move down in list
+j::HandleOutlookKeys("{Down}{Enter}", "+j") ;move down and select next item
k::HandleOutlookKeys("{Up}", "k") ;move up
+k::HandleOutlookKeys("{Up}{Enter}", "+k") ;move up and select next item
o::HandleOutlookKeys("^o", "o") ;open message
s::HandleOutlookKeys("{Insert}", "s") ;toggle flag (star)
c::HandleOutlookKeys("^n", "c") ;new message
/::HandleOutlookKeys("^e", "/") ;focus search box
.::HandleOutlookKeys("+{F10}", ".") ;Display context menu

#IfWinActive
;Passes Outlook a special key combination for custom keystrokes or normal key value, depending on context
HandleOutlookKeys( specialKey, normalKey ) {
    ;Activates key only on main outlook window, not messages, tasks, contacts, etc.
    IfWinActive, – Microsoft Outlook ahk_class rctrl_renwnd32, NUIDocumentWindow, ,
    {
        ;Find out which control in Outlook has focus
        ControlGetFocus, currentCtrl
        ;MsgBox, Control with focus = %currentCtrl%
        ;set list of controls that should respond to specialKey. Controls are the list of emails and the main (and minor) controls of the reading pane, including controls when viewing certain attachments.
        ;Currently I handle archiving when viewing attachments of Word, Excel, Powerpoint, Text, jpgs, pdfs
        ;The control ‘RichEdit20WPT1' (email subject line) is used extensively for inline editing. Thus it had to be removed. If an email’s subject has focus, it won’t archive…
        ctrlList = Acrobat Preview Window1, AfxWndW5, AfxWndW6, EXCEL71, MsoCommandBar1, OlkPicturePreviewer1, paneClassDC1, RichEdit20WPT2, RichEdit20WPT4, RichEdit20WPT5, RICHEDIT50W1, SUPERGRID1, SUPERGRID2, _WwG1
        if currentCtrl in %ctrlList%
        {
            Send %specialKey%
            ;Allow typing normalKey somewhere else in the main Outlook window. (Like the search field or the folder pane.)
        } else {
            Send %normalKey%
        }
        ;Allow typing normalKey in another window type within Outlook, like a mail message, task, appointment, etc.
        } else {
            Send %normalKey%
    }
}

Başka bir öneri, bunun bir belge korunduğunda gerçekleşebileceğidir. Bunun alakalı olup olmadığını bilmiyorum, ancak araştırmanız için bir yol verebilir misiniz?
Stuart McLaughlin

Neden "SendMode Girişi;" iki kez? Bu bilerek mi yoksa sadece bir kopyalama ve yapıştırma hatası mıydı?
sbtkd85

Bu, Microsoft tarafından 2003'te Outlook'a sunulan gelişmiş güvenlikle ilgili değil mi?

Burada bu soruyu tökezlemeye devam ediyorum ve her seferinde aklıma gelen bir şey var: Neden bu soruyu AutoHotkey forumunda sormuyorsunuz? Bu tür sorunlar için muazzam bir uzmanlık var.
99572 kullanıcısı

Outlook'un etkinleştirildiğinden emin olmak için kontrol ettiniz mi? Dosya-> Yardım'a giderek bunu kontrol edebilirsiniz.
cmorse

Yanıtlar:


1

Hatayı almadım ama olası bir başarısızlık noktasını ve diğer iki şeyi keşfettim. Belki bunları düzeltmek veya en azından parametrelerle oynamak.

İlgili kontrolleri içeren kontrol listesi

ctrlList = Acrobat Preview Window1,AfxWndW5,AfxWndW6,EXCEL71,MsoCommandBar1,OlkPicturePreviewer1,paneClassDC1,RichEdit20WPT2,RichEdit20WPT4,RichEdit20WPT5,RICHEDIT50W1,SUPERGRID1,SUPERGRID2,_WwG1

İlgili Autohotkey belgesinden alıntı yaparak tüm alanları kaldırdım:

Her biri bir eşleşme için Var içeriğiyle karşılaştırılacak virgülle ayrılmış dizeler listesi. Sınırlayıcı virgüllerin çevresindeki boşluklar veya sekmeler önemlidir, yani bunlar eşleme dizesinin bir parçasıdır. Örneğin, MatchList öğesinin ABC olarak ayarlanması durumunda, XYZ, Var'ın ya bir boşluk içeren ABC'yi ya da eşleşmeye neden olması için önde gelen alanı olan XYZ'yi içermesi gerekir.

Pencere Algılama

#IfWinActive - Microsoft Outlook ahk_class rctrl_renwnd32

"NUIDocumentWindow" olayı casus pencere çalıştırdığımda görünmüyor. Anahtar gönderme işlevi içindeki ilgili satır için de aynı şey geçerlidir:

IfWinActive, - Microsoft Outlook ahk_class rctrl_renwnd32
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.