неизвестный файл, снят флажок для rundll32.exe shell32.dll, OpenAs_RunDLL - PullRequest
0 голосов
/ 02 июня 2019

Это диалоговое окно «Открыть с помощью» в Windows. Нормальным поведением при открытии неизвестного файла является то, что флажок установлен. Это плохо для новичков, которые забудут снять флажок и никогда не смогут снова получить этот диалог и будут знать, что вы можете использовать более одной программы для открытия файла. Осознание выбора, свобода - это хорошо.

открыть с помощью диалога

"@ = none" не позволяет другим ассоциациям захватывать диалог открытия по умолчанию.

«associate.cmd» ниже делает флажок «Открыть с помощью диалога» снятым, но затемненным.

Каким-то образом я обнаружил, что, если поставить одну кавычку перед% 1, диалог открытия с не будет выделен серым цветом.

рег файл:

[HKEY_CLASSES_ROOT\*\shell]
@="none"

[HKEY_CLASSES_ROOT\Unknown\shell\openas\command]
@=hex(2):cmd.exe /c d:\software\associate\associate.cmd "%1

файл associate.cmd:

reg query HKCR\%~x1
if %errorlevel%==1 assoc %~x1=filetype%~x1
start rundll32.exe shell32.dll,OpenAs_RunDLL %1

В приведенном выше reg-файле есть запись hex (2), поэтому она не будет читаться здесь. Однако я использую следующий инструмент для его кодирования после редактирования: https://mekineer.com/information-technology/2019-windows-7-setup#regfileediting

В этих условиях «open with», также известный как OpenAs_RunDLL, похоже, обрабатывает путь к файлу из нескольких слов (один с пробельными символами) как несколько файлов. Принимающая программа сначала получает первое слово с путем, а затем следующее слово (слова) с рабочим путем принимающей программы. Происходит много «файлов не найден».

Ваша предыдущая попытка использования OpenAs_RunDLL добавила запись в контекстное меню «открыть с» для типа файла, с которым вы работали. Если в контекстном меню «Открыть с помощью» имеется более одной записи, оно становится подменю с вашими предыдущими вариантами открытия файла. Таким образом, без ошибок вы можете щелкнуть правой кнопкой мыши по файлу из нескольких слов и выбрать, с какой программой открыть его. OpenAs_RunDLL можно пропустить, поскольку вы можете выбрать нужное приложение из подменю «открыть с помощью», а не «выбирать программу ...».

Таким образом, диалоговое окно «Открыть с помощью» по умолчанию имеет флажок unchecked-checkbox, который может быть отмечен (не выделен серым цветом), но неправильно открывает путь к файлу из нескольких слов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...