Батник, использующий nircmd для вставки содержимого буфера (текст или изображение) в новый файл в текущей панели. Жмем хоткей (например Ctrl+Shift+V), вводим имя — получаем файл. Оставляем поле пустым — файл автоматически называется по текущей дате-времени без расширения. Формат изображения определяется nircmd по расширению (по-умолчанию PNG).
Параметр в TC: “?%O” .
Не забудьте поменять путь к nircmd на свой.
@echo off
REM Paste clipboard content to new file. Text or image (image format determined by extension).
REM Filename in parameter. Defaults to current date-time.
set nircmd=B:\Progs\AUTO\NirLauncher\NirSoft\nircmd-x64.exe
if not [%1]==[] goto havearg
for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /format:list') do set dt=%%I
set fname=%dt:~0,4%-%dt:~4,2%-%dt:~6,2%_%dt:~8,6%
start "" /wait %nircmd% clipboard writefile %fname%
if not exist %fname% %nircmd% clipboard saveimage %fname%
exit /b
:havearg
set arg=%1
set arg=%arg:~0,1%
set arg=%arg:"=///%
if ///==%arg% (
start "" /wait %nircmd% clipboard writefile %*
if not exist %* %nircmd% clipboard saveimage %*
) else (
start "" /wait %nircmd% clipboard writefile "%*"
if not exist "%*" %nircmd% clipboard saveimage "%*"
)
' Создать файл с текстом буфера обмена (при наличии) и открыть его в редакторе
' Параметры: "%P" "<путь к редактору>"
'===================================================================================
P = WScript.Arguments(0) : Ed = WScript.Arguments(1)
Set FSO = CreateObject("Scripting.FileSystemObject")
Dim WSH : Set WSH = CreateObject("WScript.Shell")
R = "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\2007"
A = WSH.RegRead(R)
If A > 0 Then WSH.RegWrite R, 0, "REG_DWORD"
Clip = CreateObject("htmlfile").ParentWindow.ClipboardData.GetData("text")
If A > 0 Then WSH.RegWrite R, A, "REG_DWORD"
If Trim(Clip) = "" Then Quit
File = FSO.GetBaseName(FSO.GetTempName) & ".txt"
FSO.OpenTextFile(P & File, 2, True).Write Clip : WSH.Exec(Ed & " " & File) : Quit
Function Quit : Set WSH = Nothing : Set FSO = Nothing : WScript.Quit : End Function
Хотелось бы, чтобы в его модификации названия создаваемых файлов были более информативными, например, по текущему времени, со структурой, анологичной той, которая получается при работе вот с таким батом:
rem @echo off
set dd=%DATE%
set tt=%TIME%
set /a ddd=%dd:~0,2%
IF %ddd% LSS 10 (
SET day=0%ddd%) else (
SET day=%ddd%)
set month=%dd:~3,2%
set year=%dd:~6,4%
set /a ttt=%tt:~0,2%
IF %ttt% LSS 10 (
SET hour=0%ttt%) else (
SET hour=%ttt%)
Dimsok
Прочти памятку в части оформления кодов, а также ремарки снизу. Мой скрипт (и его модификация) находится за 5 секунд хотя бы по названию. Где спрашивать и как давать ссылку на нужный пост вместо оверквотинга, надеюсь, уже рассказывать не надо (это всё также прописано в памятке).
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Думаю, у тебя где-то ошибка. nircmd давно обновлял?
Dimsok писал(а):А с удалением части создается без дописывания sendkeypress.
Панель сам будешь обновлять? См., там ещё с переходом пример есть.
С Юникодом у nircmd проблемы. Тут - либо скриптом либо Акелем.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Какая ошибка? Я скопировал кнопку и поменял только путь для ниркоммандера. .А насчет обновления не знаю, моментально новый созданный файл отображается.
И ещё, ниркоммандер никак не влияет на windows script host. Вот после использования в некоторых скриптах (например тех, которые для этой же цели предназначены) стала вылазить ошибка. Помню такое и раньше было, как раз испльзовал нир. Может это совпадение, не знаю. Но эти скрипты я минут 10 назад нормально использовал
Dimsok писал(а):поменял только путь для ниркоммандера
Папку?
Dimsok писал(а):моментально новый созданный файл отображается.
Автообновление стоит, значит, хотя даже с ним не моментально.
Dimsok писал(а):И ещё, ниркоммандер никак не влияет на windows script host. Вот после использования в некоторых скриптах (например тех, которые для этой же цели предназначены) стала вылазить ошибка.
Так нет объектной модели, просто утилита запускается. C WSH тут вообще никаких завязок. А ошибки могут возникать только при неверном синтаксисе либо неграмотно используемых переменных в комстроке.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Вот путь. Нир лежит в корневой папке тотала. Да ведь то же самое работает для создания файлов без открытия. А про неверный синтакстис, я ведь в них ничего не менял, просто использую по нажатию горячей клавиши. Ладно, после перезагруза должно нормализоваться
А у тебя в процессах не висят nircmd?
Но вообще, даже если открытия не происходит, то файл всё равно должен создаваться. Проверь.
Вопрос, а если вместо notepad прописать полный путь к редактору в кавычках - откроет?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Вообще не понимаю, о чём ты. Кавычки все на месте.
Dimsok писал(а):Кстати, какая разница между "%P"% и "%P%
Не нужно вообще рассматривать вырванный кусок в контексте параметров ТС. %% возвращает в комстроке % и в данном случае касается только cmd. %P берётся в кавычки, только пребывая в одиночестве.
Dimsok писал(а):Ооо, заработало, не понятно из за чего
Что именно? Я отсюда не вижу твоих танцев с бубном.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.