2011-12-08 126 views
4

我想在我的delphi vcl应用程序中使用Jpeg图像,但delphi给了我这个错误信息,怎么能解决这个问题?我无法在delphi中使用jpeg xe2

[DCC Error] Vcl.Imaging.jpeg.pas(747): E1026 File not found: 'jdapimin.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(748): E1026 File not found: 'jmemmgr.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(749): E1026 File not found: 'jmemnobs.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(750): E1026 File not found: 'jdinput.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(751): E1026 File not found: 'jdatasrc.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(752): E1026 File not found: 'jdapistd.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(753): E1026 File not found: 'jdmaster.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(754): E1026 File not found: 'jdphuff.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(755): E1026 File not found: 'jdhuff.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(756): E1026 File not found: 'jdmerge.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(757): E1026 File not found: 'jdcolor.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(758): E1026 File not found: 'jquant1.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(759): E1026 File not found: 'jquant2.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(760): E1026 File not found: 'jdmainct.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(761): E1026 File not found: 'jdcoefct.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(762): E1026 File not found: 'jdpostct.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(763): E1026 File not found: 'jddctmgr.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(764): E1026 File not found: 'jdsample.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(765): E1026 File not found: 'jidctflt.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(766): E1026 File not found: 'jidctfst.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(767): E1026 File not found: 'jidctint.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(768): E1026 File not found: 'jidctred.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(769): E1026 File not found: 'jdmarker.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(770): E1026 File not found: 'jutils.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(771): E1026 File not found: 'jcomapi.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(772): E1026 File not found: 'jdatadst.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(773): E1026 File not found: 'jcparam.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(774): E1026 File not found: 'jcapistd.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(775): E1026 File not found: 'jcapimin.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(776): E1026 File not found: 'jcinit.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(777): E1026 File not found: 'jcmarker.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(778): E1026 File not found: 'jcmaster.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(779): E1026 File not found: 'jcmainct.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(780): E1026 File not found: 'jcprepct.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(781): E1026 File not found: 'jccoefct.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(782): E1026 File not found: 'jccolor.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(783): E1026 File not found: 'jcsample.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(784): E1026 File not found: 'jcdctmgr.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(785): E1026 File not found: 'jcphuff.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(786): E1026 File not found: 'jfdctint.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(787): E1026 File not found: 'jfdctfst.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(788): E1026 File not found: 'jfdctflt.obj' 
[DCC Error] Vcl.Imaging.jpeg.pas(789): E1026 File not found: 'jchuff.obj' 
+2

这是一个VCL或FireMonkey应用程序吗?它适用于Windows还是OSX?它是32位还是64位目标?请编辑您的帖子并提供其他信息,以便有人可以帮助您解决问题。谢谢。 :) –

+0

这是一个VCL应用程序的Windows 32位 – relativ

回答

6

Delphi XE2不附带名为Vcl.Imaging.jpeg.pas的设备。它附带一个预编译的DCU文件,名为Vcl.Imaging.jpeg.dcu。您需要链接预编译的DCU,而不是尝试编译VCL单元。只有当您尝试从源代码编译单元时才会出现错误消息。如果将预编译的DCU传递给链接器,则无法获得此消息。

我怀疑你的.dpr文件包含对名为Vcl.Imaging.jpeg.pas的文件的引用。通过从.dpr文件中删除对Vcl.Imaging.jpeg.pas的引用来解决问题。另一种解释是您的搜索路径中有一个名为Vcl.Imaging.jpeg.pas的源文件。

+0

嗯,谢谢大卫你是对的 – relativ

+0

更新我的问题。另一种可能是,有一个文件名为Vcl.Imaging.jpeg.pas在您的搜索路径。你应该能够双击其中一个编译器错误信息并打开该文件。 –

+0

问题我之前把vcl目录添加到库路径,我看到它。谢谢 – relativ

0

找到那些obj文件所在的目录。确保该目录出现在您的项目的搜索路径上。 (它们不是你自己编译的文件。)

如果在Delphi安装中没有这些obj文件,请检查安装DVD。

+0

罗布,它并不那么简单。有问题的对象仅适用于Win32 VCL应用程序;如果目标是Win64,它们将不起作用。如果它是一个FireMonkey应用程序,它们根本不适用(并且'VCL.Imaging'命名空间应该被删除)。需要更多信息才能提出答案。 –

+0

我做但是,当我这样做,我得到不同的错误:( – relativ

1

从DevExpress的论坛最好的解决办法:

为了解决这个问题,通过使用项目 - >选项 - > Delphi的反编译>单元范围的名称菜单选项Vcl.Imaging命名空间添加到您的应用程序。