C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: Xercesの使用で未定義エラー(C++Builder6)


(過去ログ 17 を表示中)

[トピック内 10 記事 (1 - 10 表示)]  << 0 >>

■6615 / inTopicNo.1)  Xercesの使用で未定義エラー(C++Builder6)
  
□投稿者/ サンダル (7回)-(2007/08/20(Mon) 19:15:15)

分類:[C/C++] 

こんにちは。よろしくお願いします。

C++Builder6でXercesを使用しようとしてまして、いきなりコンパイルエラーになり困っております。

・xerces-c-src_2_6_0をコンパイル(2_7_0はコンパイルの段階でエラーになったのでやめました)
・インクルードパスに (xercesのパス)\xerces-c-src_2_6_0\src を追加
・プロジェクトに追加で (xercesのパス)\Build\Win32\BCB6\XercesLib.lib を追加

ソース------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"

#include <xercesc/sax2/XMLReaderFactory.hpp>
#include <xercesc/sax2/SAX2XMLReader.hpp>
#include <xercesc/sax2/DefaultHandler.hpp>

#include <xercesc/util/XMLUni.hpp>

#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;

__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}

void __fastcall TForm1::Button1Click(TObject *Sender)
{
SAX2XMLReader* parser = XMLReaderFactory::createXMLReader();
}


エラー内容--------------------------------------------------------------------
[C++ エラー] Unit1.cpp(30): E2451 未定義のシンボル SAX2XMLReader
[C++ エラー] Unit1.cpp(30): E2451 未定義のシンボル parser
[C++ エラー] Unit1.cpp(30): E2090 型限定子 'XMLReaderFactory' がクラス名または名前空間名ではない
[C++ エラー] Unit1.cpp(30): E2379 ステートメントにセミコロン(;)がない


原因の分かる方、ご教授願います。

引用返信 編集キー/
■6616 / inTopicNo.2)  Re[1]: Xercesの使用で未定義エラー(C++Builder6)
□投稿者/ サンダル (8回)-(2007/08/20(Mon) 19:21:48)
ちなみに、xerces-c-src2_1_0 だとコンパイルは通るのですが、
SAX2XMLReader* parser = XMLReaderFactory::createXMLReader();
で落ちます。
引用返信 編集キー/
■6617 / inTopicNo.3)  Re[1]: Xercesの使用で未定義エラー(C++Builder6)
□投稿者/ 渋木宏明(ひどり) (303回)-(2007/08/20(Mon) 21:50:31)
渋木宏明(ひどり) さんの Web サイト
直接の回答ではありませんが…

どうせ Windows なんだったら、MSXML を使ってみるという選択肢もあると思います。

もっとも、BCC に VC++ のようなコンパイラ COM サポートが無いようだと、かなり使いにくいものになってしまいますが。

引用返信 編集キー/
■6633 / inTopicNo.4)  Re[2]: Xercesの使用で未定義エラー(C++Builder6)
□投稿者/ サンダル (9回)-(2007/08/21(Tue) 12:22:07)
No6617 (渋木宏明(ひどり) さん) に返信

渋木宏明(ひどり) さん こんにちは。コメントありがとうございます。

> どうせ Windows なんだったら、MSXML を使ってみるという選択肢もあると思います。

Borland C++Builder 6、もしくは C#Builder で作ろうとしています。
XmlValidatingReader を使用して作成してましたが、「NET Framework 2.0 リリースでは
XmlValidatingReader クラスが廃止」とあり、「XmlReader オブジェクトをお勧めします」
とあります。

ので、XmlReader を使用しようと思ったのですが、NET Framework 2.0 を C#Builderがサポ
ートしていないため、XmlReaderを使用することができません。

その辺の不便さから xerces を使用しようとしています。



引用返信 編集キー/
■6636 / inTopicNo.5)  Re[3]: Xercesの使用で未定義エラー(C++Builder6)
□投稿者/ 10Ri (1回)-(2007/08/21(Tue) 13:10:11)
マルチポスト
http://hpcgi1.nifty.com/MADIA/Vcbbs/wwwlng.cgi?print+200708/07080026.txt
引用返信 編集キー/
■6637 / inTopicNo.6)  Re[3]: Xercesの使用で未定義エラー(C++Builder6)
□投稿者/ ぽぴ王子 (255回)-(2007/08/21(Tue) 13:25:12)
ぽぴ王子 さんの Web サイト
No6633 (サンダル さん) に返信

> Borland C++Builder 6、もしくは C#Builder で作ろうとしています。
> XmlValidatingReader を使用して作成してましたが、「NET Framework 2.0 リリースでは
> XmlValidatingReader クラスが廃止」とあり、「XmlReader オブジェクトをお勧めします」
> とあります。

廃止というか「今後は廃止されていくであろうことが考えられるが、現在のところは
互換性のために残しているんだ。 .NET 2.0 だったら XmlReader クラスを使ってね」
ということなのだと思います。

> ので、XmlReader を使用しようと思ったのですが、NET Framework 2.0 を C#Builderがサポ
> ートしていないため、XmlReaderを使用することができません。

C#Builder が .NET Framework 2.0 をサポートしていないのであれば、上記の互換性問題
は気にしなくてもよいはずですよね。というか気にすることもできないはずですよね。
だったら XmlValidationReader クラスでいいのでは。

どうしても C++ Builder で xerces を使いたいというなら止めませんが。

# 一番いいのは C++ Builder も C# Builder も捨てて VisualStudio2005 ExpressEdition でも使うことだと思う
引用返信 編集キー/
■6644 / inTopicNo.7)  Re[4]: Xercesの使用で未定義エラー(C++Builder6)
□投稿者/ サンダル (10回)-(2007/08/21(Tue) 14:18:00)
マルチポスト しないように気をつけます。
引用返信 編集キー/
■6647 / inTopicNo.8)  Re[5]: Xercesの使用で未定義エラー(C++Builder6)
□投稿者/ サンダル (11回)-(2007/08/21(Tue) 14:22:11)
ぽぴ王子 さん こんにちは。

コメントありがとうございます。

># 一番いいのは C++ Builder も C# Builder も捨てて VisualStudio2005 ExpressEdition でも使うことだと思う

環境が borland しかないので・・・
引用返信 編集キー/
■6660 / inTopicNo.9)  Re[3]: Xercesの使用で未定義エラー(C++Builder6)
□投稿者/ 渋木宏明(ひどり) (304回)-(2007/08/21(Tue) 16:27:22)
渋木宏明(ひどり) さんの Web サイト
>>どうせ Windows なんだったら、MSXML を使ってみるという選択肢もあると思います。
>
> Borland C++Builder 6、もしくは C#Builder で作ろうとしています。
> XmlValidatingReader を使用して作成してましたが、「NET Framework 2.0 リリースでは
> XmlValidatingReader クラスが廃止」とあり、「XmlReader オブジェクトをお勧めします」
> とあります。

MSXML とは .NET のクラスではなく、当初 IE オマケとして配布されていた COM コンポーネントのことです。
(現在は単体配布もされています)

VC++ のようなコンパイラ COM サポートがないと多少ゴツゴツした使用感ですが、BC++ で使えないことはありません。
引用返信 編集キー/
■6696 / inTopicNo.10)  Re[4]: Xercesの使用で未定義エラー(C++Builder6)
□投稿者/ サンダル (12回)-(2007/08/22(Wed) 12:43:21)
みなさんにいただいたコメントをもとに、もっと調べてみます。
ありがとうございます。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -