Как мне разрешить Delphi XE2 просматривать общую папку на моем Mac из виртуальной машины VirtualBox под управлением Windows 7

#macos #delphi #virtualbox #windows-7-x64 #delphi-xe2

#macos #delphi #virtualbox #windows-7-x64 #delphi-xe2

Вопрос:

Я использую 64-разрядную версию Windows 7 Ultimate под управлением VirtualBox (последняя версия, 4.1.4) на моем MacBook Air. Я создал общую папку на Mac в своей папке пользователя. Я предоставил права на чтение / запись этой папке своей учетной записи. (Я также настроил для нее доступ на чтение / запись для всех, и это ничего не изменило.)

В Windows 7 в VirtualBox я добавил эту папку в качестве общей папки.

Из моей виртуальной машины Windows 7 я могу видеть эту папку, создавать в ней новые папки и файлы и читать папки и файлы с помощью проводника Windows.

Проблема связана с Delphi XE2. Если я попытаюсь открыть или сохранить проект в этой общей папке, в диалоговом окне сохранения появится общий ресурс (который я в настоящее время сопоставил с сетевым диском) с красным значком X, указывающим, что с ним что-то не так. Если я нажму на эту папку, Delphi отобразит диалоговое окно с заголовком «Восстановление сетевого подключения» и сообщением «Произошла ошибка при повторном подключении E: к общим папкам VBOXSVR Demos VirtualBox: запрос не поддерживается. Это соединение не было восстановлено «.

То, что я не могу сохранять проекты в этой общей папке, препятствует моей способности легко создавать приложения для iOS и создавать необходимые папки Xcode с помощью Delphi dpr2xcode.exe полезность. Вместо этого мне нужно создать папку проекта локально, запустить dpr2code.exe чтобы сгенерировать проект Xcode, а затем использовать проводник Windows для копирования содержимого локальной папки в общую папку, где я затем могу загрузить сгенерированный проект в Xcode, скомпилировать и запустить его.

Кто-нибудь знает о какой-либо конфигурации или шагах, которые я могу предпринять, чтобы разрешить Delphi видеть общую папку как допустимую папку?

Для справки, и я видел аналогичную проблему с другими версиями Delphi в отношении папок из установки Delphi в VMware Workstation (8.0), работающей под управлением хоста Windows 7. В этих случаях Delphi просто не отображает общую папку.

Комментарии:

1. Я не знаю, как это сделать таким образом, но у меня есть общая папка в моем исходном каталоге на моем ПК и доступ к ней с Mac. Все работало нормально. Может быть, Mac лучше справляется с такими вещами?

2. Кэри… Я обнаружил кое-что еще, что, безусловно, может помочь объяснить вашу проблему! Когда я загружаю XE2 в первый раз при чистой установке Windows 7, брандмауэр Windows спрашивает, к каким сетям я хотел бы разрешить доступ к XE2! По умолчанию он выбирает только ОБЩЕДОСТУПНЫЕ сети и не помечает ЧАСТНЫЕ! Проверьте настройки брандмауэра Windows, убедитесь, что XE2 имеет полный доступ к сети (локальной и Интернет)

3. Вау. Это выглядело многообещающе, но включение private этого не сделало.

4. Начинает казаться, что может возникнуть проблема с сочетанием OSX Snow Leopard и VirtualBox. Кто-нибудь там использует OSX Snow leopart и VirtualBox и НЕ имеет этой проблемы?

Ответ №1:

Переключите виртуальную машину на «мостовую» сеть, а не на NAT.

В VBox выберите свою виртуальную машину, перейдите в «Настройки»> «Сеть»> «Адаптер 1»> измените «Подключенный к» на «Мостовой адаптер»

Я предполагаю, что вы уже включили общий доступ к SAMBA на хосте OSX (Системные настройки> Общий доступ> Общий доступ к файлам (включите его)> Параметры> отметьте «Общий доступ к файлам и папкам с помощью SMB (Windows)»)

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

Попробуйте, дайте мне знать, если это поможет 🙂

Комментарии:

1. Согласен с идеей моста. Я также обнаружил, что такая сеть vm-hosts-shared-drive была для меня очень ненадежной, независимо от того, использовал ли я parallels, virtual box или vmware (fusion) для mac. В конце концов я отказался от использования общего доступа к сети хоста, настроенного на виртуальную машину, и сделал собственный map drive; Предоставьте общий доступ к папке на моем Mac и сопоставьте ее из командной строки (сетевое использование) внутри виртуальной машины вместо использования функций «общие папки» в программном обеспечении виртуализации. Я бы ожидал, что функция общей папки будет более надежной, чем функция сопоставления дисков хост-ОС виртуальной машины, иначе зачем беспокоиться.

2. Спасибо, Саймон. После вашего сообщения мы поговорили напрямую, и вы рассказали мне о настройке общей папки на моей виртуальной машине, доступ к которой может получить Mac. Теперь я могу запустить dpr2xcode.exe непосредственно из Delphi, а затем получить доступ к проекту Xcode из Xcode. Вы также рекомендовали мне установить Windows 7 SP1, что я сейчас и сделаю. Как только я узнаю, что мне нужно сделать, чтобы получить доступ к общей папке на Mac из Delphi, я опубликую это здесь.

3. Рад помочь и надеюсь, что предложения приведут к точному решению, которое вы искали (доступ к общей папке с Mac из Delphi на вашей виртуальной машине Windows).