회사에서 Lync 2013으로 전환했는데이 문제가 발생했습니다. AutoHotKey에서 매우 빠르고 기본적인 해결 방법을 코딩했습니다. 대화창의 크기가 조정되지만 이동하지는 않습니다. Lync 2013의이 특정 버그는 창 위치는 기억하지만 창 크기는 기억하지 않습니다.
기본 창 크기는 430x430입니다. 이것은 창을 훨씬 더 넓은 850x600으로 조정합니다. 원하는대로 스크립트의 크기를 자유롭게 변경하십시오. 창이 처음 나타날 때만 크기가 변경됩니다. 창의 크기를 계속 조정하면 스크립트가 창의 크기를 조정하지 않으며 창을 닫은 후 창 크기를 기억하지 않습니다. 창이 처음 나타날 때만 창 크기를 설정합니다.
AutoHotKey를 사용하는 방법을 잘 모르면 멋진 설명서를 확인하십시오.
#Persistent
SetTimer, FixLyncWindow, 500
FixLyncWindow:
{
IfWinExist, ahk_class LyncConversationWindowClass
{
; First, get the HWND of the window.
; Exit the loop if we have already resized it.
WinGet, currID, ID
IfNotExist, c:\temp\%currID%.txt
{
; If we're here, we haven't acted on the window,
; or no HWND file list exists,
; which also means we haven't acted on the window.
; So, it's finally time to act on the window.
WinMove, ahk_id %currID%,,,, 850, 600
; Now, we add the HWND to the file so we know we've
; already resized that window and we don't continue
; resizing the window every half-second.
IfNotExist, c:\temp
FileCreateDir, c:\temp
FileAppend,, c:\temp\%currID%.txt
}
}
; Now, let's check the file directory to see if any of these
; windows don't exist. If they do not, we can delete the file.
FileList =
test1 =
Loop, c:\temp\*.*
{
SplitPath, A_LoopFileName,,,, myName
FileList = %FileList%`,%myName%
}
Loop, parse, FileList, `,
{
If ( "%A_LoopField%" = "" )
Return
IfWinNotExist, ahk_id %A_LoopField%
{
FileDelete, c:\temp\%A_LoopField%.txt
}
}
return
}