アプリ版:「スタンプのみでお礼する」機能のリリースについて

C言語でプログラミングして、コマンドラインでDBのプリコンパイルを行い、
バインドされたファイルをCV++でコンパイルしているのですが、CV++でプリコンパイルを行い、コンパイルできないものでしょうか?あれば教えて欲しいですが、また
上記方法が記述されているHPまたは本があれば教えてください。

A 回答 (4件)

なんか、書いてあることが良く分かりませんが、VC++ の統合環境で ビルドっ って


やれば、SQL のプリコンパイルも勝手にやって欲しいなあ、ということですよね。

できますよ。

プロジェクトの設定のダイアログに「カスタムビルド」ってタブがあるんですけど
そこで設定が出来ます。というわけで、

> また上記方法が記述されているHPまたは本があれば教えてください

の一番確実なところは VC のヘルプだったりします。

この回答への補足

やりたい事は、その通りです。現状バインドファイルを作成するときは、db2のコマンドライン
からdb2 connect to XXXX user DB2 using XXXX
  db2 prep Cソース名.sqc bindfile
  db2 bind Cソース名.bnd
を打ってます。
上記をVC++カスタムビルドにどのように設定したらよいのでしょうか?

補足日時:2001/10/10 15:01
    • good
    • 0

> 上記をVC++カスタムビルドにどのように設定したらよいのでしょうか?



そのまま打っちゃって大丈夫ですよ。バインドされたファイルの置き場所なんかを
プロジェクトの定義に合わせたいのであれば、「ディレクトリ」とか「ファイル」
と書かれたボタンを押すと、それを意味するマクロが挿入されます。

ヘルプのクエリーで「カスタムビルド」をキーワードに検索をかけると、
ユーザーズガイドの中でヘルプが見つかります。そこを読めば、きっと
分かりますよ。

この回答への補足

ありがとうございます。やってみたのですが、db2のコマンドが実行出来ないみたいです。
エラーメッセージとして”DB21061E コマンド行環境は初期化されていません。”と
出力されます。何かお呪いが必要なのでしょうか?
ちなみに開発環境をNT、BD2はNTサーバです。
現在バインド方法はDB2 Windows NT版のコマンドウィンドウからコマンドラインで作成しています。

補足日時:2001/10/11 09:52
    • good
    • 0

> やってみたのですが、db2のコマンドが実行出来ないみたいです



db2 prep や bind で、エラーが出てるんでしょうか?

多分、コマンド毎に別プロセスとして起動されているので、db2 connect が
有効になってないんでしょうね。

三つのコマンドをひとつのバッチファイルにまとめて、それをカスタムビルドの
コマンドとして実行してみてはどうでしょうか?

この回答への補足

ありがとうございます。カスタムビルドのビルドコマンドにdb2cmd aaa.bat
でバインドを行う事ができました。ただ、カスタムビルドセットアップの実行中に
VC++のビルドが終わるため、バインドされたファイルが有効になりません。
バインド後にビルド(コンパイル及びリンク)を行うのには、どうしたらいいのでしょか?

度々すみません。。。

カスタムビルドの設定は
ビルドコマンド欄には
db2cmd aaa.bat
出力ファイル欄には
$(aaa.c)

aaa.batの記述は
db2 connect to XXXXXX user DB2 using XXXXXXX
db2 prep aaa.sqc bindfile
db2 bind aaa.bnd

補足日時:2001/10/11 14:11
    • good
    • 0

> ただ、カスタムビルドセットアップの実行中に


> VC++のビルドが終わるため、バインドされたファイルが有効になりません。

そのプロジェクトの構成ファイルに、バインドの出力ファイル(補足だと aaa.c)は
含まれてますか?

> 出力ファイル欄には
> $(aaa.c)

出力ファイルは、$(aaa.c) ではなく、aaa.c ですよね?

ヘルプに書いてある lex/yacc の例も、Cのソースを生成して、それをコンパイルして
という手順で実行プログラムを作るものだから、いけると思うんだけどなあ。


ちょこちょこ調べているうちに、参考URLのページなんかを見つけました。
何かの参考になれば…

参考URL:http://www-6.ibm.com/jp/software/data/developer/ …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!