Снайперский инструмент в Windows 7 + 10: сохранять изображения с расширением PNG в нижнем регистре?

5859
Kai Noack

Для быстрого снятия снимков экрана достаточно инструмента для подрезки в Windows. Единственная (и раздражающая) проблема заключается в том, что он сохраняет все файлы с расширением PNG в верхнем регистре, напримерscreenshot.PNG

Поскольку в программном обеспечении нет опций, позволяющих изменить это поведение, может ли кто-нибудь обеспечить взлом для сохранения файлов с .pngрасширением в нижнем регистре ?

Спасибо.


PS1: Этот вопрос был задан в августе 2009 года на microsoft.com . Ответ: «Удалите PNG и введите png». - Ответ: «ПОЛНЫЙ ОТКАЗ»

PS2: проблема все еще существует в Windows 10. Я использовал Центр обратной связи, чтобы сообщить об этом, и надеюсь, что разработчики Microsoft исправят это наконец.

8
Учитывая, что Windows нечувствительна к регистру, я не уверен, почему так важно, что расширения файлов даже не отображаются по умолчанию Ramhound 10 лет назад 0
Вероятно, есть какой-то редактор ресурсов, который можно использовать для изменения строки, но, к сожалению, у меня нет конкретного предложения. jjlin 10 лет назад 0
@Ramhound Это имеет значение, например, если вы загружаете файл на веб-сервер, работающий в Linux, который чувствителен к регистру. yroc 9 лет назад 0

4 ответа на вопрос

16
wepiha

The bytes appear to be hard-coded into the executable:

List of orintable strings found in SnippingTool.exe, showing the uppercase PNG

Update

I was able to edit a copy of SnippingTool.exe to have SnippingTool work as you desire:

Hexadecimal values BEFORE my modification: Shows the unmodified bytes

Hexadecimal values AFTER my Modification: Shows the newly modified bytes

My SnippingTool save dialog now: Shows the SnippingTool.exe that saves with lowercase png

Note: I would take extreme care when editing binary files using a hex editor in they way that I have. Please make sure you do not modify any system files directly, and be aware that if you choose to modify your own files you do so at your own risk!

Спасибо, что дали мне знать. Теперь вопрос, как я могу изменить жестко закодированную часть;) Kai Noack 10 лет назад 0
Я обновил свой пост, чтобы показать, что это может быть достигнуто. wepiha 10 лет назад 2
Большое спасибо. Проблема, с которой я сталкиваюсь, я могу скопировать файл из папки system32 на мой рабочий стол. Отредактируйте это. Но копирование обратно не работает, даже после того, как он забрал владелец корабля и запустил Explorer в качестве администратора. Я перечислил файлы в папке system32 из строки cmd, snippingTool.exe не появляется! Тем не менее, с исследователем я могу видеть это. Теперь я застрял. Kai Noack 10 лет назад 0
Вы должны быть в состоянии восстановить хранилище компонентов и исправить отсутствующий / неверный исполняемый файл с помощью команды `sfc / scannow` из командной строки с повышенными привилегиями. В будущем я бы посоветовал не заменять системные файлы, а вместо этого запускать измененную ** копию ** файла SnippingTool.exe ... wepiha 10 лет назад 1
@wepiha Я попробовал команду sfc, и Windows сказала: `Windows Resource Protection обнаружила поврежденные файлы, но не смогла исправить некоторые из них. Подробная информация включена в CBS.Log windir \ Logs \ CBS \ CBS.log. Например, C: \ Windows \ Logs \ CBS \ CBS.log`. Проблема в том, что я не могу открыть файл CBS.log, чтобы проверить, был ли применен SnippingTool.exe. Я получаю сообщение "Доступ запрещен". ... Я все еще не могу скопировать SnippingTool.exe в папку system32. Kai Noack 10 лет назад 0
3
joeqwerty

You can always do this: from the directory where the PNG files are run REN *.PNG *.png from a command prompt.

Затем я мог также нажать F2 на клавиатуре и переименовать вручную. Я на самом деле ищу автоматизированное решение, которое экономит мне эти 5 секунд на скриншот. Kai Noack 10 лет назад 1
Более элегантный подход - заключить эту команду в пакетный файл, а затем запускать ее один раз, когда вам это нужно. wepiha 10 лет назад 1
3
Kai Noack

Ah, I found one way! Damn easy and did not think of it until now: When entering the filename just add .png in the end. This requires no hack, and is kind of fast (< 1 second).


Update 2018

Since the hex edit suggested did not work out for me, I changed the screenshot software and use now Lightscreen which is tiny and handy, and provides quick shortcuts (Print saves fullscreen immediately to file, CTRL print opens the dialog to capture a screenarea). The tool gives you previews, screenshot history, can even upload to imgur.com directly and returns the URL, and runs portable.

So turning away from Microsoft's snipping tool after being filename bugged so often over the years.

Вы должны принять это как ответ, чтобы вопрос не остался без ответа. Jason C 10 лет назад 0
На самом деле я попробовал решение Wephia, но потерпел неудачу, так как используемый мной шестнадцатеричный редактор не отображал те же данные. Я все еще хотел бы использовать его ответ, а затем выбрать его. Но какой шестнадцатеричный редактор он использует? Kai Noack 10 лет назад 0
Это не должно иметь значения. Шестнадцатеричный редактор - это шестнадцатеричный редактор, и расположение данных может легко меняться в зависимости от версии инструмента для резки. Вы должны делать то, что он делает концептуально, а не точно. Найдите в файле строку широких символов ".PNG" и сделайте ее строчной, независимо от того, где она находится в файле, используя любой шестнадцатеричный редактор, какой пожелаете. И сначала сделайте резервную копию. Jason C 10 лет назад 0
Ах, я использовал HxD Hex Editor и искал `.PNG`, который не мог быть найден. Теперь я видел, что вы можете переключаться с «Текст» на «HEX» в режиме поиска, я нашел важную часть, наконец, поиск `50004E` ... :) Kai Noack 10 лет назад 0
0
SunnyNewb

As a short term solution there are ways around it. I have experienced this problem with loading images from a windows OS to an apple device. I have used two methods:

  1. Open the file with paint and save as png. It will save as lower case (true for windows 8).
  2. Change the my documents view to show file extensions. You can then rename the document with a lower case file name.
Или вы можете просто сохранить его с помощью png в нижнем регистре из инструмента «Отрезать», как указано здесь. Jason C 10 лет назад 0