Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > перенос проекта от Delphi7 к BDS2006


Автор: ilya198293 22.6.2007, 08:13
Недавно в руки попал проект...просто покопаться нужно было в нём...
Писался он на Delphi7...
Я начал с того что попытался открыть его в BDS2006...открылся нормально...из сторонних компонентов использовался только ODAC (был установлен на обоих компах).
При компиляции проекта вышла ошибка о том что пакидж indy не найден...ищю все файлы по проекту где есть слово indy.получаю 2 файла, но в первую очередь обращаюсь к <имя проекта>.bdsproj

Код

<?xml version="1.0" encoding="utf-8"?>
<BorlandProject>
  <PersonalityInfo>
    <Option>
      <Option Name="Personality">Delphi.Personality</Option>
      <Option Name="ProjectType">VCLApplication</Option>
      <Option Name="Version">1.0</Option>
      <Option Name="GUID">{7B760225-C3BB-4F51-BB80-6A9C45B2A97A}</Option>
    </Option>
  </PersonalityInfo>
  <Delphi.Personality>
    <Source>
      <Source Name="MainSource">Pmain_zv.dpr</Source>
    </Source>
    <FileVersion>
      <FileVersion Name="Version">7.0</FileVersion>
    </FileVersion>
    <Compiler>
      <Compiler Name="A">8</Compiler>
      <Compiler Name="B">0</Compiler>
      <Compiler Name="C">1</Compiler>
      <Compiler Name="D">1</Compiler>
      <Compiler Name="E">0</Compiler>
      <Compiler Name="F">0</Compiler>
      <Compiler Name="G">1</Compiler>
      <Compiler Name="H">1</Compiler>
      <Compiler Name="I">1</Compiler>
      <Compiler Name="J">0</Compiler>
      <Compiler Name="K">0</Compiler>
      <Compiler Name="L">1</Compiler>
      <Compiler Name="M">0</Compiler>
      <Compiler Name="N">1</Compiler>
      <Compiler Name="O">1</Compiler>
      <Compiler Name="P">1</Compiler>
      <Compiler Name="Q">0</Compiler>
      <Compiler Name="R">0</Compiler>
      <Compiler Name="S">0</Compiler>
      <Compiler Name="T">0</Compiler>
      <Compiler Name="U">0</Compiler>
      <Compiler Name="V">1</Compiler>
      <Compiler Name="W">0</Compiler>
      <Compiler Name="X">1</Compiler>
      <Compiler Name="Y">1</Compiler>
      <Compiler Name="Z">1</Compiler>
      <Compiler Name="ShowHints">True</Compiler>
      <Compiler Name="ShowWarnings">True</Compiler>
      <Compiler Name="UnitAliases">WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Compiler>
      <Compiler Name="NamespacePrefix"></Compiler>
      <Compiler Name="GenerateDocumentation">False</Compiler>
      <Compiler Name="DefaultNamespace"></Compiler>
      <Compiler Name="SymbolDeprecated">True</Compiler>
      <Compiler Name="SymbolLibrary">True</Compiler>
      <Compiler Name="SymbolPlatform">True</Compiler>
      <Compiler Name="SymbolExperimental">True</Compiler>
      <Compiler Name="UnitLibrary">True</Compiler>
      <Compiler Name="UnitPlatform">True</Compiler>
      <Compiler Name="UnitDeprecated">True</Compiler>
      <Compiler Name="UnitExperimental">True</Compiler>
      <Compiler Name="HResultCompat">True</Compiler>
      <Compiler Name="HidingMember">True</Compiler>
      <Compiler Name="HiddenVirtual">True</Compiler>
      <Compiler Name="Garbage">True</Compiler>
      <Compiler Name="BoundsError">True</Compiler>
      <Compiler Name="ZeroNilCompat">True</Compiler>
      <Compiler Name="StringConstTruncated">True</Compiler>
      <Compiler Name="ForLoopVarVarPar">True</Compiler>
      <Compiler Name="TypedConstVarPar">True</Compiler>
      <Compiler Name="AsgToTypedConst">True</Compiler>
      <Compiler Name="CaseLabelRange">True</Compiler>
      <Compiler Name="ForVariable">True</Compiler>
      <Compiler Name="ConstructingAbstract">True</Compiler>
      <Compiler Name="ComparisonFalse">True</Compiler>
      <Compiler Name="ComparisonTrue">True</Compiler>
      <Compiler Name="ComparingSignedUnsigned">True</Compiler>
      <Compiler Name="CombiningSignedUnsigned">True</Compiler>
      <Compiler Name="UnsupportedConstruct">True</Compiler>
      <Compiler Name="FileOpen">True</Compiler>
      <Compiler Name="FileOpenUnitSrc">True</Compiler>
      <Compiler Name="BadGlobalSymbol">True</Compiler>
      <Compiler Name="DuplicateConstructorDestructor">True</Compiler>
      <Compiler Name="InvalidDirective">True</Compiler>
      <Compiler Name="PackageNoLink">True</Compiler>
      <Compiler Name="PackageThreadVar">True</Compiler>
      <Compiler Name="ImplicitImport">True</Compiler>
      <Compiler Name="HPPEMITIgnored">True</Compiler>
      <Compiler Name="NoRetVal">True</Compiler>
      <Compiler Name="UseBeforeDef">True</Compiler>
      <Compiler Name="ForLoopVarUndef">True</Compiler>
      <Compiler Name="UnitNameMismatch">True</Compiler>
      <Compiler Name="NoCFGFileFound">True</Compiler>
      <Compiler Name="ImplicitVariants">True</Compiler>
      <Compiler Name="UnicodeToLocale">True</Compiler>
      <Compiler Name="LocaleToUnicode">True</Compiler>
      <Compiler Name="ImagebaseMultiple">True</Compiler>
      <Compiler Name="SuspiciousTypecast">True</Compiler>
      <Compiler Name="PrivatePropAccessor">True</Compiler>
      <Compiler Name="UnsafeType">False</Compiler>
      <Compiler Name="UnsafeCode">False</Compiler>
      <Compiler Name="UnsafeCast">False</Compiler>
      <Compiler Name="OptionTruncated">True</Compiler>
      <Compiler Name="WideCharReduced">True</Compiler>
      <Compiler Name="DuplicatesIgnored">True</Compiler>
      <Compiler Name="UnitInitSeq">True</Compiler>
      <Compiler Name="LocalPInvoke">True</Compiler>
      <Compiler Name="MessageDirective">True</Compiler>
      <Compiler Name="CodePage"></Compiler>
    </Compiler>
    <Linker>
      <Linker Name="MapFile">0</Linker>
      <Linker Name="OutputObjs">0</Linker>
      <Linker Name="GenerateHpps">False</Linker>
      <Linker Name="ConsoleApp">1</Linker>
      <Linker Name="DebugInfo">False</Linker>
      <Linker Name="RemoteSymbols">False</Linker>
      <Linker Name="GenerateDRC">False</Linker>
      <Linker Name="MinStackSize">16384</Linker>
      <Linker Name="MaxStackSize">1048576</Linker>
      <Linker Name="ImageBase">4194304</Linker>
      <Linker Name="ExeDescription"></Linker>
    </Linker>
    <Directories>
      <Directories Name="OutputDir"></Directories>
      <Directories Name="UnitOutputDir"></Directories>
      <Directories Name="PackageDLLOutputDir"></Directories>
      <Directories Name="PackageDCPOutputDir"></Directories>
      <Directories Name="SearchPath"></Directories>
      <Directories Name="Packages">vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOfficeXP;CRControls70;dac70;dacvcl70;odacvcl70;odac70;oraprov70;teeqr;adortl</Directories>
      <Directories Name="Conditionals"></Directories>
      <Directories Name="DebugSourceDirs"></Directories>
      <Directories Name="UsePackages">True</Directories>
    </Directories>
    <Parameters>
      <Parameters Name="RunParams"></Parameters>
      <Parameters Name="HostApplication"></Parameters>
      <Parameters Name="Launcher"></Parameters>
      <Parameters Name="UseLauncher">False</Parameters>
      <Parameters Name="DebugCWD"></Parameters>
      <Parameters Name="Debug Symbols Search Path"></Parameters>
      <Parameters Name="LoadAllSymbols">True</Parameters>
      <Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
    </Parameters>
    <Language>
      <Language Name="ActiveLang"></Language>
      <Language Name="ProjectLang">$00000000</Language>
      <Language Name="RootDir"></Language>
    </Language>
    <VersionInfo>
      <VersionInfo Name="IncludeVerInfo">False</VersionInfo>
      <VersionInfo Name="AutoIncBuild">False</VersionInfo>
      <VersionInfo Name="MajorVer">1</VersionInfo>
      <VersionInfo Name="MinorVer">0</VersionInfo>
      <VersionInfo Name="Release">0</VersionInfo>
      <VersionInfo Name="Build">0</VersionInfo>
      <VersionInfo Name="Debug">False</VersionInfo>
      <VersionInfo Name="PreRelease">False</VersionInfo>
      <VersionInfo Name="Special">False</VersionInfo>
      <VersionInfo Name="Private">False</VersionInfo>
      <VersionInfo Name="DLL">False</VersionInfo>
      <VersionInfo Name="Locale">1049</VersionInfo>
      <VersionInfo Name="CodePage">1251</VersionInfo>
    </VersionInfo>
    <VersionInfoKeys>
      <VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
      <VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
      <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
      <VersionInfoKeys Name="InternalName"></VersionInfoKeys>
      <VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
      <VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
      <VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
      <VersionInfoKeys Name="ProductName"></VersionInfoKeys>
      <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
      <VersionInfoKeys Name="Comments"></VersionInfoKeys>
    </VersionInfoKeys>
  </Delphi.Personality>
</BorlandProject>


...нахожу indy и тупо удаляю...при компиляции не находит visualclx и так далее по списку: indy;visualclx;visualdbclx;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;CRControls70;dac70;dacvcl70;odacvcl70;odac70;oraprov70;teeqr;
при удалении последнего из них...всё скомпилировалось...при работе программы ошибок пока не заметил...но самое интересное в другом...exe файл изменил размер с 1603072б на 671744б...
Куда делось всё остальное?

Автор: aktuba 22.6.2007, 08:38
Цитата

Куда делось всё остальное? 


Как куда? Ты же сам все удалил =))))

Автор: ilya198293 22.6.2007, 08:58
Цитата

Куда делось всё остальное? 


это про 1603072-671744=931328б (почти 1МБ)...почему exe-файл стал меньше...неужели столько всякой лабуды находится в компилируемом файле...хотя я попробовал поудалять всё тоже самое в своём проекте, который изначально делался на BDS2006 и меньше от этого проект не стал...

Автор: Alexeis 22.6.2007, 09:04
ilya198293, программа компилировалась с пакетами или без? Используются ли свои пакеты? Судя по всему нужно было просто указать новые версии пакетов.

Автор: ilya198293 22.6.2007, 09:12
Цитата

программа компилировалась с пакетами или без?


с ходу вопрос не понял...
но в обоих случаях при компиляции всё собирается в один exe-файл. Он переносится самостоятельно...ничего дополнительно для него не нужно, никаких dll системных или самопальных.
кроме самого delphi устанавливался только ODAC...все остальные компоненты из delphi...
а смысл указывать новые компоненты если без них всё работает и пускавик при этом меньше.

Автор: aktuba 22.6.2007, 09:28
Цитата

а смысл указывать новые компоненты если без них всё работает и пускавик при этом меньше. 


Рано или поздно обнаружиться, что что-то не работает. Потом будешь долго гадать почему =)))

Автор: Alexeis 22.6.2007, 09:41
Цитата(ilya198293 @  22.6.2007,  09:12 Найти цитируемый пост)
но в обоих случаях при компиляции всё собирается в один exe-файл.

  Значит таки без пакетов... странно, чего оно тогда ищет...

Автор: ilya198293 22.6.2007, 12:29
Цитата

Рано или поздно обнаружиться, что что-то не работает. Потом будешь долго гадать почему =)))

если программа выполняет несколько функций, таких как SQL запрос, выдача данных в Excel, пишет log, и всё остальное внутренняя математика...то одного прогона думаю достаточно для определения состояния...хотя ссылаясь на свою же тему (http://forum.vingrad.ru/forum/topic-153864/kw-failed.html) может и не достаточно...
проект продолжает развиваться на Delphi7 с размером exe-файла под 1,6МБ...

но суть темы выяснить, что произошло когда я это удалили и почему сократился размер так сильно без потери информации.
и почему ничего не произошло, когда я удалил этоже в BDS2006...да ещё в BDS2006 я удалял всё что нашёл не только то, на что были маты в первом проекте...тем не менее проект отработал все важные моменты...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)