Single Post |
Topic: Autorun |
Author |
Message |
yozhik

|
Posted: Wed Aug 09, 2023 01:46 Post subject: |
|
|
Loopback wrote: | Я так понимаю, это только в x64? |
Нет-с. И в 32-битном тоже.
Loopback wrote: | выделить минимальный код, при котором проблема повторяется... |
Вот к счастью у меня сразу воспроизвелось. Уточним: Тотал 11.00 32/64, Windows 10 21H2 64bit. Запускаю 32-битный TC:
Я прошу прощения, давайте я вам откопирую всё, что для ModifyDialogs наваял (в следующем посте сообразил и сделал краткий код как вы просили). Я себе плохо представляю механизмы всей этой кухни, а вдруг там что-то ещё влияет. Но у меня всё прокомментировано, так что вам будет удобно найти нужный отрывок. Сейчас у меня все нулевые вызовы закомментированы. При первом же запуске артефакт проявляется в 2х диалогах: распаковки и атрибутов (на скринах). После раскомментирования нулевых начинает отображаться «?», как и задумано.
 Изменённые диалоги Code: | # ПЛАГИНЫ: ЗАГРУЗКА ......................................................... #
LoadLibrary 'Plugins\Autorun_ModifyDialogs.dll'
# ПЛАГИНЫ: переменные для имён элементов .................................... #
IniRead CRNTLNG %COMMANDER_INI% "Configuration" "LanguageIni"
If %CRNTLNG% = '' Then
Set TREEBTN "&Tree"
Else
LngRead TREEBTN 5002 "%COMMANDER_PATH%\LANGUAGE\%CRNTLNG%"
EndIf
IniRead AUTOSIZE %COMMANDER_INI% "Configuration" "AutoSizeDialogs" 1
IniRead FONTNAME %COMMANDER_INI% "AllResolutions" "FontNameDialog"
IniRead FONTSIZE %COMMANDER_INI% "AllResolutions" "FontSizeDialog"
# ПЛАГИНЫ: MODIFY_DIALOGS ................................................... #
# Диалог cm_CopySamePanel Shift+F5/F6
# AUTOSIZE, FONTNAME, FONTSIZE здесь не влияют
If %AUTORUN_TCARCH% = 32 Then
AddDialog /W:105 /CENTER:1 "TCheckComboBox"
AddControl /W:109 "TMyComboBox" 1
AddControl /Y:4 "TMyCheckBox" 2 "" #NTFS
AddControl /Y:2 "TMyCheckBox" 1 "" #MD5
AddCondition /TEXT "TButton" 1 %TREEBTN%
AddControl /X:-222 "TButton" 1 "" #Tree
AddControl /X:257 "TButton" 3 "" #OK
AddControl /X:106 "TButton" 2 "" #Cancel
Else
AddDialog /W:105 /CENTER:1 "TCheckComboBox"
AddControl /W:109 "LCLComboBox" 1 "" # м.б. когда-то заработает :(
AddCondition /TEXT "Button" 3 %TREEBTN%
AddControl /Y:6 "Button" 6 "" #NTFS
AddControl /Y:4 "Button" 2 "" #MD5
AddControl /X:-224 /Y:-8 "Button" 3 "" #Tree
AddControl /X:253 /Y:-8 "Button" 5 "" #OK
AddControl /X:102 /Y:-8 "Button" 4 "" #Cancel
EndIf
# Диалог создания файла cm_EditNewFile Shift+F4
# кнопку Дерево переносим на левый край, кнопки OK и Cancel справа вместе
# AUTOSIZE, FONTNAME, FONTSIZE здесь не влияют
If %AUTORUN_TCARCH% = 32 Then
AddDialog "TCOMBOINPUT"
AddCondition /TEXT "TButton" 1 %TREEBTN%
AddControl /X:-149 /W:-28 "TButton" 1 "" #Tree
AddControl /X:-2 "TButton" 2 "" #Cancel
AddControl /X:2 "TButton" 3 "" #OK
Else
AddDialog "TCOMBOINPUT"
AddCondition /TEXT "Button" 1 %TREEBTN%
AddControl /X:-149 /W:-28 "Button" 1 "" #Tree
AddControl /X:-2 "Button" 2 "" #Cancel
AddControl /X:2 "Button" 3 "" #OK
Endif
# Диалог атрибутов cm_SetAttrib
If %AUTORUN_TCARCH% = 32 Then
If %AUTOSIZE% = 1 Then
AddDialog "TATTRIBDLG"
# AddControl "TButton" 0
AddControl /X:-330 /W:-80 "TButton" 7 "?" #Help
AddControl /X:208 "TButton" 9 "" #OK
AddControl /X:204 "TButton" 8 "" #Cancel
Else
AddDialog "TATTRIBDLG"
# AddControl "TButton" 0
AddControl /X:-331 /W:-80 "TButton" 7 "?" #Help
AddControl /X:207 "TButton" 9 "" #OK
AddControl /X:203 "TButton" 8 "" #Cancel
Endif
Else
If %AUTOSIZE% = 1 Then
AddDialog "TATTRIBDLG"
# AddControl "Button" 0
AddControl /X:-329 /W:-80 "Button" 11 "?" #Help
AddControl /X:207 "Button" 13 "" #OK
AddControl /X:203 "Button" 12 "" #Cancel
Else
AddDialog "TATTRIBDLG"
# AddControl "Button" 0
AddControl /X:-330 /W:-80 "Button" 11 "?" #Help
AddControl /X:206 "Button" 13 "" #OK
AddControl /X:202 "Button" 12 "" #Cancel
Endif
Endif
# Диалог упаковки cm_PackFiles Alt+F5
If %AUTORUN_TCARCH% = 32 Then
If %AUTOSIZE% = 1 Then
AddDialog /H:13 "TDLGZIP"
# AddControl "TButton" 0
AddControl /X:-236 /Y:12 "TButton" 4 "" #Tree
AddControl /X:167 /Y:12 "TButton" 5 "" #OK
AddControl /X:70 /Y:12 "TButton" 3 "" #Cancel
AddControl /X:70 /Y:12 /W:-70 "TButton" 1 "?" #Help
Else
AddDialog /H:14 "TDLGZIP"
# AddControl "TButton" 0
AddControl /X:-236 /Y:14 "TButton" 4 "" #Tree
AddControl /X:167 /Y:14 "TButton" 5 "" #OK
AddControl /X:70 /Y:14 "TButton" 3 "" #Cancel
AddControl /X:70 /Y:14 /W:-70 "TButton" 1 "?" #Help
EndIf
Else
If %AUTOSIZE% = 1 Then
AddDialog /H:13 "TDLGZIP"
# AddControl "Button" 0
AddControl /X:-230 /Y:12 "Button" 21 "" #Tree
AddControl /X:170 /Y:12 "Button" 22 "" #OK
AddControl /X:75 /Y:12 "Button" 20 "" #Cancel
AddControl /X:75 /Y:12 /W:-69 "Button" 5 "?" #Help
Else
AddDialog /H:14 "TDLGZIP"
# AddControl "Button" 0
AddControl /X:-232 /Y:14 "Button" 21 "" #Tree
AddControl /X:170 /Y:14 "Button" 22 "" #OK
AddControl /X:75 /Y:14 "Button" 20 "" #Cancel
AddControl /X:75 /Y:14 /W:-68 "Button" 5 "?" #Help
Endif
Endif
# Диалог распаковки cm_UnpackFiles Alt+F9/Alt+F6
If %AUTORUN_TCARCH% = 32 Then
AddDialog "TDLGUNZIPALL"
# AddControl "TButton" 0
AddControl /W:2 "TMyComboBox" 1 "" #Auto-detect
AddControl /X:80 /W:-80 "TButton" 1 "?" #Help
If %AUTOSIZE% = 1 Then
AddControl /X:-166 "TButton" 3 "" #Tree
AddControl /X:202 "TButton" 4 "" #OK
AddControl /X:82 "TButton" 2 "" #Cancel
Else
AddControl /X:-167 "TButton" 3 "" #Tree
AddControl /X:205 "TButton" 4 "" #OK
AddControl /X:84 "TButton" 2 "" #Cancel
Endif
Else # %AUTORUN_TCARCH% = 64
AddDialog "TDLGUNZIPALL"
# AddControl "Button" 0
AddControl /X:-165 "Button" 4 "" #Tree
AddControl /X:201 "Button" 5 "" #OK
AddControl /X:82 "Button" 3 "" #Cancel
AddControl /X:80 /W:-80 "Button" 2 "?" #Help
Endif
# Диалог копирования/перемещения cm_Copy/cm_RenMove F5/F6
# кнопки слева-направо: Дерево, В очередь, Доп. (со стрелочкой), OK, Отмена
# FONTNAME, FONTSIZE не стал пока указывать
If %AUTORUN_TCARCH% = 32 Then
If %AUTOSIZE% = 1 Then
AddDialog DIALOG_COPYMOVE
AddControl /W:-20 "TMyCheckBox" 3 "" #NTFS
If StrPos(%CRNTLNG%, "RUS") > 0 Then
AddControl /X:8 /W:-7 "TMyCheckBox" 1 "" #MD5
ElseIf StrPos(%CRNTLNG%, "ENG") > 0 Then
AddControl /X:67 /W:-68 "TMyCheckBox" 1 "" #MD5
EndIf
AddControl /X:-223 "TButton" 4 "" #Tree
AddControl /X:-20 /W:-18 "TButton" 1 "" #F2
AddControl /X:-164 /W:-86 "TButton" 2 "⌵" #Options
AddControl /X:329 /W:-18 "TButton" 5 "" #OK
AddControl /X:106 /W:2 "TButton" 3 "" #Cancel
AddDialog DIALOG_COPYMOVE_PINNED
AddControl /W:-20 "TMyCheckBox" 3 "" #NTFS
If StrPos(%CRNTLNG%, "RUS") > 0 Then
AddControl /X:8 /W:-7 "TMyCheckBox" 1 "" #MD5
ElseIf StrPos(%CRNTLNG%, "ENG") > 0 Then
AddControl /X:67 /W:-68 "TMyCheckBox" 1 "" #MD5
EndIf
AddControl /X:-223 "TButton" 4 "" #Tree
AddControl /X:-20 /W:-18 "TButton" 1 "" #F2
AddControl /X:329 /W:-18 "TButton" 5 "" #OK
AddControl /X:106 /W:2 "TButton" 3 "" #Cancel
Else # %AUTOSIZE% = 0
AddDialog DIALOG_COPYMOVE
AddControl /W:-20 "TMyCheckBox" 3 "" #NTFS
If StrPos(%CRNTLNG%, "RUS") > 0 Then
AddControl /X:-4 /W:5 "TMyCheckBox" 1 "" #MD5
ElseIf StrPos(%CRNTLNG%, "ENG") > 0 Then
AddControl /X:64 /W:-68 "TMyCheckBox" 1 "" #MD5
EndIf
AddControl /X:-225 "TButton" 4 "" #Tree
AddControl /X:-19 /W:-18 "TButton" 1 "" #F2
AddControl /X:-165 /W:-86 "TButton" 2 "⌵" #Options
AddControl /X:330 /W:-18 "TButton" 5 "" #OK
AddControl /X:106 /W:2 "TButton" 3 "" #Cancel
AddDialog DIALOG_COPYMOVE_PINNED
AddControl /W:-20 "TMyCheckBox" 3 "" #NTFS
If StrPos(%CRNTLNG%, "RUS") > 0 Then
AddControl /X:-4 /W:5 "TMyCheckBox" 1 "" #MD5
ElseIf StrPos(%CRNTLNG%, "ENG") > 0 Then
AddControl /X:64 /W:-68 "TMyCheckBox" 1 "" #MD5
EndIf
AddControl /X:-225 "TButton" 4 "" #Tree
AddControl /X:-19 /W:-18 "TButton" 1 "" #F2
AddControl /X:330 /W:-18 "TButton" 5 "" #OK
AddControl /X:106 /W:2 "TButton" 3 "" #Cancel
EndIf
Else # %AUTORUN_TCARCH% = 64
If %AUTOSIZE% = 1 Then
AddDialog DIALOG_COPYMOVE
AddControl /W:-20 "Button" 5 "" #NTFS
If StrPos(%CRNTLNG%, "RUS") > 0 Then
AddControl /X:10 /W:-10 "Button" 3 "" #MD5
ElseIf StrPos(%CRNTLNG%, "ENG") > 0 Then
AddControl /X:68 /W:-65 "Button" 3 "" #MD5
EndIf
AddControl /X:-223 "Button" 7 "" #Tree
AddControl /X:-20 /W:-18 "Button" 1 "" #F2
AddControl /X:-163 /W:-85 "Button" 2 "⌵" #Options
AddControl /X:329 /W:-18 "Button" 8 "" #OK
AddControl /X:106 /W:2 "Button" 6 "" #Cancel
AddDialog DIALOG_COPYMOVE_PINNED
AddControl /W:-20 "Button" 10 "" #NTFS
If StrPos(%CRNTLNG%, "RUS") > 0 Then
AddControl /X:10 /W:-10 "Button" 8 "" #MD5
ElseIf StrPos(%CRNTLNG%, "ENG") > 0 Then
AddControl /X:68 /W:-65 "Button" 8 "" #MD5
EndIf
AddControl /X:-223 "Button" 12 "" #Tree
AddControl /X:-20 /W:-18 "Button" 6 "" #F2
AddControl /X:329 /W:-18 "Button" 13 "" #OK
AddControl /X:106 /W:2 "Button" 11 "" #Cancel
Else # %AUTOSIZE% = 0
AddDialog DIALOG_COPYMOVE
AddControl "Button" 0 ""
AddControl /W:-20 "Button" 4 "" #NTFS
If StrPos(%CRNTLNG%, "RUS") > 0 Then
AddControl /X:-5 /W:5 "Button" 1 "" #MD5
ElseIf StrPos(%CRNTLNG%, "ENG") > 0 Then
AddControl /X:65 /W:-65 "Button" 1 "" #MD5
EndIf
AddControl /X:-225 "Button" 6 "" #Tree
AddControl /X:-20 /W:-18 "Button" 2 "" #F2
AddControl /X:-164 /W:-85 "Button" 3 "⌵" #Options
AddControl /X:331 /W:-18 "Button" 7 "" #OK
AddControl /X:107 /W:2 "Button" 5 "" #Cancel
AddDialog DIALOG_COPYMOVE_PINNED
AddControl "Button" 0 ""
AddControl /W:-20 "Button" 9 "" #NTFS
If StrPos(%CRNTLNG%, "RUS") > 0 Then
AddControl /X:-5 /W:5 "Button" 1 "" #MD5
ElseIf StrPos(%CRNTLNG%, "ENG") > 0 Then
AddControl /X:65 /W:-65 "Button" 1 "" #MD5
EndIf
AddControl /X:-225 "Button" 11 "" #Tree
AddControl /X:-20 /W:-18 "Button" 7 "" #F2
AddControl /X:331 /W:-18 "Button" 12 "" #OK
AddControl /X:107 /W:2 "Button" 10 "" #Cancel
EndIf
EndIf
ModifyDialogs
|
Loopback wrote: | Без сложностей иконку можно поставить только на стандартные кнопки и static-контролы. |
Ну, и прекрасно, хватит за глаза. Давайте, пожалуйста, попробуем. Если получится, то я бы все «Справки» и «Деревья» под аккуратные контурные иконки «спрятал» , гораздо бы эргономичней вышло. Можно пока начать только с кнопок — на них иконки точно нужны. А вот пригодится ли это для static-контролов я пока не приглядывался.
Last edited by yozhik on Thu Aug 10, 2023 20:13; edited 1 time in total |
|
|
|
 |
|
Powered by phpBB © 2001, 2005 phpBB Group
|