トップページ⇒tech
1001コメント292KB

C++Builder相談室 Part17

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/11/08(水) 02:01:27
C++Builderに関する質問・回答や議論等を行う相談室スレッド。

【前スレ】
C++Builder相談室 Part16
http://pc8.2ch.net/test/read.cgi/tech/1138766165/l50

過去スレ・関連サイトは>>2-7あたり。


※Borland C++ Compiler 5.5.1についての質問は以下のスレへ
タダで使えるBorland C++ Part4
http://pc8.2ch.net/test/read.cgi/tech/1091066805/l50
※BDS(Borland Developer Studio)の総合スレはこちら
Borland Developer Studio 2006 No.10
http://pc8.2ch.net/test/read.cgi/tech/1162262669/l50
05775732007/06/04(月) 22:39:07
>>576
ありがトン。
0578デフォルトの名無しさん2007/06/05(火) 02:16:51
Boostを初めて使ってみようと想うのですが、BCBで問題なく使えますか?
(一部機能が使えなかったり、CodeGuardが誤爆したりしませんか
0579デフォルトの名無しさん2007/06/05(火) 02:22:08
>>578
http://engineering.meta-comm.com/boost-regression/CVS-HEAD/developer/

これみて考えろ
0580デフォルトの名無しさん2007/06/05(火) 15:45:32
>569違う
俺も知りたいんだよな、これ・・・
VCLのソースをいじると他の人との互換が無くなるから
仕方なくコントロールのサイズを-1したあとに+1してる
(´;ω;`)なさけねぇ
0581デフォルトの名無しさん2007/06/05(火) 19:34:21
ボタンを縦長に使いたいのですが、captionを縦書きにするにはどうすれば良いのでしょうか
0582デフォルトの名無しさん2007/06/05(火) 20:38:02
VISTA対応のVCLってどんなもんなんだ?
フォームはWPFをラップ?してねえよなあ
0583デフォルトの名無しさん2007/06/05(火) 21:01:29
>578
今日のデベロッパーキャンプでC++Builder 2007でBoostのどれが使えてどれが使えないってのを
David Iがやってたが、現時点では(あるいは2006では)使えるのも使えないのもある、ということだった。
Boostコミュニティで対応状況を公表してるんじゃない?
0584ミ,,゚Д゚彡 ◆A6VzDeLphI 2007/06/05(火) 23:34:16
>>568
>>580

.Perform(CM_RECREATEWND, 0, 0);
では、だめかい?
0585デフォルトの名無しさん2007/06/06(水) 09:22:17
Font->SizeといっしょにCanvas->Font->Sizeも変えりゃいいじゃん。他の設定も変えてるならFontごと代入でもいいし。
ちなみに>>568に答えるなら、ListBoxがWM_DRAWITEMを受け取って、OnDrawItemを呼ぶ前。内部でCanvas->Font = Fontってしてる。
0586デフォルトの名無しさん2007/06/06(水) 18:34:42
>>571
BeforePost
データベースに登録したくないならサイレント例外
0587デフォルトの名無しさん2007/06/06(水) 23:07:12
デベロッパーキャンプも終了したみたいだけど
C++Builder 2007の詳細ってまだなの?
0588デフォルトの名無しさん2007/06/06(水) 23:40:06
つかろくな詳細もないのに買えも何もないよな
0589デフォルトの名無しさん2007/06/06(水) 23:44:26
お布施しろってことでしょ
0590デフォルトの名無しさん2007/06/07(木) 00:01:45
まだsign offされたばっかりだからな。とりあえずこの辺は参考にならない?
ttp://dn.codegear.com/jp/article/36578
0591デフォルトの名無しさん2007/06/07(木) 00:14:17
>>590 さんくす
でも購入のための参考になる記載は皆無だつた
0592Delフサギコ ◆A6VzDeLphI 2007/06/07(木) 00:23:29
ここみて、期待しておくといいんじゃない?
Delphi 2007 for Win32
http://www.codegear.com/jp/products/delphi/win32

C++Builder
http://www.codegear.com/jp/products/cppbuilder
右の画像は、デベロッパーキャンプでは日本語化されてたよ。

           _________
   ∧,,∧   / 
  ミ,,゚Д゚彡 <  まあ、期待しろ
   ミ つ旦)~~ \ って事かと。
 @ミ   ミ     ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   ∪''∪

http://www.codegear.com/jp/downloads/free/cppbuilder
これって、日本語版?C++Builder 2007 Enterprise Trial
05935802007/06/07(木) 13:50:01
>>584
ダメでした
厳密にはListViewのColumsのAutoSizeが反映されないんです;;
0594デフォルトの名無しさん2007/06/08(金) 02:52:28
ようやくBuilder2007の情報が出だしたね。
http://www.codegear.com/jp/products/cppbuilder
に、カタログ・機能一覧・トライアル版が出ている。
今回のBDS2006からの変更点は
・ビルドスピードの改善(最大5倍のスピード)
・Vista対応
・機能がDelphiレベルにだいぶ追いついてきた(UML対応等)
・Indy10対応
こんなところか、そして
・64bitには非対応
・VCLのunicode表示には非対応
BDSの統合環境(最新Delphiを含む)からBuilder単体になってしまって
これで31.5千円ちと高いな。
いちきゅっぱなら即VUPするんだけどな。
まあ自分としては今回は、Update1が出るまでは様子見ですわ。
0595デフォルトの名無しさん2007/06/08(金) 11:01:54
すみません>>570教えてください・・
0596デフォルトの名無しさん2007/06/08(金) 11:06:17
ヒント:取得した後、エンコーディング、Utf8ToAnsi
0597デフォルトの名無しさん2007/06/08(金) 11:10:57
>>586
UpdateSQLで書き込みをしているのでBeforePostイベントが発生しません・・
0598Delフサギコ ◆A6VzDeLphI 2007/06/08(金) 16:01:57

    ∧,,∧  
   ミ,,゚Д゚彡
    ミ つ旦)~~
  〜と,,,~),,~)  旦~~
]]]]]]]]]]]]]]]]]]]]]]]]]]]]

トゲザーは、C++に対しては
UML閲覧だけで
まだソース生成はできないようですよ。

>・64bitには非対応
>・VCLのunicode表示には非対応
開発に、がんばって欲しいですな。
0599デフォルトの名無しさん2007/06/08(金) 18:44:29
>>597
?
TQueryの中身は SELECT系のSQLなんだよね?
それだったらキャッシュアップデートでも BeforePostは発生するよ。
0600デフォルトの名無しさん2007/06/08(金) 19:49:04
>>599
はい、selectです。もういちど見てみます。

それとは別に、
MySQLでQuery->FieldByNameで値を取得すると全角が??になってしまうのですが
これはどうしたらちゃんと取得できるようになりますか?
0601デフォルトの名無しさん2007/06/09(土) 02:45:05
64bitさっさと対応させてくれよー
0602デフォルトの名無しさん2007/06/09(土) 03:18:34
>>594
個人的にはDBX4が気になるがどんなものなんだろう
0603デフォルトの名無しさん2007/06/09(土) 18:14:39
bcc64.exeマダー?
0604デフォルトの名無しさん2007/06/09(土) 22:39:29
>602
プログラム側から見たら全く変わらない。実行速度や実行効率が向上している、ということらしい。
0605デフォルトの名無しさん2007/06/10(日) 22:56:38
> ・VCLのunicode表示には非対応

むー 非対応なのは厳しい。また様子見・・・ かなぁ
0606デフォルトの名無しさん2007/06/11(月) 11:18:02
MySQLでTQueryでフィールドの値をFieldByNameで取得したときに
全角文字が文字化けするのですが、どこを設定すると正常表示されるでしょうか?
0607デフォルトの名無しさん2007/06/12(火) 04:14:18
MySQLに入っている文字のコードはなに?
S-jis以外だと化けるんじゃなかったっけ?
0608デフォルトの名無しさん2007/06/12(火) 11:00:06
MySQL AdiministratorでそのカラムのCharsetをsjisに変更したんですが変わらなかったです
0609デフォルトの名無しさん2007/06/12(火) 11:03:06
DBの中の人はUTF8にしておいて、
構造体→コンポで描画で、
Utf8ToAnsi、および、AnsiToUtf8する方が良いと思うお。
0610デフォルトの名無しさん2007/06/12(火) 16:25:20
>>609
それめちゃくちゃ参考になります!!
しかし・・・・
Utf8ToAnsiとかがありません・・・
BCB5使ってるのですが、どうしたらいいでしょうか?
0611デフォルトの名無しさん2007/06/12(火) 16:40:33
つ BCB6
0612デフォルトの名無しさん2007/06/12(火) 16:51:12
UTF8 > ShiftJISのコードなんてぐぐれば転がってるだろ‥‥
0613デフォルトの名無しさん2007/06/12(火) 17:02:01
すみません。
ちなみにFieldByNameで値を取得すると全角は全て??(0x3F)になっているのですが
変換はどのタイミングで行うのでしょうか?
0614デフォルトの名無しさん2007/06/12(火) 17:06:22
>変換はどのタイミングで行うのでしょうか?

DBに入れる前にUTF8にしとかなきゃ。

で、UTF8は文字のエリアがASCIIコードとなる。全角なんて無い。
0615デフォルトの名無しさん2007/06/12(火) 17:19:55
>>614
すみません、また変なことを言うかもしれませんがご勘弁を・・・
まずソフトの方では書き込みは行わず読み込みのみでして、
MySQL Query Browserでテーブル、カラム、そして値を入れてあります。
その際に値を全角で入れてあるものがあり、MySQL Query Browserで正しく表示されています。
ソフトではTQeryのSQLでselectで取得しFind、NextでぐるぐるまわしてFieldByNameで値をとってるわけなのですが
その時に全角部が??と・・・
0616デフォルトの名無しさん2007/06/12(火) 17:27:10
>その時に全角部が??と・・・

AnsiじゃなくてUnicodeだからじゃね?
とりあえずその取り出したものをファイル出力してワードパッドかエディタで見てみれば?
0617デフォルトの名無しさん2007/06/12(火) 17:30:50
windows vistaで、C++builder6.0って
動くんでしょうか?
0618デフォルトの名無しさん2007/06/12(火) 17:37:55
>>616
??部分の文字コードは0x3Fですでに?に変換されて返ってきています・・・
0619デフォルトの名無しさん2007/06/12(火) 17:45:40
じゃ、バイナリ(Blob)で取るしか無いね。
0620デフォルトの名無しさん2007/06/12(火) 17:51:37
>>619
MySQL側はUTF8のままで変更ができないのでBuilder側で設定になるのですが
その場合はどこを設定するのでしょうか?
0621デフォルトの名無しさん2007/06/12(火) 17:57:48
は?

MySQLの中身はUTF8なの?

なら、
>??部分の文字コードは0x3Fですでに?に変換されて返ってきています・・・
こんなこと発生しない。

UTF8ならAsStringでASCII文字取るだけだから。
0622デフォルトの名無しさん2007/06/12(火) 17:58:37
だから、Unicode絡む案件でBCB使うなって
0623デフォルトの名無しさん2007/06/12(火) 17:59:52
>>622
余計なこと言うな。

MySQL/UTF8ならASCIIの出し入れだから無問題。
0624デフォルトの名無しさん2007/06/12(火) 18:04:10
いつまでも旧バージョンしか使えない会社ってなんなの?
0625デフォルトの名無しさん2007/06/12(火) 18:05:25
>>621-623
それが・・・・
設計時にTQueryのSQLにselectなんとかを書いて項目の設定で全カラムを登録
そのカラムは確かにStringフィールドになっていて半角文字は普通にAsStringで取得し表示されます
しかし、しかし、「山田FC」などと入ってるフィールドの値をFieldByNameで取り込むと
「??FC」となってしまいます・・・
もう泣きそうです・・
0626デフォルトの名無しさん2007/06/12(火) 18:08:31
これひょっとしてBCB6なら普通に表示できちゃったりします?
何か変換する関数も普通にあるみたいだし・・・
BCB5ではダメなのかなあ
0627デフォルトの名無しさん2007/06/12(火) 18:15:10
よくわからないけどDBの中身がUTF-8で
Builderで表示するときはAnsiになるんだから普通は変換しないといけないんじゃ?
そもそもMySQLでUTF-8を使ってるのが問題なのでは?
0628デフォルトの名無しさん2007/06/12(火) 18:18:30
BCB5の問題じゃないお。

>FieldByNameで取り込むと

627にも書かれてるけど、そのままコンポーネントに値渡してる?
ならダメだよ。化けるよ。

上でファイル出力してみろって言ったでしょ?
0629デフォルトの名無しさん2007/06/12(火) 18:18:57
ヒント:WideString
BCB5にもあったよね?
0630デフォルトの名無しさん2007/06/12(火) 18:19:41
WideStringはCOMまわりとかで使用避けられないからあるはず
0631デフォルトの名無しさん2007/06/12(火) 18:20:17
WideStringってUTF8じゃなくて、UTF16(UCS2かな?)じゃなかったっけ?
それならヒントになってないお。
0632デフォルトの名無しさん2007/06/12(火) 18:25:58
わりぃわりぃ。そうだった。

あきらめてBCB2007買えば?
0633デフォルトの名無しさん2007/06/12(火) 18:28:58
WideCharToMultiByte
0634デフォルトの名無しさん2007/06/12(火) 18:30:39
>>627
いえそれは避けては通れないアレでUTF8でなんとかしたいのです
>>628
FieldByNameの戻りをそのままAnsiStringに渡しています。
ちなみに、渡すコンポーネントとは、DBGridとかですか?
ファイル出力はどのタイミングでやればいいですか?
FieldByNameではすでに全角は3Fで返ってきてるので
>>629
WideStringありますね。
でもUTF8はだめですか・・・
0635デフォルトの名無しさん2007/06/12(火) 18:35:07
あ、1つ言い忘れていましたが
C++Builder5にあるデータベースエクスプローラありますよね?
これでも全角文字があるデータをみると??になっているのですよ。
ちなみにTQueryにデータソースをアレしてDBGridで表示してもやはり??です
0636デフォルトの名無しさん2007/06/12(火) 18:41:29
>>634
おまいはばかか。

きいていることに答えろ。

>FieldByNameではすでに全角は3Fで返ってきてるので

これは何で確認したんだ?

デバッガならコンポーネントに渡してるのと同じ。×だぞ。

ファイルに書けと言ってもかかないなら、自分でやれ。さよなら。
0637デフォルトの名無しさん2007/06/12(火) 18:43:28
>データベースエクスプローラありますよね?
>TQueryにデータソースをアレしてDBGridで表示してもやはり??です

 ↑
両方ともUtf8文字をAnsi(日本語WinではシフトJISね)で表示しようとしているので、
??と化けるのが正しい。
化けなきゃおかしい。
0638デフォルトの名無しさん2007/06/12(火) 18:55:37
>>636
コードの確認はインスペクトして確認しました。
ファイルの書くのはいいけど何をですかね?
FieldByNameの戻りをAnsiStringで受け取ってそれをファイルにってことですか?
>>637
はい、このままだと化けるのはわかっているので、化けない方法を尋ねています
0639デフォルトの名無しさん2007/06/12(火) 18:58:21
>FieldByNameの戻りをAnsiStringで受け取ってそれをファイルにってことですか?

その通り。

>はい、このままだと化けるのはわかっているので、化けない方法を尋ねています

Utf8ToAnsi以外に解決策は無い。
0640デフォルトの名無しさん2007/06/12(火) 19:03:52
>>639
なるほど、ありがとうございます。
まずはファイルに出力してみてコードを確認してみます!!
0641デフォルトの名無しさん2007/06/12(火) 19:29:04
できたとしても、酷いソースになりそうだな
なんつーか
0642デフォルトの名無しさん2007/06/12(火) 19:32:29
そうでもないよ。

ドキュメントクラスまではUTF8。
描画のタイミングでUtf8ToAnsiするだけ。
0643デフォルトの名無しさん2007/06/12(火) 19:34:58
なんだ、コード系とかまったく理解していないで化けるって言ってただけかよ。
0644デフォルトの名無しさん2007/06/12(火) 19:43:47
わからないから聞いてるんじゃないんですか。
理解してたら聞く必要はないとおもうんだけど。
0645デフォルトの名無しさん2007/06/12(火) 20:19:46
このスレにはBCB5でUTF-8の詳しい使い方の説明が出来る技術者がいないと考えるんだ!
0646デフォルトの名無しさん2007/06/12(火) 20:29:01
Borland C++Builder5  2000/03/29発売
7年3ヶ月15日前の製品
さすがに使っている人はもうわずかでしょ。
それともBorland C++Builder6以降はあれが入ったから、5を使い続けている人も多いのかな。
0647デフォルトの名無しさん2007/06/12(火) 21:21:03
(´・ω・`) ショボーン
ちなみに、PHPでも読んでみたんですが同じ結果に・・・
mb_detect_encodingするとASCIIと返ってきて・・・
mb_convert_encodingしてもやっぱり??と・・・
なんで?なんで?なんでえええええええええええええええええええええええ
なんかそれ以前の問題のような気がしまが・・・・
ODBC経由ですがODBCのDSNで何か設定とかあるのかなあ
0648デフォルトの名無しさん2007/06/12(火) 22:00:05
>>647
リアル阿呆か
みんなが親切に教えてあげているのにそれは完全虫かよ。
それとも何も理解できていないのか?
化けるのは当たり前じゃん。

0649デフォルトの名無しさん2007/06/12(火) 22:13:05
だから、BCB5なんて使うな、といっておろうが
0650デフォルトの名無しさん2007/06/12(火) 23:29:42
>>648
知らないならレスしないで。
お前みたいに煽ることしかしない馬鹿がいるから荒れるんだって
0651デフォルトの名無しさん2007/06/13(水) 01:17:27
>>650 頭悪すぎ
0652デフォルトの名無しさん2007/06/13(水) 01:28:43
>>647はコード系というものを理解していないに1000ナナコ
0653デフォルトの名無しさん2007/06/13(水) 01:36:45
かもね。だからファイルに保存すれという意味がまったく理解できないのか。
0654デフォルトの名無しさん2007/06/13(水) 01:52:43
根本的に化ける理由をまったく理解していないから>>647のようなピントの外れた書き込みをしているんだろ。
おまいらもっと親切に教えてやれよ。
0655デフォルトの名無しさん2007/06/13(水) 01:54:20
教える気がないならいじらずスルー
0656デフォルトの名無しさん2007/06/13(水) 09:25:31
質問するのは良い姿勢だけど、回答をとりあえずは素直に一度やってみることができないヤシは論外だね。
0657デフォルトの名無しさん2007/06/13(水) 10:05:55
はいはい、昨日の基地外ですよ。

はっきり言って全く変わってない。?のまま。
ファイルに保存とか、はぁ?とか思いながらやってみたけど当然?にしかなっておらず。
何故にインスペクトした値が信用できないとか出てくるのかが謎

んで、皆が言うUtf8ToAnsiを使うべくBuilder6をインスコしてみたがやはり結果は同じく?になる。
使い方はこんな感じで、
String buf = Utf8ToAnsi(Query1->FieldByName( NAME )->AsString);
これ使い方間違ってる??

コード系を理解している人が山ほどいるみたいだから意見を聞きたいですね。
どうせ煽りしかしてこないんだろうけど
0658デフォルトの名無しさん2007/06/13(水) 10:20:31
>>657
おまえマジに人間のクズだな
荒れているのはお前の人間性が最悪だからだぞ
0659デフォルトの名無しさん2007/06/13(水) 10:22:43
お前も大差ないからいい加減にしとけ
0660デフォルトの名無しさん2007/06/13(水) 10:24:26
お前もな
0661デフォルトの名無しさん2007/06/13(水) 10:25:13
>ファイルに保存とか、はぁ?とか思いながらやってみたけど当然?にしかなっておらず。

意見を言うと、エディタでエンコード変えていくと見えるエンコードが特定できるはず。

とりあえず、はぁ?、と思うな!!!!!
0662デフォルトの名無しさん2007/06/13(水) 10:26:07
>ファイルに保存とか、はぁ?とか思いながらやってみたけど当然?にしかなっておらず。

もう一つ意見を言うと、バイナリエディタで開いて、実コード書いてみ?
どういう障害かはハッキリするから。
0663デフォルトの名無しさん2007/06/13(水) 10:27:26
>String buf = Utf8ToAnsi(Query1->FieldByName( NAME )->AsString);
>これ使い方間違ってる??
>コード系を理解している人が山ほどいるみたいだから意見を聞きたいですね。

意見:あってる。
実際にこれで業務やってる。Firebirdだけど。でもテスト用にMySQL/ODBCでもやったことあるが、動作する。
0664デフォルトの名無しさん2007/06/13(水) 11:00:29
で、出けたあああああああああああああああああああああああああああああ!!!

>>661
だからとりあえず一応ファイルに出力したんですよ。
まだまだ自分の知らない事もあるだろうし、そういう情報はちゃんと実行してますよ!
>>662
当然バイナリエディタでみました、ファイルもコードみるからバイナリでかいたからね。
>>663
ですよね。


結論からいうとBCB5でさっくりできちゃいました^^
今回の問題はやはりBCBうんぬんとかコード系うんぬんとか以前の問題でした。
コード系ってさわいでた人達はわけわからずそう言ってただけと判明

ここ全く役に立たなかったしとんちんかんな回答しか得られなかったけど
おまいらの意見は今後の参考になるかもしれないので乙
0665デフォルトの名無しさん2007/06/13(水) 11:14:32
なんだこいつ・・・・
ここまで騒いだなら原因書けばいいのに
0666デフォルトの名無しさん2007/06/13(水) 11:14:59
>>664
だからおまいはみんなからバカだって言われるんだよ。
まったく問題の本質を理解していない。
問題の根本原因の切り分け作業の意味というものがまったく理解できていない。
ここにいる人間はエスパーや予言者じゃねえんだよ、阿呆。
0667デフォルトの名無しさん2007/06/13(水) 11:19:08
どうせODBCの設定かDBの設定をちょんぼってただけだろ。
単純ミスだから原因書かないで逃げたんだろ。
0668デフォルトの名無しさん2007/06/13(水) 11:45:16
もう終らせればいいじゃん、消えたのにくだぐだと
0669デフォルトの名無しさん2007/06/13(水) 12:58:23
俺はロムってただけだけどプログラマにこんなヤツがいるなんて正直ガッカリ
0670デフォルトの名無しさん2007/06/13(水) 13:16:40
逆に考えるんだ。

マはこんなヤツばっかり。
0671デフォルトの名無しさん2007/06/13(水) 14:44:19
静的リンクついて質問です。
libファイルをプロジェクトに追加をして、コンパイルできました。
dllファイルをexeファイルと同じフォルダから、削除すると
実行時に「dllファイルが見つかりませんでした」というメッセージが出て
良い好できなくなりました。

静的リンクは、dllファイルが必要なくなるですよね?
libファイルをプロジェクトに追加するのは静的リンクですよね。
やり方がおかしいのでしょうか?
06726712007/06/13(水) 14:47:07
日本語変ですみません。
訂正お願いします。
良い好->実行
0673デフォルトの名無しさん2007/06/13(水) 14:50:13
>静的リンクは、dllファイルが必要なくなるですよね?

そうです。

>libファイルをプロジェクトに追加するのは静的リンクですよね。

libファイルの中の人がimport宣言だけ、といった場合もあるので、100%そうとも言えません。

>やり方がおかしいのでしょうか?

やはりそうですよね。
06746712007/06/13(水) 15:20:04
>>673
>libファイルの中の人がimport宣言だけ、といった場合もあるので、100%そうとも言えません。
解決できそうです。
どうもありがとうございました。
0675デフォルトの名無しさん2007/06/13(水) 20:26:59
ちなみに既製のDLLからスタティックリンクライブラリは普通作れないぞ
implibが生成するのはインポートライブラリのみ。
0676デフォルトの名無しさん2007/06/13(水) 21:18:58
6でapacheで動くwebアプリを作ってみようとおもってテスト的に作ってみたのですが
これヘルプに書いてある通りにhttpd.confファイルをいじったのですが動きません
ブラウザではhttp://localhost/project でいいのでしょうか?
それとこの辺について書いてるサイトがあれば教えてほしいです
■ このスレッドは過去ログ倉庫に格納されています