VC から OpenOffice その3
あっちこちググったり片っ端からサンプル試してみたり、トライ&エラーを繰り返しながら、なんとなく目的の動作はするようになりました。ので、時間が空いたらメモ代わりにここにも記録しておかなと。
と思ったら、こんなのをさっき発見・・・。
Integrate the OpenOffice.org power in a WTL (or other native Win32) application
自分が知りたかった全てがここにありましたよ・・・(-_-)
VC から OpenOffice その2
昨日エントリーした、VisualCからOpenOfficeアプリを操作する件。
なんとかサンプルを動作させることができ、とりあえずWindowsアプリから Calc のセルに "Hello" と表示させることは出来ました。最初の一歩クリアかな。
VC から OpenOffice
VisualCから、OpenOfficeを操作するやり方を模索中。
すでに、WindowsアプリからExcelを操作して印刷したりするプログラムがあるのだけれど、これのExcel部分をOpenOfficeのCalcに変更したい。という事です。で、OpenOfficeのSDKドキュメントを斜め読みしてるんですが、これが結構大変・・・。主にJavaでの利用を目的としている(OpenOffice自身はC/C++じゃなかったかな?)記述&サンプルなのがツライ。英語わかんないから頼りなのがサンプルなのにそれがJava。いちおうC/C++についても記述はあるのですが、Javaに対しての補足説明くらいの記述なので、基本理念とか理解しようと思ったらまずJavaでの記述&サンプルを読んでからC/C++を読むという・・・。
それと、最初の環境構築がエライ面倒・・・。C/C++のサンプルもGNU-C/C++とかが前提&コマンドラインでmake用のmakefileなので、VisualCでそのまま使うと山のようなワーニングとエラーが降ってきます(^_^;)
どこかに、VisualC/C++での構築手順のってないかなぁ。(日本語で(^_^;)
WTLインストール、メモ
やっとVS.NETを使ってみようかと、WTLをインストール
■ VisualStudio.NET 2002/2003
- WTLの最新版を、SourceForge.netよりダウンロード。
- 展開したAppWizディレクトリの、setup71.js(VS.NET2002の場合はsetup70.js)を実行。
- VS.NET2003のインクルードの設定に、WTLのincludeパスを追加。
AppWizardの日本語化が不要なら、ここで終わり。
- AppWizardや、自動作成されたリソースが英語のままなので、日本語化しておく。
まずRoy.'sさんの、「WTL講座 環境編」から、日本語リソースをダウンする。
- つぎに%WTL%\AppWiz\Files\HTML\に1033ディレクトリのコピーを作って、名前を1041にする。同様に、%WTL%\AppWiz\Files\Templates\にも1033ディレクトリをコピーした1041ディレクトリを作る。
- そこに、先ほどダウンした日本語化されたリソースをコピーして終了。
■ VisualStudio 6.0
- SourceFogeの最新版WTLは、VisualStudio6.0対応が消えているので、ここは無理せず旧WTL7.1版を使う。WTL7.1は、Microsoftのサイトからダウンロード。
- 展開した、AppWiz60ディレクトリの、setup.jsを実行。
- VS6.0のインクルードの設定に、WTLのincludeパスを追加。
AppWizardの日本語化が不要なら、ここで終わり。
- WTL7.1のVS6.0対応版のカスタムAppWizardはコンパイル済みの物なので、自己責任でResourceHackerを使って日本語化してみる。AtlApp60.awxを、%VS6.0インストール先%\Common\MSDev98\Template\にコピーして終了。
VC5 と VC6 の共存
古い製品の話ですが、メモ。
VC5とVC6を一緒にインストールすると、MFCベースで作ったプログラムのデバック実行が出来ない。Debug版MFC共有DLLのバージョン違いが原因のようで、VC6のほうが新しくなっています。
以下がそのファイル
MFC42D.DLL
MFC42D.PDB
MFCD42D.DLL
MFCD42D.PDB
MFCN42D.DLL
MFCN42D.PDB
MFCO42D.DLL
MFCO42D.PDB
で、VC5インストール時のこれらのファイルと、VC6インストール時のファイルを、各々あらかじめ保存しておいて、各VCを使用するときにSYSTEM32ディレクトリにコピーすればOK。
ちょっと面倒だけど、ほとんどMFC使わないので、これでいいかな。