我在"消息"中收到了几个警告。面板,在编译我的源代码之后,在编译器的[Success]消息之后。
当我将光标放在关键字/变量上并且Code Insight弹出窗口出现在屏幕上(编译后)时,有时会出现,有时则不然。外观是随机的(警告可能出现与否)。基本上,它取决于IDE中的光标位置。
[警告] W1000符号' TVariantManager'已弃用
[警告] W1000符号' TMemoryManager'已弃用:'使用TMemoryManagerEx'
[警告] W1000符号' TSingleRec'已弃用:'使用TSingleHelper'
[警告] W1000符号' TDoubleRec'已被弃用:'使用TDoubleHelper'
双击消息时没有任何反应。
知道是什么原因引起的吗?
由于这在编译器完成后出现,我想它会是我的插件之一(GExpers,CnPack,Andy' s),但直到现在我还没有看到它。
答案 0 :(得分:1)
最后,我有一个解释。以下是我的IDE的构建窗口中的一些输出:
Checking project dependencies... Compiling Foo.dproj (Debug, Win32) dcc command line for "Foo.dpr" ..... // spurious details removed Success Elapsed time: 00:00:05.2 [Error] E1000 Symbol 'TImageIndex' is deprecated: 'Use System.UITypes.TImageIndex' [Error] E1000 Symbol 'CM_THEMECHANGED' is deprecated: 'Use CM_STYLECHANGED' [Error] E1000 Symbol 'RaiseList' is deprecated: 'Use AcquireExceptionObject' [Error] E1000 Symbol 'TMemoryManager' is deprecated: 'Use TMemoryManagerEx' [Error] E1000 Symbol 'Release' is deprecated [Error] E1000 Symbol 'ThemeServices' is deprecated: 'Use StyleServices' [Error] E1000 Symbol 'faVolumeID' is deprecated [Error] E1000 Symbol 'GetHeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'THeapStatus' is deprecated [Error] E1000 Symbol 'TScrollStyle' is deprecated: 'Use System.UITypes.TScrollStyle'
当我尝试使用 CTRL +单击导航到源代码中符号的定义时,出现了这组特定的错误。接下来会发生的是IDE使用其内部解析器/编译器之一来理解代码并确切地计算出这是什么符号。这个内部解析器/编译器是用Delphi编写的,它会发出提示,警告和错误,它们位于主IDE构建窗口中。
我知道您所看到的具体警告内容与我的内容不同,但我确信根本原因在原则上是相同的。其中一个内部解析器/编译器正在吐出这些消息,因此它们与代码内容完全无关。
答案 1 :(得分:0)
大卫回答的附录。引发这种奇怪行为的另一件事是Refactor。这是我在尝试应用'Pull members up'重构失败后得到的结果。
Checking project dependencies...
..... // spurious details removed
Success
Elapsed time: 00:00:01.9
[Warning] W1000 Symbol 'vmtEquals' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtGetHashCode' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtToString' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtSafeCallException' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtAfterConstruction' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtBeforeDestruction' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtDispatch' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtDefaultHandler' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtNewInstance' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtFreeInstance' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtDestroy' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtQueryInterface' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtAddRef' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtRelease' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'vmtCreateObject' is deprecated: 'Use VMTOFFSET in asm code'
[Warning] W1000 Symbol 'TVariantManager' is deprecated
[Warning] W1000 Symbol 'TVariantManager' is deprecated
[Warning] W1000 Symbol 'TMemoryManager' is deprecated: 'Use TMemoryManagerEx'
[Warning] W1000 Symbol 'TMemoryManager' is deprecated: 'Use TMemoryManagerEx'
[Warning] W1000 Symbol 'THeapStatus' is deprecated
[Warning] W1000 Symbol 'THeapStatus' is deprecated
[Warning] W1000 Symbol 'HPrevInst' is deprecated
[Warning] W1000 Symbol 'AllocMemCount' is deprecated
[Warning] W1000 Symbol 'AllocMemSize' is deprecated
[Warning] W1000 Symbol 'TSingleRec' is deprecated: 'Use TSingleHelper'
[Warning] W1000 Symbol 'TSingleRec' is deprecated: 'Use TSingleHelper'
[Warning] W1000 Symbol 'TDoubleRec' is deprecated: 'Use TDoubleHelper'
[Warning] W1000 Symbol 'TDoubleRec' is deprecated: 'Use TDoubleHelper'
[Warning] W1000 Symbol 'TextStart' is deprecated
[Warning] W1000 Symbol 'GetHeapStatus' is deprecated
[Warning] W1000 Symbol 'RaiseList' is deprecated: 'Use AcquireExceptionObject'
[Warning] W1000 Symbol 'SetRaiseList' is deprecated: 'Use AcquireExceptionObject'
[Warning] W1000 Symbol 'Mark' is deprecated
[Warning] W1000 Symbol 'Release' is deprecated
[Warning] W1000 Symbol 'FPower10' is deprecated: 'Use Power10'
[Warning] W1000 Symbol 'GetVariantManager' is deprecated
[Warning] W1000 Symbol 'SetVariantManager' is deprecated
[Warning] W1000 Symbol 'IsVariantManagerSet' is deprecated
[Warning] W1000 Symbol 'UTF8Decode' is deprecated: 'Use UTF8ToWideString or UTF8ToString'
我们可以再次看到对'TMemoryManagerEx'的引用。