Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 7 » Интерфейс - Копирование пути к файлу с помощью горячих клавиш

Ответить
Настройки темы
Интерфейс - Копирование пути к файлу с помощью горячих клавиш

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Всем доброго времени суток.
Собственно САБЖ: как копировать путь к файлу с помощью горячих клавиш и можно ли их заменить на свои? Про shift+пкм я знаю, но данный вариант мне абсолютно не подходит - слишком много мароки будет в будущем.
Заранее спасибо за ответ...

Отправлено: 10:10, 30-03-2012

 

Аватара для Morpheus

Ветеран


Сообщения: 12426
Благодарности: 2328

Профиль | Отправить PM | Цитировать


Цитата Dzirt2005:
Это уже минус Майкрософту, могли бы и сделать... Вечно им лень. »
Точно! А ещё блокнот должен показывать фильмы в HD качестве

Цитата Dzirt2005:
Какие проблемы программно достать путь из буфера обмена? »
Спросим у автора темы, может ли он научить программу вычленять из кучи хлама нужное?

Отправлено: 13:08, 30-03-2012 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Dzirt2005:
Какие проблемы программно достать путь из буфера обмена? »
Никто и не говорил, что проблемы здесь...
С Ctrl+C у меня тоже ничего не получается. Использую NotePad++, в него название не вставляется.

Цитата Morpheus:
garynich, сомневаюсь, что хотелка реализуема. »
Я программист, поэтому у нас все реализуется, просто отличается количество затраченных ресурсов.

Отправлено: 13:29, 30-03-2012 | #12


Ветеран


Сообщения: 1240
Благодарности: 275

Профиль | Отправить PM | Цитировать


Цитата garynich:
С Ctrl+C у меня тоже ничего не получается. Использую NotePad++, в него название не вставляется. »
Я же уже написал, что не вставится и написал почему не вставится. Программистам Майкрософта было лень наряду с другими данными вставить в буфер обмена данные с форматом CF_UNICODETEXT. Но программно не составит труда проверить и если есть, то получить данные из формата CF_HDROP. Примерно таким способом (неужели я отвечаю программисту?):
читать дальше »
Код: Выделить весь код
HANDLE Clipboard::GetData(UINT uFormat)
{
	if (UseInternalClipboard)
	{
		if (InternalClipboardOpen)
		{
			for (size_t I=0; I < ARRAYSIZE(hInternalClipboard); ++I)
			{
				if (uInternalClipboardFormat[i] != 0xFFFF && uInternalClipboardFormat[i] == uFormat)
				{
					return hInternalClipboard[i];
				}
			}
		}

		return (HANDLE)nullptr;
	}

	return GetClipboardData(uFormat);
}


...
    	hClipData=GetData(CF_HDROP);
		if (hClipData)
		{
			LPDROPFILES Files=reinterpret_cast<LPDROPFILES>(GlobalLock(hClipData));
			if (Files)
			{
				LPCSTR StartA=reinterpret_cast<LPCSTR>(Files)+Files->pFiles;
				LPCWSTR Start=reinterpret_cast<LPCWSTR>(StartA);
				string strClipText;
				if(Files->fWide)
				{
					while(*Start)
					{
						size_t l1=strClipText.GetLength();
						strClipText+=Start;
						Start+=strClipText.GetLength()-l1;
						Start++;
						if(*Start)
						{
							strClipText+=L"\r\n";
						}
					}
				}
				else
				{
					while(*StartA)
					{
						size_t l1=strClipText.GetLength();
						strClipText+=StartA;
						StartA+=strClipText.GetLength()-l1;
						StartA++;
						if(*StartA)
						{
							strClipText+=L"\r\n";
						}
					}
				}
				if(!strClipText.IsEmpty())
				{
					ClipText=reinterpret_cast<LPWSTR>(xf_malloc((strClipText.GetLength()+1)*sizeof(WCHAR)));
					wcscpy(ClipText, strClipText);
				}
				GlobalUnlock(hClipData);
			}
		}
...


Цитата Morpheus:
Спросим у автора темы, может ли он научить программу вычленять из кучи хлама нужное? »
Ээээ... А я думал, что программистам из MS было просто лень, а оказывается они мастера накидать кучу хлама! Среди которого трудно найти что-то нужное, да?

Может завяжем уже с упражнениями в остроумии? Блокнот не должен воспроизводить фильмы в HD качестве, к Блокноту вообще никаких претензий. Претензии к тому программисту, который делал копирование данных в буфер обмена при нажатии Ctrl+C из Explorer'а. Могли бы еще добавить и простой текстовый список файлов, было бы удобнее. Но не подумали/поленились/решили что оно никому не надо...

Отправлено: 15:00, 30-03-2012 | #13



Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 7 » Интерфейс - Копирование пути к файлу с помощью горячих клавиш

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Приоритет горячих клавиш! LilLoco Хочу все знать 0 10-06-2011 18:30
Интерфейс - Полный список горячих клавиш Windows Vista Stabilo1838 Microsoft Windows Vista 0 12-02-2010 14:01
[решено] Выключить комбинацию горячих клавиш. FlatX007 AutoIt 3 12-09-2009 02:13
Полный список горячих клавиш Windows Vista SimSim Microsoft Windows Vista 1 23-03-2008 15:01
отключения горячих клавиш в Windows 2000 Caty Microsoft Windows NT/2000/2003 2 10-04-2007 10:59




 
Переход