C++Builder XE3でVcl.FileCtrl.hppを使うと、「[ilink32 エラー] Error: 未解決の外部シンボル」のエラーが発生するときの解決策

たとえばVcl::Filectrl::SelectDirectory関数を使ったときに、次のようなエラーが発生することがあります。

[ilink32 エラー] Error: 未解決の外部シンボル ‘__fastcall Vcl::Filectrl::SelectDirectory(const System::UnicodeString, const System::WideString, System::UnicodeString&, System::Set, Vcl::Controls::TWinControl *)’

このようなときは、ツールバレットの「Win3.1」にある「TDirectoryListBox」(または他のFileCtrlユニットにあるコンポーネント)を追加します。
こうすることにより、プロジェクトに必要なファイルが追加されます。

この解決策は「CppBuilderLinkingErrors」を参考にしました。

プロジェクトファイルを直接編集する方法もありますが、この方法はわかりやすくていいと思います。

コメント

  1. この間この問題にはまっていました。
    解決してEmbarcaderoには報告済みです。

    問題点は、必要なライブラリをリンクするためにヘッダーを検索するプログラムが大文字小文字を区別していることで、
    インクルードではとしないとvclx.libがリンクされずエラーが発生します。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください