Обмен данными между гостевой и хостовой ОС

We use cookies. Read the Privacy and Cookie Policy

Обмен данными между гостевой и хостовой ОС

Virtual PC предоставляет пользователю несколько способов обмена данными между гостевой и хостовой ОС. Один из них — применение разделяемых папок — был рассмотрен ранее. В этом подразделе рассказано, как осуществить оперативный обмен данными между приложениями гостевой и хостовой ОС. Основных механизмов два: передача данных через буфер обмена и перетаскивание объектов между окнами приложений гостевой и хостовой ОС с помощью мыши.

И еще необходимо помнить об одном важном ограничении: непосредственный обмен данными между двумя виртуальными машинами невозможен, в качестве посредника обязательно должна использоваться хостовая ОС.

Передача данных через буфер обмена

В виртуальной машине не работают привычные для многих пользователей Windows системные комбинации клавиш Ctrl+C и Ctrl+V, соответствующие командам Копировать и Вставить. Поэтому для работы с буфером обмена в ВМ применяются комбинации-«заместители» (см. табл. 2.4), а также команды меню Edit (правка) окна виртуальной машины. Однако даже применение этих команд само по себе не гарантирует получения требуемого результата. Прежде всего при передаче данных через буфер обмена необходимо учитывать тип этих данных: текст, графика либо информационный объект (файл или папка). Кроме того, на механизм обмена данными влияет то, установлен ли на конкретной ВМ пакет расширений для виртуальных машин.

Обмен текстовыми данными возможен только между приложениями гостевой и хостовой ОС, поддерживающими работу с текстом (например, между двумя текстовыми редакторами). Причем параметры форматирования при передаче текста не сохраняются.

Чтобы передать через буфер обмена текстовый фрагмент из хостовой ОС в приложение гостевой ОС, выполните следующее.

1. В приложении-источнике выделите передаваемый фрагмент и поместите его в буфер обмена хостовой ОС любым способом, разрешенным в этой ОС (например, с помощью комбинации клавиш Ctrl+C).

2. В окне гостевой ОС откройте (или сделайте активным) окно приложения-приемника.

3. В меню Edit (или Правка) приложения-приемника выберите команду Paste (или Вставить), либо используйте любое другое средство вставки данных из буфера обмена, поддерживаемое приложением-приемником (например, комбинацию клавиш Ctrl+V).

ВНИМАНИЕ. По неизвестной причине невозможно передать текстовый фрагмент описанным способом из редакторов MS Word и WordPad. В то же время в качестве приложения-приемника и гостевой ОС оба работают исправно.

Передача через буфер обмена из хостовой ОС в приложение гостевой ОС графического фрагмента документа или экранного изображения (снимка экрана) выполняется аналогичным образом. Разумеется, приложение-приемник должно поддерживать работу с графикой. Кроме того, на ВМ обязательно должны быть установлены расширения для виртуальных машин. В противном случае передача графики в ВМ из хостовой ОС вообще невозможна.

Следует отдельно упомянуть о вставке изображений и текстовых данных с использованием технологии OLE, то есть в качестве внедренных объектов. Если приложение-приемник поддерживает механизм OLE (к таковым относятся, в частности, все приложения Microsoft Office), то можно вставлять в документ данные, передаваемые из приложения хостовой ОС, с помощью команды Специальная вставка.

Передача объектов других типов посредством механизма OLE из хостовой ОС в гостевую невозможна. Однако вы можете поместить любой объект, подлежащий передаче (например, электронную таблицу Excel) в разделяемую папку ВМ и выполнить вставку объекта оттуда.

Чтобы передать через буфер обмена текстовый фрагмент или изображение из гостевой ОС в приложение хостовой ОС, выполните следующее.

1. В приложении-источнике выделите передаваемый текстовый фрагмент или изображение.

2. В меню Edit (Правка) окна ВМ выберите команду Сору (Копировать) или нажмите комбинацию главная клавиша+С.

3. В окне хостовой ОС откройте (или сделайте активным) окно приложения-приемника. 

4. В приложении-приемнике вставьте передаваемый фрагмент любым способом, разрешенным в этой ОС (например, с помощью комбинации клавиш Ctrl+V).

Если на ВМ не установлены расширения для виртуальных машин, то необходимо специальным образом выделять в окне приложения-источника передаваемый фрагмент (требуется нажать и удерживать главную клавишу).

Передача файлов и папок между хостовой и гостевой ОС через буфер обмена невозможна — для таких операции используется метод перетаскивания (drag-and-drop).

Перетаскивание объектов

Перетаскивание — это единственный способ непосредственного копирования файлов и папок из ВМ в хостовую ОС (или из хостовой ОС в ВМ). Кроме того, невозможно вырезать объект, принадлежащий ВМ, и поместить его в окно хостовой ОС (как, впрочем, невозможно и перемещение в обратном направлении).

Чтобы перемещать (а не копировать) файл или папку между хостовой ОС и ВМ можно использовать в качестве «перевалочного пункта» разделяемую папку.

При копировании данных из ВМ в хостовую ОС в окне ВМ открывается информационное окно, отображающее состояние процесса копирования (рис. 2.57).

Рис. 2.57. Состояние процесса копирования отображается в специальном окне

При обмене файлами и папками между ВМ и хостовой ОС необходимо учитывать следующие ограничения:

? для такого обмена данными неприменимы операции с буфером обмена (копирование, вырезание и вставка), соответственно, не работают в таких ситуациях сочетания клавиш Ctrl+C, Ctrl+X, Ctrl+V и команды контекстного меню;

? файлы и палки можно копировать только в папку (или на рабочий стол), но не в окно какого-либо приложения;

? при перетаскивании файлов и папок из ВМ в хостовую ОС не поддерживается правая кнопка мыши.