===================================================================== AJPapps - Notepad proxy 2.01 Линда Кайе 2011-2020. Посвящается Ариэль ===================================================================== Эта маленькая программа подменяет собой Блокнот Windows чтобы вместо него запускать Ваш любимый текстовый редактор. Представьте, что у Вас есть какая-нибудь крутая программа для редактирования текстов с кучей подсветок, макросов, кнопочек и прочих рюшечек. Вы используете её каждый день, пишите в ней свои мемуары, стихи, вэб-страницы. Однако Вас печалит то, что есть много файлов, которые по умолчанию открываются в Блокноте. Можно, конечно, перенастроить файлы на Вашу программу, отлавливать каждый новый такой файл, чтобы и его тоже перенастроить. А можно просто заменить Блокнот этой программой чтобы она открывала Вашу программу для всех файлов, настроенных на открытие в Блокноте. История создания ---------------- С незапамятных времён я наблюдаю как народ всякие БРЕДы, Квикеры и прочие Блокноты+ переименовывает в Notepad.EXE и копирует в папку Windows. И каждый раз меня коробит такой способ тем, что системная папка засоряется всякими сопутствующими файлами, которым там не место. Или же копируется только EXE файл без файлов справки, настроек и прочих необходимых файлов в надежде, что и так всё заработает. Появился даже отдельный класс программ - Убийцы Блокнота. Авторы обычно обещают золотые горы в одном маленьком EXE файле и замену "надоевшему" Блокноту. У меня тоже есть такая программа. Она называется Дана и не относится к убийцам, поскольку вместе с ней ещё два метра всяких необходимых файлов. Её не скопируешь в каталог Windows, и неизвестно как она поведёт себя, если её переименовать. Что делать? Однажды меня посетила идея о том, что неплохо было бы, если бы Блокнот сам запускал нужную программу. Эта идея и переросла в данную программу. Она просто принимает командную строку и запускает с ней указанную в настройках программу. Собственно, я больше времени потратила на написание этого файла, чем программы ^_^ [2.07.2011] Наконец программа усовершенствована, и теперь использует одну интересную особенность Windows NT для подмены одной программы другой. Вообще-то, это фича из Notepad2, но я подумала, что неплохо бы сделать универсальный вариант, так что помимо старого способа подмены, эта программа использует новый. История изменений ----------------- • 1.00.0000 Первый релиз. • 2.00.0027 [+] Новый способ подмены Блокнота. [+] Программа переписана на Visual Basic. • 2.00.0032 [-] Программа в определённых условиях жаловалась на неправильную командную строку и не запускала редактор. Это случалось, если запуск происходил через CreateProcess() с передачей только имени файла ("NotePad.EXE") без кавычек. • 2.01.0044 [26.08.2019] [+] Программа теперь ждёт отклика от запущенного редактора прежде чем завершиться. Должно помочь в открытии файлов из 7-zip и сообщений об ошибках компиляции в VB. • 2.01.0063 [13.05.2020] [-] В Windows NT программа выдавала сообщение об ошибке, если текущий каталог содержал в имени какие-нибудь иероглифы. [+] Чуть облогорожены скрипты установки и удаления программы. Зависимости ----------- Для работы этой программы нужны следующие компоненты: • Microsoft Visual Basic Virtual Machine Файл MSVBVM60.DLL Эти компоненты обязательны. Они уже включены в программу установки ^_^ Информация о разработке ----------------------- Язык: Microsoft Visual Basic 6.0 SP6 Платформа: Windows XP Professional SP3 Установка. Способ #1 - ручками ------------------------------ 0. Войдите в систему с правами администратора. 1. Найдите каталог с файлом Notepad.EXE. В Windows 9x это обычно что-то вроде C:\Windows, а в Windows NT - C:\WinNT\System32 или C:\Windows\System32. 2. В найденной папке файл Notepad.EXE в Notepad1.EXE. Это может быть полезным, если вы захотите удалить мою программу или же в случае, когда что-то удобнее править в оригинальном Блокноте. 3. Распакуйте куда-нибудь архив с моей программой. Без паники - это самораспаковывающийся архив. 4. В папке, куда вы распаковали архив, найдите файл NotepadProxy.EXE и переименуйте в Notepad.EXE. 5. Полученный файл скопируйте в каталог из первого пункта. 6. Найдите каталог Windows. Обычно это что-то вроде C:\Windows. 7. Скопируйте туда файл NotepadProxy.INI из папки, куда вы распаковали архив. 8. Теперь можно открыть скопированный NotepadProxy.INI и настроить программу (читайте об этом ниже). Файл должен открыться в WordPad. Этот способ прекрасно работает в Windows 9x, в Windows NT требует прав администратора. Начиная с Windows 2000, существует защита системных файлов, которая не даст осуществить замену по вышеуказанной инструкции. Поэтому в данных системах я рекомендую второй способ. Установка. Способ #2 - Windows 2000 и выше ------------------------------------------ 0. Войдите в систему с правами администратора. 1. Найдите каталог с файлом Notepad.EXE. Это обычно что-то вроде C:\Windows\System32. 2. В найденной папке файл Notepad.EXE в Notepad1.EXE. Это может быть полезным, когда что-то удобнее править в оригинальном Блокноте. 3. Распакуйте архив с программой куда-нибудь, например, в каталог по умолчанию. Без паники - это самораспаковывающийся архив. 4. Найдите каталог Windows. Обычно это что-то вроде C:\Windows. 5. Файл NotepadProxy.INI скопируйте (а лучше - переместите) в этот каталог. 6. Запустите скрипт Install.VBS из каталога программы. 7. Теперь можно открыть скопированный NotepadProxy.INI и настроить программу (читайте об этом ниже). Файл должен открыться в WordPad. Этот способ НЕ работает в Windows 9x. В Windows 2000 и выше он не вызывает нареканий от системы защиты файлов. Установка в Windows 2000, XP и Server 2003 ------------------------------------------ Внимание! Этот способ борьбы с системой защиты файлов нынче не рекомендуется. Используйте второй способ установки. Обычный способ не сработает из-за системы защиты файлов (WFP), которую можно обойти небольшим трюком. 1. Для начала входим в систему с правами администратора. Это обязательное условие - иначе Вам не дадут что-либо заменить... И заодно вынимаем диск с Windows XP из привода, если вдруг он там оказался. 2. На всякий пожарный копируем файлы Notepad.EXE в каталоге Windows и системном каталоге в Notepad2.EXE. 3. Ищем в системном каталоге папку DLLCache. Например, в Windows XP это C:\Windows\System32\DLLCache. В ней должно быть много всяких файлов и библиотек. 4. Ищем в этой папке файл Notepad.EXE, а потом заменяем его на только что скаченный файл Notepad.EXE. Пока ни чего не должно произойти. 5. Теперь копируем тот же файл с каталог Windows и в системный каталог. 6. Тут же должна ожить система защиты файлов и потребовать установочный диск. Нажимаем "Отмена" в появившемся окне и подтверждаем, что хотим оставить новый файл как есть. Больше система ругаться не должна. NotepadProxy.INI ---------------- Этот файл настраивает программу, и должен лежать в каталоге Windows независимо от того, где лежит сама программа. Вот его содержимое: [Shell] Program=Write.EXE Параметр Program (пока единственный) определяет программу, которую следует запустить вместо Блокнота. В данном случае установлен WordPad. Здесь можно записать полное имя файла или только EXE файл, если программа сможет его найти. При ошибке запуска указанной программы, будет выдано сообщение об ошибке. Использование ------------- Программа не показывает никаких окон, не поддерживает ни каких параметров командной строки, поэтому используется как посредник между системой и вашей программой. Например, если Вы используете Дану, то при открытии в Блокноте некоего файла, запускается моя программа примерно вот так: C:\Windows\Notepad.EXE "I:\Docs\URLs.TXT" Программа читает настройки и запускает Дану с теми параметрами, которые были переданы ей: C:\Utils\Dana\Dana.EXE "I:\Docs\URLs.TXT" После этого программа завершает работу, а вы правите файл в Дане ^_^ Удаление. Способ #1 ------------------- Если вы устанавливали программу первым способом, то сделайте следующее. 0. Войдите в систему с правами администратора. 1. Удалите файлы Notepad.EXE и NotepadProxy.INI из каталогов, в которые вы их копировали по инструкции. 2. Переименуйте файл Notepad1.EXE в Notepad.EXE. Удаление. Способ #2 ------------------- Если вы устанавливали программу вторым способом, то сделайте следующее. 0. Войдите в систему с правами администратора. 1. Удалите файл NotepadProxy.INI из каталога, в который вы его копировали по инструкции. 2. Запустите скрипт Uninstall.VBS из каталога программы. 3. Удалите каталог программы. Маленький копирайт ------------------ 1. Программа распространяется бесплатно. 2. Вы имеете право распространять её на тех же условиях. 3. При распространении вы не имеете права менять авторство программы, присваивать его себе или каким-либо иным способом искажать его. 4. Разрешено коммерческое использование программы (в офисе, на производстве) за исключением её платного распространения или сдачи в аренду. 5. Программа распространяется как есть. Автор не несёт ответственности за любые трагедии или несчастные случаи, вызванные использованием программы. 6. Вы имеете право использовать ActiveX компоненты, поставляемые с программой, в собственных программах. При этом автор не гарантирует совместимость будущих версий компонентов. 7. Для любого пункта данного соглашения может быть сделано исключение с разрешения автора программы. 8. По любым вопросам, связанным с данной программой, обращайтесь по адресу lindaoneesama@gmail.com Контакты -------- Почта: lindaoneesama@gmail.com Сайт: https://www.lindachan.net