有人会DCC32命令行下编译工程和组件的吗.
命令行编译工程的脚本帖一下个出来,这个好象不难的, 
但是怎么编译组件工程并注册呢, 也帖一个出来吧.

解决方案 »

  1.   

    DCC32命令行编译的话,不如参考下makefile的写法
      

  2.   

    这个是我们工程用的,供你参考一下:@echo off
    echo.
    echo 正在编译EXE:Project1...
    echo --------------------
    brcc32 ..\Common\Units\ProjectErrorCode.rc   //编译资源文件
    copy Project.cfg dcc32.cfg > nul             //拷贝配置文件 
    dcc32 -Q -B Project1.dpr  -$L- -$Y- -$D-      //开始编译
    if ERRORLEVEL = 1 pause                      //检查错误原因
    del dcc32.cfg > nul
      

  3.   

    http://hi.baidu.com/lovedf/blog/item/577d840166baf7dc277fb5fa.html
      

  4.   

    http://blog.csdn.net/CoolSlob/archive/2008/11/07/3250633.aspxhttp://www.cnblogs.com/iinsnian/archive/2008/06/06/1214830.html
      

  5.   

    谢谢楼上各位哦.其实一般的工程简单的dcc32  project1.dpr 就可以了. 
    我就有两个问题需要搞懂的,一个是如果我是dpk工程,我最后喜欢install怎么办, 没看见bcc32的help怎么写的, 我到时候可以用commandline reg上去.一个就是我工程里面本身就有路径配置信息等在里面了, 外面的路径参数那些还要不要呢,哪个project1.cfg中不是有工程项目配置吗. 按照IDE的编译方法,其实 我就是要告诉BCC32 我的命令等于是操作F7 F8 F9 是build all, 还是build一个工程, 单个文件? 我的产品目录太多在研究中,不过不是很紧急的. 出成果了告诉大家哦.
      

  6.   

    delphi的makefile在那里看啊, 我知道BCB的project下有一个export makefile, 并且sample里面有一个wintool里面就有一个 makefile的例子程序.可是我DELPHI都没找到.  我们现在项目中的用的make是放到unix下去make了,我还看不到它哪个makefile怎么写. 不过简单的工程,DCC32 搞定也比较快吧,我自己产品中的路径出了点问题, 在抽时间研究呢.
      

  7.   

    贴个我的编译安装RemObjects系列的脚本@ECHO OFF
    for /f "tokens=2,*" %%i in ('reg query "HKEY_CURRENT_USER\Software\Borland\Delphi\7.0" /v "RootDir"') do (
    Set DelphiPath=%%j||goto end
    )
    Set DCC32EXE="%DelphiPath%\Bin\DCC32.exe"
    SET DCC=%DCC32EXE% -Q -H -Wfor /f "tokens=5,*" %%i in ('reg query "HKCU\Software\Borland\Delphi\7.0\Library" /v "Package DPL Output"') do (
    Set BplPath=%%i||goto end
    )echo.
    echo       1.安装RemObjects
    echo       2.卸载RemObjects
    ECHO.
    SET Choice=
    SET /P Choice=请输入您的选择:
    IF NOT '%Choice%'=='' SET Choice=%Choice:~0,1%
    IF /I '%Choice%'=='1' GOTO Install
    IF /I '%Choice%'=='2' GOTO Uninstall
    GOTO END:Install
    REG ADD "HKCU\Software\Borland\Delphi\7.0\Debugging\Language Exception Classes" /v "EROSendNoResponse" /d "1" /f>NUL
    REG ADD "HKCU\Software\Borland\Delphi\7.0\Environment Variables" /v "Data Abstract for Delphi" /d "%CD%\Data Abstract" /f>NUL
    REG ADD "HKCU\Software\Borland\Delphi\7.0\Environment Variables" /v "RemObjects SDK for Delphi" /d "%CD%\SDK" /f>NUL
    REG ADD "HKCU\Software\RemObjects\RemObjects SDK\KnownRodls" /v "Data Abstract" /d "%CD%\Data Abstract\Source\DataAbstract4.RODL" /f>NUL
    REG ADD "HKCU\Software\RemObjects\RemObjects SDK\KnownRodls" /v "Data Abstract (v3.0 Legacy)" /d "%CD%\Data Abstract\Source\DataAbstract3.RODL" /f>NUL
    REG ADD "HKCU\Software\RemObjects\RemObjects SDK\KnownRodls" /v "DataSnap" /d "%CD%\SDK\Source\DataSnap\uRODataSnap.rodl" /f>NUL
    REG ADD "HKCU\Software\RemObjects\RemObjects SDK\ServiceBuilder" /v "FullPath" /d "%CD%\SDK (Common)\Bin\ROServiceBuilder.exe" /f>NUL
    REG ADD "HKCU\Software\RemObjects\RemObjects SDK\ServiceTester" /v "FullPath" /d "%CD%\SDK (Common)\Bin\ROServiceTester.exe" /f>NUL
    REG ADD "HKCU\Software\RemObjects\Data Abstract\Schema Modeler" /v "FullPath" /d "%CD%\Data Abstract (Common)\Bin\DASchemaModeler.exe" /f>NUL
    REG ADD "HKCU\Software\RemObjects\RemObjects SDK\Variables" /v "Data Abstract for Delphi" /d "%CD%\Data Abstract" /f>NUL
    REG ADD "HKCU\Software\RemObjects\RemObjects SDK\Variables" /v "RemObjects SDK for Delphi" /d "%CD%\SDK" /f>NULREG ADD "HKCU\Software\RemObjects\RemObjects SDK for Delphi" /v "InstallDir" /d "%CD%\SDK" /f>NUL
    REGSVR32 /S "SDK (Common)\Bin\ROCOM.dll"ECHO.
    ECHO Build Everwood ......................................................
    CD Everwood\Source\Delphi
    CALL :CPBP RemObjects_Everwood_D7.dpk "Everwood"
    CD ..\..\..\ECHO.
    ECHO Build SDK ......................................................
    CD SDK\Source
    CALL :CPBP RemObjects_Core_D7.dpk "RemObjects - Core Package"
    CALL :CPBP RemObjects_Indy_D7.dpk "RemObjects - Indy"
    CALL :CPBP RemObjects_BPDX_D7.dpk "RemObjects - DXSock"
    REM CALL :CPBP RemObjects_Synapse_D7.dpk "RemObjects SDK - Synapse based Channels"
    CALL :CPBP RemObjects_WebBroker_D7.dpk "RemObjects - WebBroker"
    CD IDE
    CALL :CPBP RemObjects_IDE_D7.dpk "RemObjects - IDE"
    CD ..\DataSnap
    CALL :CPBP RemObjects_DataSnap_D7.dpk "RemObjects - DataSnap"
    CD ..\RODX
    CALL :CPBP RemObjects_RODX_D7.dpk "RemObjects - RODXSock"
    CD ..\..\..\ECHO.
    ECHO Build Data Abstract ......................................................
    CD "Data Abstract\Source"
    CALL :CPBP DataAbstract_Core_D7.dpk "Data Abstract - Core Package"
    CALL :CPBP DataAbstract_Scripting_D7.dpk "Data Abstract - Scripting Package"
    REM CALL :CPBP DataAbstract_SimpleQuery_D7.dpk "RemObjects Data Abstract - Korzh SimpleQuery Integration Library"
    CD IDE
    CALL :CPBP DataAbstract_IDE_D7.dpk "Data Abstract - IDE Package"
    CD ..\DRIVERS
    CALL :CPBP DataAbstract_ADODriver_D7.dpk "Data Abstract - ADO Driver"
    REM CALL :CPBP DataAbstract_IBXDriver_D7.dpk "Data Abstract - IBX Driver"
    REM CALL :CPBP DataAbstract_BDEDriver_D7.dpk "Data Abstract - BDE Driver"
    REM CALL :CPBP DataAbstract_DBXDriver_D7.dpk "Data Abstract - DBX Driver"
    REM CALL :CPBP DataAbstract_DBISAMDriver_D7.dpk "Data Abstract - DBISAM Driver"
    REM CALL :CPBP DataAbstract_ElevateDBDriver_D7.dpk "Data Abstract - ElevateDB Driver"
    REM CALL :CPBP DataAbstract_FIBDriver_D7.dpk "Data Abstract - FIBPlus Driver"
    REM CALL :CPBP DataAbstract_IBDACDriver_D7.dpk "Data Abstract - CoreLabs IBDAC Driver"
    REM CALL :CPBP DataAbstract_IBODriver_D7.dpk "Data Abstract - InterBase Objects Driver"
    REM CALL :CPBP DataAbstract_MyDACDriver_D7.dpk "Data Abstract - CoreLabs MyDAC Driver"
    REM CALL :CPBP DataAbstract_MySQLDACDriver_D7.dpk "Data Abstract - MicroOlap mySQLDac Driver"
    REM CALL :CPBP DataAbstract_NexusDBDriver_D7.dpk "Data Abstract - NexusDB Driver"
    REM CALL :CPBP DataAbstract_ODACDriver_D7.dpk "Data Abstract - CoreLabs ODAC Driver"
    REM CALL :CPBP DataAbstract_PostgresDACDriver_D7.dpk "Data Abstract - MicroOlap PostgresDAC Driver"
    REM CALL :CPBP DataAbstract_SDACDriver_D7.dpk "Data Abstract - CoreLabs SDAC Driver"
    REM CALL :CPBP DataAbstract_SQLiteDriver_D7.dpk "Data Abstract - SQLite Driver"
    REM CALL :CPBP DataAbstract_ZeosDriver_D7.dpk "Data Abstract - Zeos Driver"
    CD ..\..\..\ECHO.
    ECHO Build Pascal Script ......................................................
    CD "Pascal Script\Source"
    CALL :CPBP PascalScript_Core_D7.dpk "Pascal Script - Core Package"
    CALL :CPBP PascalScript_RO_D7.dpk "Pascal Script - RO Package"
    GOTO END:Uninstall
    REGSVR32 /S /U "SDK (Common)\Bin\ROCOM.dll"CALL :DEBP RemObjects_Everwood_D7
    CALL :DEBP RemObjects_Core_D7
    CALL :DEBP RemObjects_Indy_D7
    CALL :DEBP RemObjects_BPDX_D7
    CALL :DEBP RemObjects_Synapse_D7
    CALL :DEBP RemObjects_WebBroker_D7
    CALL :DEBP RemObjects_IDE_D7
    CALL :DEBP RemObjects_DataSnap_D7
    CALL :DEBP RemObjects_RODX_D7CALL :DEBP DataAbstract_Core_D7
    CALL :DEBP DataAbstract_Scripting_D7
    CALL :DEBP DataAbstract_SimpleQuery_D7
    CALL :DEBP DataAbstract_IDE_D7CALL :DEBP DataAbstract_ADODriver_D7
    CALL :DEBP DataAbstract_BDEDriver_D7
    CALL :DEBP DataAbstract_DBXDriver_D7
    CALL :DEBP DataAbstract_DBISAMDriver_D7
    CALL :DEBP DataAbstract_ElevateDBDriver_D7
    CALL :DEBP DataAbstract_FIBDriver_D7
    CALL :DEBP DataAbstract_IBDACDriver_D7
    CALL :DEBP DataAbstract_IBODriver_D7
    CALL :DEBP DataAbstract_IBXDriver_D7
    CALL :DEBP DataAbstract_MyDACDriver_D7
    CALL :DEBP DataAbstract_MySQLDACDriver_D7
    CALL :DEBP DataAbstract_NexusDBDriver_D7
    CALL :DEBP DataAbstract_ODACDriver_D7
    CALL :DEBP DataAbstract_PostgresDACDriver_D7
    CALL :DEBP DataAbstract_SDACDriver_D7
    CALL :DEBP DataAbstract_SQLiteDriver_D7
    CALL :DEBP DataAbstract_ZeosDriver_D7CALL :DEBP PascalScript_Core_D7
    CALL :DEBP PascalScript_RO_D7REG DELETE "HKCU\Software\Borland\Delphi\7.0\Environment Variables" /v "Data Abstract for Delphi" /f>NUL
    REG DELETE "HKCU\Software\Borland\Delphi\7.0\Environment Variables" /v "RemObjects SDK for Delphi" /f>NUL
    REG DELETE "HKCU\Software\RemObjects" /f>NUL
    REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Start Menu\Programs\RemObjects Data Abstract" /f>NUL
    REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Start Menu\Programs\RemObjects DebugServer" /f>NUL
    REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Start Menu\Programs\RemObjects Pascal Script" /f>NUL
    REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Start Menu\Programs\RemObjects SDK" /f>NULREG DELETE "HKCR\.rodl" /f>NUL
    REG DELETE "HKCR\RODLFile" /f>NULREG DELETE "HKCR\.roTest" /f>NUL
    REG DELETE "HKCR\RemObjectsSDKTestFile" /f>NULREG DELETE "HKCR\.roTestResult" /f>NUL
    REG DELETE "HKCR\RemObjectsSDKTestResultFile" /f>NULREG DELETE "HKCR\.daConfig" /f>NUL
    REG DELETE "HKCR\DataAbstractConfigFile" /f>NULREG DELETE "HKCR\.daConnections" /f>NUL
    REG DELETE "HKCR\DataAbstractConnectionsFile" /f>NULREG DELETE "HKCR\.daDiagrams" /f>NUL
    REG DELETE "HKCR\DataAbstractDiagramsFile" /f>NULREG DELETE "HKCR\.daDictionary" /f>NUL
    REG DELETE "HKCR\DataAbstractDictionaryFile" /f>NULREG DELETE "HKCR\.dad" /f>NUL
    REG DELETE "HKCR\DataAbstractDriverFile" /f>NULREG DELETE "HKCR\.daSchema" /f>NUL
    REG DELETE "HKCR\DataAbstractSchemaFile" /f>NULRD /S /Q "%USERPROFILE%\Application Data\RemObjects Software"
    GOTO END:CPBP
    Set FN=%1
    Set RK=%2SET FR=%FN:_D5=_D*%
    SET FR=%FR:_D6=_D*%
    SET FR=%FR:_D7=_D*%
    SET FR=%FR:_D10=_D*%
    SET FR=%FR:_D11=_D*%
    SET FR=%FR:dpk=res%
    SET FR=%FR:DPK=RES%
    DEL %FR%%dcc% %FN%
    MOVE *.BPL "%BplPath%"
    MOVE *.DCP "%BplPath%"
    DEL *.DCU
    IF %RK%#==# SET RK=""
    REG ADD "HKCU\Software\Borland\Delphi\7.0\Known Packages" /v "%BplPath%\%FN:dpk=bpl%" /d %RK% /f>NUL
    GOTO :EOF:DEBP
    SET FN=%BplPath%\%1
    REG DELETE "HKCU\Software\Borland\Delphi\7.0\Known Packages" /v "%FN%.bpl" /f>NUL
    DEL %FN%.*
    GOTO :EOF:END
    ECHO OK.
    PAUSE
      

  8.   

    大家写的command line 最后 > nul 什么意思啊, 我看了一下就是没有在当前窗口会显,一般是个重定向输出,不知道我理解的对不对.谢谢 风铃夜思雨了. 很有帮助啊.
      

  9.   


    > 符号重定向输出
    NUL 表示空
    >NUL 即表示所要显示的内容重定向输出为空,即不显示