VB. Чем положить текст в буфер обмена?
Модератор: Naeel Maqsudov
Приветствую!
Требуется чтобы запустилась программа на VB и сбросила в буфер обмена текст, например текущую дату.
Может есть что-то готовое в Windows?
Требуется чтобы запустилась программа на VB и сбросила в буфер обмена текст, например текущую дату.
Может есть что-то готовое в Windows?
-
- Сообщения: 526
- Зарегистрирован: 04 фев 2007, 18:37
- Откуда: Сургут
- Контактная информация:
Здравствуйте Avsha.
существуют "готовые" инструкции для работы с буфером обмена:Евгений.
существуют "готовые" инструкции для работы с буфером обмена:
Код: Выделить всё
sData = Clipboard.GetText()
Clipboard.Clear
Clipboard.SetText sData
Teslenko_EA, спасибо
буду разбираться
Общая задача - нажать что-нибудь на рабочем столе и в буфер попадает текст - "2008.07.28"
При назывании папки в проводнике вставляем этот текст.
Привык назвать папки в Windows, начиная с такой строки
буду разбираться
Общая задача - нажать что-нибудь на рабочем столе и в буфер попадает текст - "2008.07.28"
При назывании папки в проводнике вставляем этот текст.
Привык назвать папки в Windows, начиная с такой строки

- Aent
- Сообщения: 1129
- Зарегистрирован: 01 окт 2006, 14:52
- Откуда: Saratov,Russia
- Контактная информация:
Avsha, а просто добавить в контекстное меню проводника ссылку на скрипт на VBS ?
Код: Выделить всё
Dim oWsh,oShell,oFolder
On error resume next
Set oWsh = CreateObject("WScript.Shell")
set oShell = CreateObject("Shell.Application")
set oFolder = oShell.NameSpace(oWsh.CurrentDirectory)
oFolder.NewFolder Mid(Date,7,4) & "-" & Mid(Date,4,2) & "-" & mid(Date,1,2)
Андрей Энтелис,
aentelis.livejournal.com
aentelis.livejournal.com
наверно - это как раз то, что мне нужно, а как это сделать?просто добавить в контекстное меню проводника ссылку на скрипт на VBS
- Aent
- Сообщения: 1129
- Зарегистрирован: 01 окт 2006, 14:52
- Откуда: Saratov,Russia
- Контактная информация:
Вышеприведённый скрипт положить в папку Windows под именем fad.vbs
Набить reg файл fad.reg
Выполнить его.
Теперь если в целевой папке вы кликните правой клавишей мыши на какой то папке, то в
появившемся контекстном меню будет пункт Folder as Date.
Его выбор приведёт к исполнению скрипта.
К сожалению, c ходу я не могу придумать как простыми средствами выполнить скрипт из
меню выпадающему по правому клику в пустом пространстве проводника (там где пункт создать)
Можно так же изменить скрипт чтобы папка с датой создавалась при клике на родительской папке.
Или не создавать папку а переименовывать существующую папку с именем "Новая Папка" или иным в имя, полученное из текущей даты.
Кстати, для приведённого выше reg файла имя папки передаётся в скрипт первым параметром. И может быть получено через
WScript.Arguments....
Набить reg файл fad.reg
Код: Выделить всё
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Folder\shell\Folder_as_Date]
@="Folder as Date"
[HKEY_CLASSES_ROOT\Folder\shell\Folder_as_Date\command]
@="wscript.exe C:\\WINDOWS\\fad.vbs %L"
Теперь если в целевой папке вы кликните правой клавишей мыши на какой то папке, то в
появившемся контекстном меню будет пункт Folder as Date.
Его выбор приведёт к исполнению скрипта.
К сожалению, c ходу я не могу придумать как простыми средствами выполнить скрипт из
меню выпадающему по правому клику в пустом пространстве проводника (там где пункт создать)
Можно так же изменить скрипт чтобы папка с датой создавалась при клике на родительской папке.
Или не создавать папку а переименовывать существующую папку с именем "Новая Папка" или иным в имя, полученное из текущей даты.
Кстати, для приведённого выше reg файла имя папки передаётся в скрипт первым параметром. И может быть получено через
WScript.Arguments....
Андрей Энтелис,
aentelis.livejournal.com
aentelis.livejournal.com
- Aent
- Сообщения: 1129
- Зарегистрирован: 01 окт 2006, 14:52
- Откуда: Saratov,Russia
- Контактная информация:
Ссылки по теме
http://www.script-coding.info/ContMenuExpl.html
http://www.windowsfaq.ru/content/view/654/45/
и особенно
http://www.hitechworld.ru/content/view/193/47/
http://www.script-coding.info/ContMenuExpl.html
http://www.windowsfaq.ru/content/view/654/45/
и особенно
http://www.hitechworld.ru/content/view/193/47/
Андрей Энтелис,
aentelis.livejournal.com
aentelis.livejournal.com
- Aent
- Сообщения: 1129
- Зарегистрирован: 01 окт 2006, 14:52
- Откуда: Saratov,Russia
- Контактная информация:
К сожалению, должен заменить, что под WSH 5.7 под VISTA свойство .CurrentDirectory объекта
WScript.Shell работает некорректно. Так что это код для XP (WSH 5.6)
WScript.Shell работает некорректно. Так что это код для XP (WSH 5.6)
Андрей Энтелис,
aentelis.livejournal.com
aentelis.livejournal.com
Aent, огромное спасибо
за готовое решение и вводный курс в VBS.
Папок на рабочем столе достаточно, от них "толкаюсь" и запускаю ваш скрипт.
за готовое решение и вводный курс в VBS.
Папок на рабочем столе достаточно, от них "толкаюсь" и запускаю ваш скрипт.
- Aent
- Сообщения: 1129
- Зарегистрирован: 01 окт 2006, 14:52
- Откуда: Saratov,Russia
- Контактная информация:
Avsha, Не за что 
Если вам нужно создавать папки именно на рабочем столе, то можно просто поместить ярлык на cлегка модифицированный скрипт на рабочий стол.
Ссылка на рабочий стол получается так
Хотя, IMHO, cохранять любые данные на рабочем столе - плохая практика.
Windows начинает очень сильно тормозить ....

Если вам нужно создавать папки именно на рабочем столе, то можно просто поместить ярлык на cлегка модифицированный скрипт на рабочий стол.
Ссылка на рабочий стол получается так
Код: Выделить всё
....
set oFolder = oShell.NameSpace(oWsh.SpecialFolders("Desktop"))
......
Windows начинает очень сильно тормозить ....
Андрей Энтелис,
aentelis.livejournal.com
aentelis.livejournal.com