- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我在 Delphi XE2 中打开 Delphi 7 项目并打开项目选项时,出现错误:
"Unable to set Icon: Cannot open file "........\AppName_Icon.ico".
The system cannot find the file specified".
我还注意到项目的版本信息丢失了。Delphi 7 项目有 .Res 文件,其中存储了 MAINICON 以及版本信息。为什么Delphi XE2无法使用这个.Res文件来检索MANICON和版本信息。
此外,如果我尝试在 XE2 中编译应用程序,我会收到错误 -
[BRCC32 Error] MtxReq.vrc(2): file not found: MtxReq_Icon.ico
创建 MTXReq.vrc 文件(新文件)并删除 MtxReq.res 文件。
为什么会发生这种情况?我不想丢失 .res 文件中的项目图标和版本设置。
有没有办法强制XE2使用.res文件而不删除它?
任何帮助将不胜感激。
<小时/>抱歉,我还不能发表评论(需要更多转发点)...
Warren - 这是对您问题的答复(仅删除 .dproj 文件并仅保留 .dpr 不是更快吗?)
我删除了.dproj、.dproj.local在 XE2 中打开 .dpr,它重新创建了 .dproj 文件。它从 .res 中恢复了图标,但我丢失了项目版本信息。仅迁移文件版本和产品版本信息,但丢失所有其他版本控制信息。 (这是因为默认的 list 文件)。然后我尝试了我在解决方案的步骤 1 中解释的内容。我在记事本中打开 .dproj 文件,删除了下面的标签条目,然后重新打开 .dproj 文件,现在我的所有版本信息都已恢复。这里的问题是$(BDS)\bin\default_app.manifest。我还注意到版本信息存储在 .dproj 文件中标签下的标签中,一旦删除默认 list 条目,IDE 就会从 .
因此,基本上通过删除 .dpr 文件,我跳过了提取 .ico 文件并将其添加到项目的步骤,但必须编辑新创建的 .proj 文件并删除默认 list 的条目以检索版本信息。 (另一个解决方案是手动添加版本信息并保存项目。我没有尝试这个)
最佳答案
2015 年更新:Remy 手工仔细重新创建 .DPROJ 文件的想法是极好的建议,应该首先考虑,即使我的答案被标记为接受。 p>
XE2之前的Delphi版本在编译过程中使用资源文件作为输入和输出。例如,您的 delphi 7 项目图标嵌入在该 .res 文件中,您“希望 delphi xe2 使用该文件”,但是,这在 delphi 7 中是有问题的,现在在 XE2 中更是不可能。相反,您现在将 .res 文件视为纯粹的输出工件,与可执行文件相同。不必再将 .res 文件检查到版本控制中,也不要试图假装 .res 文件是永久存储图标的位置。它是编译器自动生成的输出文件,正如它一直应该的那样。
如果您是一名现代开发人员,Delphi 7 的旧工作方式可能会让您恼火(这确实让我恼火),因为您对如何进行版本控制有一个有趣且无法解决的问题:您是否 checkin .RES 文件,或者你不?这两种方法都有缺点,而 .RES 文件现在仅在 XE2 中作为输出工件这一事实是最好的。所以学会忍受这一点。
既然 XE2 不仅支持 PC 的图标,还支持 Mac 的图标,它必须以不同的方式处理事情,他们已经清理了这个问题。这就是您在 .ICO 文件中看到的问题的根源。我看到了完全相同的错误,我忽略了它,只是在转换后将图标添加回项目。
将 delphi 7 项目(.dpr 和 .cfg)转换为 Delphi XE2 并不像不同级别的 .dproj 文件之间的转换那么大问题 - 从 Delphi 2005、2007、2009、2010 开始的每个版本和自此开始对 dproj 格式进行了更改。当转换这些项目时出现问题时,我不会按照雷米的建议去做,因为这是浪费时间。我所做的是删除 DPROJ 并让它仅从 .dpr 文件转换。
但雷米的从头开始的建议有很多优点,包括您可以简化项目布局。
无论如何,这就是你要做的:
关于Delphi 7 到 Delphi XE2 .res 文件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11906963/
我正在构建一个使用 Oracle 数据库 10g 作为数据库后端的 Web 应用程序。我意识到 Express 版本有限制,但我只是想确保连接数不是其中之一。 Oracle 快捷版 (XE) 是否限制
我是一名开始使用 Oracle 数据库的新手,在将 Oracle XE 11g x64 的最新版本安装到 Microsoft Windows 7 x64 Enterprise 时遇到了问题。 安装过程
我有一个 USB 连接到 device发出串行信息。当我运行下面的 Python 脚本(在 Jupyter Notebook 中)时,我从中得到了奇怪的信息。 import serial ser =
我们有一台运行 Delphi XE Professional 的机器,它会在 IDE 中键入时更改某些键的值。它将字母和数字键更改为数字。按下下一个键将按顺序输入下一个数字,直到 9,然后从 0 重新
从昨天开始,我的源代码中的所有蓝点(编译行)都移动了一行。因此,第一个点从“var”而不是“begin”开始,最后一个点是函数最后一个“end”之前的一行。 我删除了除 DPR、PAS、DFM 和 D
我在 RegexBuddy 中构建了一个匹配模式,其行为完全符合我的预期。但我无法将其转移到 Delphi XE,至少在使用最新内置的 TRegEx 或 TPerlRegEx 时是这样。 我的现实世界
TBytes 变量的正确使用模式是什么?根据我的理解,TBytes不是一个类,而是一个“动态字节数组”。我不确定内存在哪里分配,何时释放,以及将其从生产者传递到消费者的最佳方式是什么。我希望我的生产者
我创建了一个自定义 MSBuild .targets我通过 IDE 将其包含在 Delphi XE 项目中,并从项目管理器的上下文菜单中启用它。尽管文件有效,但在我重新保存项目文件后它总是被禁用。 这
有谁知道 http://reportman.sourceforge.net/可用于 Delphi XE 吗? 最佳答案 我已经成功获得Reportmanager 2.9b通过将以下行添加到文件 rpc
Oracle XE Oracle是这样介绍XE的:11g XE(Express Edition)简化版是在Oracle11gR2基础之上一个入门级的小体量数据库,免费用于开发/部署与发布,下载很快
我已经安装了 docker 在 Ubuntu 21.10 并跟随官方 instructions 我拉甲骨文 11g xe 图片:docker pull oracleinanutshell/oracle
一段时间以来,我一直在寻找解决问题的方法,但似乎没有任何效果,这是我重新安装之前的最后一次尝试。 我今天通过其安装向导安装了 Oracle XE 11g 第 2 版,并且一切顺利。我似乎遇到的麻烦是我
我需要模拟汽车在平方区域上移动(比方说)。 任何人都可以轻松想象计算(x/y 坐标、轨迹、速度、加速度、暂停......) 之前的版本(跨千年错误开发...... 21 年前)运行到 Applicat
我已经下载了适用于 Windows 64 位的 Oracle XE 18c,并尝试将其安装在 Windows 10 机器上。我检查了 SHA-256 校验和,它是正确的。 安装开始正常,但是当它复制新
我需要通过客户端操作删除服务器上的物理文件,然后将文件删除事件通知远程数据库-希望这完全在serverSide上发生。 更高版本的Delphi公开了许多以前在WinAPI调用中被锁定的目录服务。目前,
这几年来我一直没有使用Delphi(我使用的最新版本是D2005),现在我需要在DelphiXE中做一些工作。我的问题是,如何在Delphi IDE中禁用声明包装?目前,我使用Modelmaker的代
如何打开应用程序初始化所在的程序单元?我需要进行一些更改。 另外,除了显示的当前单位以外,还可以在程序中搜索所有单位吗? Delphi 5有一个弹出窗口,您可以选择它。 最佳答案 每个项目均由sing
如何配置Datasnap REST服务器(在Windows上作为服务运行)以处理Delphi XE中的https调用?周围有什么好的例子吗? 向上的Delphi XE2似乎具有其他组件-这是否意味着X
我尝试以这种方式列出程序: type TProc = procedure of object; TMyClass=class private fList:Tlist; function getItem
我刚刚发现了 Delphi 的实时绑定(bind)。并创建了我的第一个组件来处理变频器的控制字。该组件本身似乎在表单设计器中测试它效果很好。但是,编译和运行应用程序不起作用。来自 livbinding
我是一名优秀的程序员,十分优秀!