这个编译时的警告该如何理解?
[Warning] Unit 'Unit101' implicitly imported into package 'Package202'
------解决方案--------------------
[Warning] Unit 'Unit101' implicitly imported into package 'Package202'
翻译为:
警告  ‘package202’包隐式地引入了‘Unit101’单元

这个警告的意思是:package202包引用了unit101单元,且编译后package202.bpl中将包含unit101单元,也就是说Unit101单元将被当做Package202的一个单元文件来编辑进Package202.pbl中
这样操作存在的危险是:在同一进程中,在package202已被加载的情况下,如果其它包调用unit101(非package202中的unit101)时,将会发生冲突,因为unit101已经被编译到package202中。

解决此问题的方法是:在package202工程中的require中添加unit101所在的dcp,这样,编译后的Package202.bpl中将不包含unit101,而只是对unit101的引用,将来在进程中Package202.pbl将与其它bpl共同调用同一个unit101,不会产生如上所述的冲突。

这里有个我实际工作上的例子,弄了很久才明白。

我要安装WinSkinD2010.bpl和NovaJsonRpc.bpl这两个包。

然后NovaJsonRpc.bpl包又依赖于WinSkinD2010.bpl这个包。

我首先安装WinSkinD2010.bpl。会提示一堆Unit 'XXX' implicitly imported into package 'XXXX'的警告。就是上文说的那个隐式引入的意思。先不管这个警告。

然后安装NovaJsonRpc.bpl。会提示一堆Unit 'XXX' implicitly imported into package 'XXXX'的警告和一个Could not create output file的错误。导致致编译不成功。

原因:编译NovaJsonRpc.bpl的时候,发现依赖WinSkinD2010.bpl,然后就会去路径里面找WinSkinD2010的DCP文件,如果路径里面找不到,就会去尝试编译WinSkinD2010.bpl文件,但此时我已经安装了WinSkinD2010.bpl。就会发生冲突,导致无法编译该文件,报Could not create output file的错误。

解决方法就是在library paths里面添加WinSkinD2010.DCP文件的路径。

----------------------------------------

delphi 环境问题的更多相关文章

  1. 学习笔记:7z在delphi的应用

    最近做个发邮件的功能,需要将日志文件通过邮件发送回来用于分析,但是日志文件可能会超级大,测算下来一天可能会有800M的大小.所以压缩是不可避免了,delphi中的默认压缩算法整了半天不太好使,就看了看 ...

  2. delphi连接sql存储过程

    针对返回结果为参数的 一. 先建立自己的存储过程 ALTER PROCEDURE [dbo].[REName] ) AS BEGIN select ROW_NUMBER() over(order by ...

  3. delphi 2010与delphi XE破解版的冲突

    在系统中同时安装了Dephi 2010LITE版与Delphi XE lite后,总是会有一个有问题 是因为两者都是读取C:\ProgramData\Embarcadero目录下的license文件, ...

  4. [Delphi] Delphi版本号对照

    VER300    Delphi Seattle / C++Builder Seattle    23    230    (Delphi:Win32/Win64/OSX/iOS32/iOS64/An ...

  5. delphi tidhttp 超时设置无效的解决方法

    现在delphi都发布到xe8了,tidhttp还有缺陷,那就是超时设置在没有网络或者连不上服务器的时候是无效的,不管你设置为多少都要10-20秒.connectTimeout和readTimeout ...

  6. Delphi Code Editor 之 编辑器选项

    Delphi Code Editor 之 编辑器选项 可从Code Editor的右键菜单中选择“Properties”菜单项来查看编辑器选项.也可以从主菜单[Tools | Editor Optio ...

  7. Delphi使用ADO进行数据库编程

    Delphi是一个可视化的编程工具,ADO编程也是这样,所以话不多言,直接通过代码.截图和语言来说明. 我的数据库是Oracle,为了测试,先建一个表:create table practice(un ...

  8. 怎么使用Delphi获取当前的时间,精确到毫秒

    先介绍一个可能比较常用的方法,获取当前时间 var datetime: string; begin datetime:= FormatDateTime('yyyy-mm-dd hh:mm:ss', N ...

  9. Delphi在创建和使用DLL的时候如果使用到string,请引入ShareMem单元

    当使用了长字符串类型的参数.变量时,如string,要引用ShareMem. 虽然Delphi中的string功能很强大,但若是您编写的Dll文件要供其它编程语言调用时,最好使用PChar类型.如果您 ...

随机推荐

  1. WCF服务承载(笔记)

    自托管(也做自承载) 承载 WCF 服务最灵活.最便捷的方法就是进行自承载.要能够自承载服务,必须满足两个条件.第一,需要 WCF 运行时:第二,需要可以承载 ServiceHost 的托管 .NET ...

  2. Ajax请求安全性讨论

    今天我们来讨论一下ajax请求的安全性,我相信各位在系统开发过程中肯定会绞尽脑汁的想怎样可以尽量少的防止伪造ajax请求进行攻击,尤其是开发跟用户交互比较多的互联网系统.那么就请大家来分享讨论一下你在 ...

  3. 300ms延时

    具体参考:http://www.jianshu.com/p/6e2b68a93c88 一,简单粗暴型:禁用缩放 <meta name="viewport" content=& ...

  4. SPSS回归分析结果解读【来自百度知道】

    R平方就是拟合优度指标,代表了回归平方和(方差分析表中的0.244)占总平方和(方差分析表中的0.256)的比例,也称为决定系数.你的R平方值为0.951,表示X可以解释95.1%的Y值,拟合优度很高 ...

  5. HTML: vertical algin Big/small div in same row (bootstrap)

    Reference: http://stackoverflow.com/questions/20547819/vertical-align-with-bootstrap-3?answertab=vot ...

  6. BZOJ2471 : Count

    考虑KMP,设$f[i][j][S]$表示还剩最低$i$位没有确定,目前KMP匹配到了$j$这个位置,前缀匹配情况是$S$,最终会匹配到哪里,中途匹配成功几次. 其中$S[i]$是一个pair< ...

  7. [NOIP2011]观光公交 题解

    题目大意: 就省了吧 思路: 应该算是贪心. 不难发现,加速只对所有在使用加速器之后连续的一段下车时不用等人的站点下车的人有用.这非常重要. 先算出不加速时的和,并预处理出每个站点最迟到的人的时间.每 ...

  8. 如何將ViewData裡包含的Html輸出(MVC)

    如何將ViewData裡包含的Html輸出(MVC) 默認輸入ViewData裡的Htm系統會自動把標籤轉換而達不到預覽的效果, 我們如果要呈現解析後的HTML則要調用@MvcHtmlString.C ...

  9. DOTA 2 API(个人资料)

    获取个人资料 http://wiki.teamfortress.com/wiki/WebAPI/GetPlayerSummaries 获取个人库存 http://wiki.teamfortress.c ...

  10. Java中线程的生命周期

    首先简单的介绍一下线程: 进程:正在运行中的程序.其实进程就是一个应用程序运行时的内存分配空间. 线程:其实就是进程中的一条执行路径.进程负责的是应用程序的空间的标示.线程负责的是应用程序的执行顺序. ...