frame_decoration

VISTAにインストールする時はUACを切る!!!

起動するときはBCBを「管理者として実行」からプロジェクトを開く。

プロジェクトコピー時のエラー

Project1.cppの
USEFORM("C:\(古いプロジェクトのパス)\Unit1.cpp", Form1);

USEFORM("Unit1.cpp", Form1);
に修正する

表示→プロジェクトマネージャで確認するとUnitとかのパスが古いままなので
プロジェクト→プロジェクトから削除、プロジェクトへ追加で修正



Tmemoにテキストの追加

AniString str;
str.printf("%d+%d=%d",x,y,x+y);
Form1->Memo1->Lines->Add(str);


例外処理

C++Builderのデバッグモードで例外処理をしようとするとエラーダイアログで処理が中断されて,再実行しないとcatchが実行されない
リリースビルドしてしまえば問題ない
下の例では数値以外の値があるとEConvertErrorになる
Int型でよければAnsiString::ToIntDef(int defaultValue)でよい
try{
    kd = Form1->Edit2->Text.ToDouble();
}catch(const EConvertError& e){
    kd = 0;
}

VCL50.LIBが見つかりません

リリースビルドのためにライブラリを外したときに出るエラー
前回のプロジェクトが正しく終了できなかったときに、プロジェクトが壊れてよく発生する。
IDEを閉じる前にすべて保存→すべて閉じるをする
別のディレクトリにプロジェクトを保存しなおして再構築で直る

C++Builderでdllが不必要な実行ファイルを作成するには

(cf.BCB Tips)
C++BuilderのIDEから次の2つの操作をします。
1.コンパイルオプションで”実行時dlLを使用する”のチェックをはずす。
2.プロジェクトのオプションのコンパイラで”ダイナミックRTLを使用する”のチェックをはずす。
BCB6
「リンカ」の「共有 RTL DLLを使う」のチェックを外す
「パッケージ」の「実行時パッケージを使って構築」のチェックを外す
プロジェクトの「project1を再構築」で再構築
最終更新:2007年08月02日 03:56