Прим. пер.: я выделил описание установки Delphi 7 на Windows 7 в отдельную статью.
Дополнение к статье: как писать приложения для Windows Vista.
Подписчики MSDN уже могут скачать и установить Windows Vista (я установил Vista Business на свой ноутбук, на котором теперь стоят аж четыре операционки: Windows 2000, Windows XP, Windows 2003 Server, а теперь и Windows Vista "Business").
В отличие от Windows XP и Windows 2003, которые визуально отличаются от Windows 2000 в основном службой Themes (которая отключена по умолчанию в Windows 2003), в Windows Vista внешний вид пользовательского интерфейса значительно изменился. Я пишу внешний вид, потому что содержимое осталось практически тем же самым. Нельзя сказать, что это совершенно новый мир: мне не составило труда найти все нужные и знакомые места (хотя деталей и возможностей было изменено достаточно).
Одной из важных новых возможностей Windows Vista является так-называемый User Account Control (UAC), который представляет из себя добавку к безопасности, которая следит за тем, что конкретно разрешено выполнять каждому приложению на вашей машине. Приложениям следует работать по принципу минимально возможных прав и привилегий (и очень редко - с правами администратора), чтобы избежать потенциального ущерба. С UAC все пользователи становятся обычными пользователями (без администраторских прав), с возможностью добавить (временно) приложениям больше привилегий, когда они необходимы.
UAC усиливает защиту против вирусов и spyware, но иногда надоедает, когда дело касается приложений, которым можно доверять. Например, запись в папку Program Files по-умолчанию запрещена - мы увидим это, когда будем запускать Delphi на Vista.
Поскольку я в основном использую Delphi 7 (для Win32) и Delphi 2006 (для Win32 и .NET), я начал процесс установки этих версий Delphi на релизную версию Windows Vista для проверки совместимости как Delphi, так и приложений Delphi Win32 (и .NET) под Windows Vista.
Delphi 7
Нижеследующее должно быть применимо к любым версиям Delphi до 7-ки включительно, а также ко всем версиям C++ Builder до версии 6 включительно. Информацию по Delphi/C++ Builder 2006 см. ниже (прим. пер.: Delphi/C++ Builder 2007 и выше поддерживают Vista изначально).
Во-первых, когда я попытался установить Delphi 7 на Windows Vista, я получил диалог мастера совместимости программ, сообщающего, что эта программа имеет проблемы совместимости с Windows Vista:



После установки
При запуске установленной Delphi 7 я снова получил сообщение мастера совместимости программ с первого рисунка выше. В этот раз я отметил галочку "Больше не показывать это сообщение" ("Don't show this message again") и нажал "Запуск программы" ("Run program"). Delphi запустилась, но пожаловалась на то, что не может (т.е. у неё нет прав) переименовать файл delphi32.$$$ в delphi32.dro:

Очевидно причина в том, что приложению Delphi32.exe запрещено писать в папку Delphi7\Bin.
Изменение разрешений
Чтобы исправить это, нам нужно разрешить обычным пользователям машины изменять содержимое этой папки.
Прим. переводчика:
Вместо изменения прав на папки можно также установить Delphi 7 в любую другую папку, которая не требует админских прав для записи (а не в умалчиваемую Program Files). Этот вариант тоже приемлем, если вас не волнует расползание программ по разным папкам.
Как вариант стоит упомянуть и о возможности запуска Delphi32.exe с правами администратора (устанавливается соответствующий флажок в опциях ярлыка), но этот вариант настоятельно не рекомендуется к использованию.
Как изменить права - показано на следующем рисунке:


Снимок экрана ниже показывает запущенную Delphi 7 в Windows Vista с открытым новым проектом VCL:


Пользователи, которые хотят использовать 32-х битные .hlp-файлы, должны скачать установщик Windows Help с Microsoft Download Center и установить её на свои машины (прямые ссылки на скачивание можно найти в той же KB917607).
Delphi 2006
Кроме установки и работы с Delphi 7 на Windows Vista, я также хотел использовать Delphi 2006 - последнюю версию Delphi (прим. пер.: ко времени написания оригинала статьи). Замечу, что Delphi 2006 поддерживает как Win32, так и .NET 1.1, и требует для работы .NET Framework версии 1.1, которую нам надо установить отдельно.
Установочный диск Delphi 2006 запускает установщик, который предлагает следующие опции:





Замечу, что после установки .NET 1.1 SP1 вас попросят сделать перезагрузку. А после перезагрузки вам сообщат, что приложение netfxsetup.exe было заблокировано - вы можете разрешить его выполнение используя иконку в трее.
После этого запустится настоящий установщик Delphi 2006 и установит Delphi без каких-либо проблем.

Ключевыми словами здесь является "Access is denied." ("В доступе отказано"):

Эти ошибки связаны с User Account Control (UAC), который я упоминал выше, а в частности с тем фактом, что BDS IDE не разрешено писать в под-папку Borland\BDS\4.0\Bin папки Program Files.
Простейшим обходным путём для этой проблемы, что я нашёл, явилось разрешение записи для обычных пользователей в папку Borland\BDS\4.0\Bin:

Прим. пер.: папка с проектами BDS 2006 теперь находится в папке Мои документы, так что для неё уже не нужно менять права.
Update #2
Когда Delphi 2006 установилась, вы можете захотеть установить Update #2 (а также Hot Fixes из так называемого HotFix Rollup) и любые другие обновления, которые могут выйти позже. Однако когда вы попытаетесь запустить msp файл Update 2, обновление будет жаловаться на неверную версию Borland Developer Studio (это бред, но реальная причина в том, что обновление не может получить доступа к БД установщика).

msiexec /update bds2006_en_arch_upd2.msp
Части "en" и "arch" у вас могут быть другими - они зависят от языка и редакции вашей версии Delphi 2006. Эта команда запустит установщик Update #2, после работы которого вы также сможете применить HotFix Rollup.
Примечание: на некоторых машинах с Windows Vista достаточно просто запустить файл bds2006_en_arch_upd2.msp в режиме "Run as Administrator", а msiexec сам позаботится об остальном.
Заключение
Хотя Windows Vista была выпущена позже Delphi 2006, приятно осознавать, что установка и работа старых версий Delphi 2006 на Windows Vista не является существенной проблемой. Вам нужно играть по обновлённым правилам, если вы хотите писать приложения для Windows Vista, но это история для другого дня.
В заключение - напоминание из pre-Vista эры: Delphi 2006 About Box, который не способен распознать Windows Vista, и пишет сообщает версию ОС как Windows 2000 (Build 6000):

А я ужегода полтора как под Вистой работаю на Delphi 6 :))) и до сих пор недоумеваю откуда пошли слухи про несовместимость D7 и Висты.
ОтветитьУдалитьСм. также.
ОтветитьУдалитьD7 и Windows 7 настолько не совместимы что дальше некуда.=)
ОтветитьУдалитьНо все же статье и ее автору - огромное спасибо=)))
Ну, Win7 у меня со вчерашнего дня стоит основной системой, так что можно и D7 попробовать поставить :) (хотя я не собирался, себе я поставил D2010).
ОтветитьУдалитьDelphi 7 пашет на Win7 x64 без каких-либо заметных проблем. Достаточно установить ее в папку, отличную от Program Files.
ОтветитьУдалитьА по поводу установки dotNETFramework 1.1 и SP1 к нему: нашел такое решение:
ОтветитьУдалить1.Download Microsoft .NET Framework 1.1 Redistributable Package and Microsoft .NET Framework 1.1 Service Pack 1 using links below:
2.Save both installations in the same directory
3.Ensure that the Microsoft .NET Framework 1.1 Redistributable Package is named dotnetfx.exe. If not, change its name to dotnetfx.exe.
4.Ensure that Microsoft .NET Framework 1.1 Service Pack 1 is named dotnetfxsp1.exe. If not, change its name to dotnetfxsp1.exe.
5.Open command prompt as Administrator, and change to the directory where the two installations are saved.
6.Run the following commands using the order shown below
◦dotnetfx.exe /c:"msiexec.exe /a netfx.msi TARGETDIR=C:\dotnet"
◦dotnetfxsp1.exe /Xp:C:\dotnet\netfxsp.msp
◦msiexec.exe /a c:\dotnet\netfx.msi /p c:\dotnet\netfxsp.msp
7.Install both Microsoft .Net Framework 1.1 and Service Pack 1 by running C:\dotnet\netfx.msi
Итак, я нашёл время поиграться с установкой Delphi 7 на Windows 7 и обнаружил, что вот это:
ОтветитьУдалить>>> D7 и Windows 7 настолько не совместимы что дальше некуда
не соответствует истине.
В Windows 7, что касается установки Delphi, не изменилось ничего. Более того, Delphi 7 прекрасно себя чувствует даже в 64-х битной системе.
Тем не менее, я выделил описание установки в отдельную статью.
спасибо!!!
ОтветитьУдалитьпожалуйста подскажите, как сделать чтоб рвбтал РАН?? приложение запускалось на др. комп-ре, а на моем безо всяких изменений не зап-ся.. говорит ошибка.. что то вроде несуществующий unit..
ОтветитьУдалитьВы ошиблись: здесь телепатов нет.
ОтветитьУдалитьСпасибо большое!
ОтветитьУдалитьМне эта статья очень помогла.
=)
хм..а у меня даже до установки толком не доходит, сразу пишет не совместим и все(( у мя vista и delphi7 entherprise 2002
ОтветитьУдалитьМожет покажете скриншот этого окна?
ОтветитьУдалитьспасибо
ОтветитьУдалитьУ меня лицензионная версия Borland Developer Studio 2006, НО ОНА НЕ РАБОТАЕТ В Window7. Можно ли её установить в Win 7 ?
ОтветитьУдалитьУ меня работает.
ОтветитьУдалитьКак ВАМ удалось это сделать? Установилась программа в Win7 отлично ,но при запуске выдаёт ошибку и не поддаётся отладке.Если возможно,то я бы хотел услышать ВАШ совет.Мой E-mail
ОтветитьУдалитьvladmel41@ukr.net.
Устанавливал ровно так, как указано в тексте. На Vista и на Win7. На VMWare, VirtualBox и реальную машину.
ОтветитьУдалить> Установилась программа в Win7 отлично ,но при запуске выдаёт ошибку и не поддаётся отладке.
ОтветитьУдалитьУстановите свойства ярлыка bds: Совместимость XP SP3, запускать от администратора. Станьте владельцем каталога Program Files/Borland и убедитесь, что вашему пользователю дан к нему полный доступ.
Хорошая статья!
ОтветитьУдалитьСпасибочки, очень помогло, ура ! BDS поставилась !
ОтветитьУдалитьдобавлю, ставила на Vista
ОтветитьУдалитьСпасибо большое! Статья очень помогла!
ОтветитьУдалитьСПАСИБО БОЛЬШОЕ ЗА СТАТЬЮ)))) ВЫ МЕНЯ СПАСЛИ))) Установила делфи на виндовс 8, а он не работает, сделала, как вы подсказали и все получилось))))) УрА!!!! спасибо
ОтветитьУдалить