Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Autorun 
Author Message
AkulaBig



PostPosted: Sat Jul 19, 2025 17:54    Post subject: Reply with quote

Как всегда не получается составить строку для использования DllCall:
Code:

Local TitleTabTC
DllCall("GetWindowTextW", "hwnd", AUTORUN_TCHANDLE, "wstr:768", @TitleTabTC, "int", 768, "int")

Заголовок ТС вывести удалось. Вот правильный код:
Code:

Static buf = Buffer(768)
DllCall("GetWindowText", "hwnd", AUTORUN_TCHANDLE, "ptr", buf.Ptr, "int", 768)
OutputDebugString(AUTORUN_TCHANDLE & " " & buf.GetStr())

Но возникла проблема с решением реальной задачи. Я хочу прочитать заголовок табов:
Code:

Local hTabLeft = SendMessage(AUTORUN_TCHANDLE, 1074, 5, 0)

hTabLeft содержит число. Как я думаю это хэндл окна. Но
Code:

Static buf = Buffer(768)
DllCall("GetWindowText", "hwnd", AUTORUN_TCHANDLE, "ptr", buf.Ptr, "int", 768)
OutputDebugString(hTabLeft & " " & buf.GetStr())

возвращает пустое значение.
Проверил в mvs, все стало ясно. У табов нет общего заголовка. В связи с этим возник вопрос.
Можно-ли как-то отследить режим показа колонок? Про SpecialView из wincmd.ini знаю. Только вот значения туда не пишутся в режиме реального времени.


Last edited by AkulaBig on Sat Jul 19, 2025 22:02; edited 2 times in total
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group