あなたが言及した最初の 2 つの警告は (他のいくつかの警告とともに)、現在使用しているコードは、Delphi がサポートする異なるプラットフォーム間ではコンパイルできないことを認識させるためのものです。Delphi 2007 の場合はそれほど多くはありませんが、Kylix (廃止された Linux バージョン) と Delphi for .NET (これも廃止されました) の名残が含まれています。
Delphi の最近のバージョンでは、クロスプラットフォーム(Win32/Win64、OS X、iOS、および Android)がサポートされており、Firemonkey アプリケーション(Win32 と Win64 に違いがある場合は VCL アプリ)を開発するときに、これらのメッセージが再び関連します。これらは、さまざまなオペレーティング システム用にコードを調整する必要があるコード内のポイントを示しています。(たとえば、引用した2つはWindows固有のダイアログ用です。ターゲットプラットフォームに基づいて別のダイアログを使用し、{$IFDEF}
プラットフォーム固有の領域の周りにステートメントを使用して、それらが他のためにコンパイルされないようにする必要がありますプラットフォーム。
VCL ベースであるため、現在のコードを (最新の Delphi バージョンであっても) Windows 以外に直接移植することはできないため、これらの警告を安全にオフにすることができます。を使用Project->Options->Compiler Messages
し、次のメッセージのチェックを外します (または、コードに含めたコンパイラ定義を使用します)。
Library Symbol {$WARN SYMBOL_LIBRARY OFF}
Platform Symbol {$WARN SYMBOL_PLATFORM OFF}
Library Unit {$WARN UNIT_LIBRARY OFF}
Platform Unit {$WARN UNIT_PLATFORM OFF}
Unsafe type (.NET remnant) {$WARN UNSAFETYPE OFF}
Unsafe code (.NET remnant) {$WARN UNSAFECODE OFF}
Unsafe typecast (.NET remnant) {$WARN UNSAFECAST OFF}
あなたが言及した最後の 2 つは、D2007 (IDE バージョン 11.0.2804.9245) では再現できないため、skamradt の回答が正しいと思われます。検索パスに VCL ソース ディレクトリが含まれているためです。 t。に設定する必要があります$(BDS)\Lib
。ソースをステップスルーできるようにする必要がある場合は、ページを使用し、代わりに下のオプションProject->Options->Compiler
を確認してください。Use debug DCUs
Debugging