C++Builder相談室 Part5
■ このスレッドは過去ログ倉庫に格納されています
0001owl
NGNG過去スレ・関連サイトは>>2-4あたり。
0159158
NGNGBCB6 SP4 以降を当ててください。
0160デフォルトの名無しさん
NGNG0161デフォルトの名無しさん
NGNGべつに問題ないけど?
0162デフォルトの名無しさん
NGNGバージョン情報が英語になっているだけ(w
0163デフォルトの名無しさん
NGNGとか書いても、エラーメッセージに「C++ Exception.」と出るだけです。
自分でcatchして情報を取り出さないといけないのでしょうか?
0164デフォルトの名無しさん
NGNG処理系が自動的にメッセージを表示するのは無理。
0165デフォルトの名無しさん
NGNG普通catchがないとuncaught_exeption()が呼び出されるんじゃ
なかったっけ。
0166デフォルトの名無しさん
NGNG0167デフォルトの名無しさん
NGNGどっちにしてもコンパイラが例外の種類に応じて
自動的に適切な文字列に書式化して表示するのは無理。
0168163
NGNGじゃ、catchでの文字列の取り出し方とかキボンニュ。
0169デフォルトの名無しさん
NGNGwhat()
0170デフォルトの名無しさん
NGNG0171163
NGNGWin以外の開発が多くなったもんで。
テスト用にBCBツカテルダケ。
Linuxが多くなったら、またKylixに戻る予定。
0172デフォルトの名無しさん
NGNG0174デフォルトの名無しさん
NGNGヘルプくらい読めよ。
0175163
NGNGcatch (const exception& e)
e.what()
0176163
NGNG0177デフォルトの名無しさん
NGNGああ、もう少し具体的に書けば良かったかな。
もしかしたら what? (何だって?) と誤解されるかと書いた後で思った。
what()という名前のメンバ関数だから仕方ないね(w
0178デフォルトの名無しさん
NGNG例えば
#include <iostream>
#include <stdexcept>
void func() throw(std::exception)
{
throw std::runtime_error("error");
}
int main()
{
try {
func();
}
catch (const std::exception& e) {
std::cout << e.what() << std::endl;
}
}
0180172
NGNG0181デフォルトの名無しさん
NGNGVC++にはあるとおもうけど、VC++なんかは要りません。
0182デフォルトの名無しさん
NGNGfinallyなんて使わずにcatchで我慢
0183デフォルトの名無しさん
NGNG0184153
NGNGBCB1以降,バージョンアップの際に自動で行われるファイルの
アップデートで何度か痛い目に遭っているので,古い環境も
なかなか捨てられないのですよ….全部新しいverで動くか検証
するとしたら,3桁くらいのプログラムをコンバートして調べな
いといけなくて…
>>158
ビンゴでした.
Projectファイルを "c++" なんていう名前を付けたフォルダの下に保存し
ていたため,絶対パスに"+"が含まれていて,ver6のでは引っかかっていた
ようです.ver6のみ入れたマシンはそんなことしていなかったので,大丈
夫だったというオチでした.
updateを適用してみます.
どうもありがとう.助かりました.
0185デフォルトの名無しさん
NGNGで、TIdHTTP貼り付けて
IdHTTP1->Get("http://example.com/");
でコンパイルは通るんだけど
[リンカ エラー] 外部シンボル '__fastcall Idhttp::TIdHTTP::Get(System::AnsiString)' が未解決
って怒られます。
何ででしょう…
0186デフォルトの名無しさん
NGNG#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
IdHTTP1->Request->UserAgent = "Mozilla/4.5 [ja] (WinNT; I)";
Memo1->Lines->Text = IdHTTP1->Get("http://pc2.2ch.net/test/read.cgi/tech/1045542179/l10");
}
//---------------------------------------------------------------------------
としてみたが問題なくコンパイルできるし動いてるよ
9.0.11だす
0187デフォルトの名無しさん
NGNGIndy9.0.11って何?
0190185
NGNG1.BCB6をIndy8なしでインストール
2.Indy9.0.11をダウンロードしてきてFullC6.batでmake
3.コンポーネント→パッケージのインストールでインストール
4.新規プロジェクト作成→とりあえずすべて保存
5.Form1にTIdHTTPコンポとメモ、ボタンを一個ずつおく
6.Button1のOnClickに>>186のコードをかく
という感じですが…。
ライブラリパス見てもIndyのパス追加されてるし、
さっぱりわからないよ。
パスはとおっててもリンクされてないだけでしょ。
LIBファイルをプロジェクトにドロップして追加してみ。
0193185
NGNGIndyの場合、どのファイルになるんでしょうか…。
関連するようなファイル(IdHTTP.hpp,IdHTTP.obj,IdHTTP.dcu,dclindy60.bpl)を
プロジェクトマネージャに追加してみたんですが同じリンカエラーがでます
>>192
同じく、BCB6Proです。
謎ですね…。
一回インストールし直した方がいいのでしょうか。
0194186
NGNGんでは、BCB6本体にアップデートあててあります?
Indyの説明で「まずアップデートしろ、話はそれからだ(意訳)」とあったですよ
んで、その時はアップデート2まで出ていたんで、自分は1と2を順にあててからIndyを入れました。
0195186
NGNGIndyのインストールって、
>FullC6.batでmake
>3.コンポーネント→パッケージのインストールでインストール
だけでは済まなかったような
色々なLibだのbplだのbpiだのを拡張子を頼りに手動でいくつも移動・上書きしたような・・・
0197186
NGNG日本語版では出ていませんが英語版ではupd4まで出ています。
登録ユーザーであれば↓
ttp://www.borland.com/products/downloads/registered/cb6_reg_updates_prompt.html
からログインしてアップデートファイルをDLしてきてから、
>>5-6に示された方法でupd2まであてて、
そのあとそのままupd4をあてればOKです
0198デフォルトの名無しさん
NGNG作成したスレッドから new して使用しているのですが、
複数のスレッドが起動して new していると EInvalidOpration 例外が発生して、
「 Canvas に対する描画できません」と出ます。
これは何が原因なのでしょうか。
0199デフォルトの名無しさん
NGNG日本語部分が文字化けするんですが、何かうまい解決法はないでしょうか。
基本的なことだと思うのですが検索してもさっぱり出てこなくて…。
0200デフォルトの名無しさん
NGNGメソッドをオーバーロードするしかないんじゃない?
0201デフォルトの名無しさん
NGNGそんで文字コード変換コードを。
0202デフォルトの名無しさん
NGNGコード判別してsjisにコンバートすればいいじゃん
0203デフォルトの名無しさん
NGNGupdate4 では変更されるファイルが多いから、update3 までの対策では足りないと思う。
なお、今回は Update4 を日本語環境にインストールするためのパッチは出しません。
0204デフォルトの名無しさん
NGNG読み込む時に文字コードを変えてやればいいんですね。ありがとうございました。
とりあえず
AnsiString str;
edit->Lines->LoadFromFile(FileName);
str = edit->Lines->Text;
edit->Lines->Text = ConvertJCode(str, SJIS_OUT);
などとして逃げてみました(…なんかめちゃくちゃだなぁ)。
0205デフォルトの名無しさん
NGNG0207185
NGNGとりあえずupd4まで入れてみたんですが、
結果同じでした>Getが未解決
Indy9のC6ディレクトリに出来たものを自力で移動させないと
だめってことでしょうかね…。
0208デフォルトの名無しさん
NGNG0209デフォルトの名無しさん
NGNG0210デフォルトの名無しさん
NGNG0211185
NGNGちゃんとFAQ嫁ってことで…。
ヒントをくれた>>186氏に感謝。
>>190の3.の後に
・ツール→環境オプション→ライブラリの
ライブラリパスにパスをC6(の中の*.DCU)の場所を追加
>>190の4.の後に
・プロジェクトのオプションのインクルードパスにC6(の中の*.HPP)の場所を追加
これで無事にmake通りました。
0212デフォルトの名無しさん
NGNGおめ。
俺も最近Indyで躓いていたので、このやり取りは参考になった。
0214デフォルトの名無しさん
NGNGDLL内のグローバル変数を異なるプロセス間で共有するにはどうすればいいのでしょうか?
DEFファイルのSECTIONS文を使えばいいみたいなのですがやり方がさっぱり‥‥∧||∧
0215デフォルトの名無しさん
NGNGVCなら#pragma data_seg()があるけど、BCBにはないからね。
アセンブラでセグメントを共有するしかないと思う。
0217デフォルトの名無しさん
NGNGif ( mBombAy < 0 ) return;
//操作
switch( Key ){
case VK_SPACE:
mBombX = mPlaneX;
mBombY = mPlaneY;
mBombAy = -5;
break;
case VK_UP:
mPlaneAy= -5;
break;
case VK_DOWN:
mPlaneAy= 5;
break;
〜
Bombを動かしてるときはSpaceの入力を受け付けないようにしたいんですが、
「if ( mBombAy < 0 ) return;」だと全てのキー操作を受け付けなくなっちゃいます。
Spaceの入力だけ受け付けないようにするにはどうしたらいいでしょうか?
0218デフォルトの名無しさん
NGNG//操作
switch( Key ){
case VK_SPACE:
if ( mBombAy < 0 ) return;
mBombX = mPlaneX;
これじゃだめなのか?
あと、BCB使っててもこれはこのスレ範疇じゃないし
Bombという名前からしてゲームだと思うので
ゲーム板で聞いたほうがいいんじゃないかね?
0220デフォルトの名無しさん
NGNGTMemoに出力するにはどうしたらいいんですか?
0221デフォルトの名無しさん
NGNGMemo1->Text = IntToStr(number);
0222デフォルトの名無しさん
NGNGメモリマップドファイルを使いましょう。
0223デフォルトの名無しさん
NGNGできました どうもです
0224デフォルトの名無しさん
NGNGLOBYTE(Hotkey)は仮想キーコードがきちんと格納されているのですが、
装飾キーがHIBYTE(Hotkey)&HOTKEYF_ALT等で取れず、
altの場合はHIBYTE(Hotkey)&0x80にしないと取れないのですが
SDKのHKM_GETHOTKEYとVCLのTHotkeyとでは仕様が異なるのでしょうか?
0225デフォルトの名無しさん
NGNGShotCutToKeyを使うか、HotKey & scAlt みたいにするんだと思う。
0226デフォルトの名無しさん
NGNGmain threadで実行しなければいけないなど、何か制限があるのでしょうか?
0227226
NGNG0228デフォルトの名無しさん
NGNG実行時にエラーが出て実行できません。
TIcon* icon = new TIcon();
icon->LoadFromFile("icon.ico");
TreeView1->Images->AddIcon(icon);
これでは駄目なのでしょうか?分かる方いましたら教えてください。
0229名無し~3.EXE
NGNGVCL使った普通のGUIアプリ作っているんですが、
これの動作の優先度(priority)を自分自身で変更するにはどうすればよいでしょうか?
#ググってみたんですが、それらしいものが見つからなくて・・・。
0230デフォルトの名無しさん
NGNG0231デフォルトの名無しさん
NGNGSetPriorityClass
0232名無し~3.EXE
NGNGありがとうございました。
HANDLE hMyProcess;
hMyProcess = GetCurrentProcess();
SetPriorityClass(hMyProcess, 0x00000040);
こんな感じでできますた。
#何か定数を入れてもUndefinedっていわれちったので数字直接書いてますが。。。
0233デフォルトの名無しさん
NGNGBCBのエディタに
GetExitCodeProcessと打つと、
ドライブにディスクがありません。ディスクをドライブ \Device\Harddisk1\DR1に挿入してください。
というダイアログが出て、何もできなくなるんですが、どうしたら良いのでしょうか?
この症状はうちだけなんでしょうか…?
0234233
NGNG再インストールした方が良いんですかねぇ…?
0235デフォルトの名無しさん
NGNGコードエクスプローラー関連だと思うけど。
0236デフォルトの名無しさん
NGNGデータベースから、DBGridにテーブルを表示させ、クリックで選択した部分の情報を取得するには、
どのように記述すればいいでしょうか?教えてください。
それを元に、その情報を含むデータを別のDBGridに表示させたいです。
0237デフォルトの名無しさん
NGNG0238デフォルトの名無しさん
NGNGPDFへの印刷は、プリンタ名にAcrobat Distillerを指定すればよいと思うのですが、
任意の場所(C:\PDF)に任意の名前(TestPDF.pdf)でPDFファイルを出力するには
どのように設定してやればよいのでしょうか?
0239デフォルトの名無しさん
NGNGオプションで指定できる、下記をプログラムから参照するにはどうすれば良いのでしょうか。
会社名/説明/ファイルバージョン/内部名/著作権/商標/正式ファイル名/製品名/製品バージョン/コメント
Versionは5.0です。
0240デフォルトの名無しさん
NGNGおれんところでは再現せず。
Ctrl-Space でコード補完をかけているか、または GetExitCodeProcess の最後で ( を打ったときに
問題が起きるのであれば、とんでもないディレクトリのファイルを見に行っているんだと思う。
リムーバル HD とか使っていなかったかな?
0241デフォルトの名無しさん
NGNGぐぐるのにやたら時間かけるのも疲れちゃって…
0242デフォルトの名無しさん
NGNGあなたが何を覚えてるかによります。
0243デフォルトの名無しさん
NGNG一冊でやろうとするから難しいのでしょう。
C++の本と Delphi本とに別けて探したら?
というか、まずDelphiに慣れてしまう方が楽なのでは?
0244国語が足りない奴
NGNGwindows.hのヘッダファイルを展開してくれません。
「Cannot open file: windows.h」というエラーが出ます。
どうすればいいのですか?
0245デフォルトの名無しさん
NGNG./bin/bcc32.cfgを見直す
0246国語が足りない奴
NGNGbcc32.cfgやilink32.cfgは SETBCC というフリーソフトにまかせました。
bcc32.cfgは
-I"D:\borland\bcc55\include"
-L"D:\borland\bcc55\lib;D:\borland\bcc55\lib\PSDK"
こうなっているんですが両方のパスは合っています。
0248デフォルトの名無しさん
NGNGD3DX(エクステンションライブラリ)を、BCB5から使う
方法はありませんか?
COFF2OMF.EXE はインポートライブラリ専用だと知ってとってもガクーリだ。
0249デフォルトの名無しさん
NGNGそれって、めっちゃ楽じゃない?
0250デフォルトの名無しさん
NGNGGetFileVersionInfo
0251デフォルトの名無しさん
NGNG単体で動かす事はできないのでしょうか?
EXE起動時に「CC3260MT.DLLが見つかりませんでした。」というメッセージが
表示されて実行できないのですが。
0252デフォルトの名無しさん
NGNGオプションのリンカタブにある「共有 RTL DLL を使う」のチェックも外すといいんじゃないかな。
FAQね。
0253デフォルトの名無しさん
NGNG動きました。
0254デフォルトの名無しさん
NGNG0255デフォルトの名無しさん
NGNGもちろん。
0256デフォルトの名無しさん
NGNG0257デフォルトの名無しさん
NGNGあったほうがよい。
0258デフォルトの名無しさん
NGNGDX8ならここから(なんか登録とかいるかもしれないが)
http://www.geocities.com/foetsch/
■ このスレッドは過去ログ倉庫に格納されています