[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/04 19:56 / Filesize : 216 KB / Number-of Response : 976
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

くだすれC++Builder(超初心者用)その4



1 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 09:06:16 ]
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
C++Builder使いが優しくコメントを返しますが、
お礼はC++Builderの布教と初心者の救済をお願いします。

Embarcadero Home Page
www.codegear.com/jp/

<過去スレ>
くだすれC++Builder(超初心者用)
pc8.2ch.net/test/read.cgi/tech/1117225464/l50

くだすれC++Builder(超初心者用)その2
pc10.2ch.net/test/read.cgi/tech/1144308804/l50

くだすれC++Builder(超初心者用)その3
pc11.2ch.net/test/read.cgi/tech/1171219191/

<兄妹スレ>
くだすれDelphi(超初心者用)その50
pc12.2ch.net/test/read.cgi/tech/1246340765/l50


111 名前:デフォルトの名無しさん [2010/02/01(月) 16:38:07 ]
早く教えて

112 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 17:27:06 ]
C++ Builder 2010でZlibを使いたいんですけど
Boostの中にすでに入っているようで
これを使うにはどうしたらいいでしょうか?

113 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 17:58:58 ]
CBuilder では使えません。
必要なファイルが足りないようですね

114 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 15:54:09 ]
112です
Boostのを使えない場合
普通にZlibの最新版をダウンロードして
ソースコードをプロジェクトに加えれば使えるんでしょうか?

115 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 16:01:32 ]
この頃のオープンソースでは CBuilder/BCC 用の設定をつけていない物も多いので
「がんばってください」と言うしかないです。

Delphi 側の実装である zlib ユニットを利用するというてもあると思います。
zlib.hpp をインクルードしてみてください。

116 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 21:46:04 ]
Win32DLL版のzlibと必要なヘッダを落とし
DLLからimplibするだけだろ

117 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 09:11:19 ]
112です
ZlibのDLL版のimplibでうまくいきました
ありがとうございました

118 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 11:24:36 ]
C++Builderのエディタ部分でタブとEnterキーが効かず。スペースが一文字削除になるんですが。
これってどうすれば治りますか?

119 名前:118 mailto:sage [2010/02/08(月) 11:29:22 ]
>>118すいません、とても恥ずかしい理由で治りました。


もう一つ質問させて頂きたいのですが
C++Builder(のソケット)でネットワークプログラミングをする場合、書籍はwinsock2のモノでも
大丈夫でしょうか?



120 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 21:05:35 ]
C++Builderのソケットって何を指していってる?まぁどの方法でもWinSock2で当たりを
つけておく必要があることに変わりはないけど。TServerSocket/TClientSocketは
SMP上のマルチスレッドではうまくいかない、という報告を見たことがあるので注意して。
Indyならマルチスレッド必須(基本ブロッキングなので)。自前で実装するならご自由に。
ICSはよくわからん。

121 名前:デフォルトの名無しさん mailto:sage [2010/02/08(月) 22:14:13 ]
Qt は C++Builder でも使えた?

122 名前:デフォルトの名無しさん [2010/02/10(水) 10:52:00 ]
特定部分をCUDAを使って計算させたいのですが、C++BuilderでCUDAを使うには
どのような設定が必要なのでしょうか?

123 名前:デフォルトの名無しさん mailto:sage [2010/02/10(水) 11:15:52 ]
できません。

124 名前:デフォルトの名無しさん [2010/02/10(水) 12:33:59 ]
できないって、DLLとかでもだめなのかい?

125 名前:デフォルトの名無しさん mailto:sage [2010/02/10(水) 16:49:05 ]
マイナー環境を使ってる者の宿命です。

126 名前:デフォルトの名無しさん [2010/02/10(水) 16:54:11 ]
うるさいだまれぶた

127 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 15:37:10 ]
時間がかかるループ中にプログレスバーを別スレッドで進めたいと思い
ヘルプどおりにTThreadの派生クラスを作りました
Executeの中でForm1->ProgressBar1->StepIt()を呼ぶだけのシンプルな
もので、これ自体が正常に動作することは確認しました

しかし、肝心の時間がかかるループになるとこのスレッドに制御がこないため
プログレスバーが進みません。ループに入る前にnewで作った時に1回よばれ
ループが終わった時にもう1回よばれるだけです。コンストラクタの引数はfalse
にしてあります。Priorityプロパティも変えてみましたけど変わりません。

どうやったらループの中で並行してスレッドが動くようにできるでしょうか?

128 名前:デフォルトの名無しさん [2010/02/12(金) 15:52:49 ]
つーかそれスレッドから呼んだら落ちるんじゃね?
もしくは、落ちなくても正常にアレされなさそう。

void Execute( void )
{
 while( !Terminated ){
  Synchronize( Unko );
  Sleep(1);
 ]
}
void Unko( void )
{
 Form1->ProgressBar1->StepIt();
}

これでどうよ?

129 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 16:09:46 ]
>>128
それもやってみましたけど変わりませんでした

時間がかるループ以外のところでやると正常にプログレスバーは進みます
ループに入るとその間だけ呼ばれなくなります



130 名前:デフォルトの名無しさん [2010/02/12(金) 16:11:35 ]
んじゃむしろそっちのループにSleepいれたらどう?

131 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 16:26:19 ]
それなら直接 StepIt を呼んだ方が効率がいいような気がします

ループの方は細かいループがたくさんよばれるのでそれらに1つ1つStepIt入れるの
がいやでなんとか別スレッドでできないものかと悩んでいます

132 名前:デフォルトの名無しさん [2010/02/12(金) 16:43:13 ]
それCPU負荷100%になってるだろ

133 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 16:50:52 ]
リソースモニターでみると「応答なし」になってます
これが原因でしょうか?

134 名前:デフォルトの名無しさん [2010/02/12(金) 16:56:18 ]
スレッドにSleepを入れるのは当然として
他のループにもいれないとまずいだろ

135 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 17:04:25 ]
ようやく分かってきました
SleepかStepItかProcessMessages
あたりをループの中で呼ぶしかないんですね

ループの部分のソースコードはMacと共有してるんで
あまりやりたくなかったんですけど
#ifdef使って入れてみます

アドバイスありがとうございました

136 名前:デフォルトの名無しさん [2010/02/14(日) 04:21:42 ]
失礼します。
抽象的な質問で申し訳無いのですが、BCB6と2009や2010の互換性ってどのくらいあるのでしょうか?
BCB6で作成したソフトをいじろうと思っているのですが、BCB6の購入は難しいようなので、2010を購入するか悩んでいます。
Unicodeになるなど、100%はありえないのはわかっていますが、コンポーネントの動作等はある程度使える物なのでしょうか?
よろしくお願いします。

137 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 04:33:07 ]
ある程度使える
共通の部分だけ使えば互換性は確保出来る
きっとそのうち萎えると予想

138 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 08:31:16 ]
BCB2010でウェブブラウザ作りたいんですが
TWebBrowserとTCppWebBrowserの違いが分かりません
後者の方はヘルプにも何もでてないし
エンバカデロのサイトを検索しても何もヒットしません
TCppWebBrowserはもう使うなということでしょうか?

139 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 11:32:57 ]
先週末からAboutDelphi の過去ログ検索のリンクが死んでるんですけど
消息とか代替とかご存じの方おられませんか?



140 名前:デフォルトの名無しさん mailto:sage [2010/02/15(月) 22:16:09 ]
Delphi-MLか公式フォーラムか、武内さんが見てそうなところで聞くのが吉かと。
単にサーバが落ちてて気がついていないだけでは?

141 名前:デフォルトの名無しさん [2010/02/16(火) 14:45:47 ]
2010って64ビットに対応してるか?

142 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 14:55:10 ]
してない
64bit正式対応は2011からだぞなもし

143 名前:デフォルトの名無しさん [2010/02/16(火) 15:31:58 ]
まじですか
2011ていつでるんだい?

144 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 15:43:31 ]
今年6〜7月頃じゃねーの?

145 名前:デフォルトの名無しさん [2010/02/16(火) 15:57:28 ]
あ、今年ですか
んじゃそれまで待ってみようかな
ありがとうブタ君

146 名前:デフォルトの名無しさん [2010/02/16(火) 16:02:45 ]
2011はLinux対応 その後改善を2012でやって  64はその後の2013の筈

147 名前:デフォルトの名無しさん [2010/02/16(火) 16:04:05 ]
不完全なくりっくす復活されてもなぁ。

148 名前:デフォルトの名無しさん [2010/02/16(火) 16:09:20 ]
TRichEditで文字属性ごと他のTRichEditにコピーする方法を教えてください

149 名前:デフォルトの名無しさん mailto:sage [2010/02/16(火) 17:08:58 ]
>>136
2007はまだ買えるよ。BCB6はVistaで起動しなかったので慌てて2007にしてコンパイルし直したけど,
比較的苦労せずに済んだ。ただ,いつものことながら2007はパッチ当てないと使い物にならない。
パッチ当てても,時々不可解なことが起こる。何も悪いことしてないのにアプリをExitするとアクセス違反
で落ちたり,アプリケーションアイコンが消えたり...

何とか逃げ道を探して使ってるけどね。



150 名前:136 [2010/02/17(水) 00:59:21 ]
>>137
>>149
ありがとうございます。
普通に想定できる範囲での修正でなんとか出来そうですね。
どうせコンパイルし直すなら、最新にしようかなと。

151 名前:デフォルトの名無しさん mailto:sage [2010/02/17(水) 08:43:41 ]
>>149
Unicodeコンポでつまずいたり、吸収するライブラリとか作ったりされましたか?
これから同じ状況を迎えるのでw

152 名前:デフォルトの名無しさん mailto:sage [2010/02/18(木) 14:42:20 ]
>>149
BCB6はVistaで起動できるようだけど?
ttp://yoshidastyle.net/Blogs/program/2009/02/16/builder6binbcbdro

153 名前:デフォルトの名無しさん [2010/02/18(木) 15:30:43 ]
TRichEditにAddするとキャレットが消えるんだけど
これを表示される方法を教えてください

154 名前:デフォルトの名無しさん [2010/02/18(木) 15:33:52 ]
ちなみにShowCaret( RichEdit->Handle );じゃ表示されませんですた

155 名前:デフォルトの名無しさん mailto:sage [2010/02/19(金) 15:57:45 ]
TListBoxで選択が変わったことを検出したいのですが、

TForm1::TForm1(TComponent* Owner)
{
ListBox1->WindowProc = MyWindowProc;
}

void __fastcall TForm1::MyWindowProc(TMessage &Message)
{
if (Message.Msg == WM_COMMAND) { // 0
if (Message.WParamHi == LBN_SELCHANGE) { // 1
return; // 2
}
}
}

としてみたのですが0の部分までは描画要求などで頻繁によばれますが
セルをクリックして選択を変えたときにはMyWindowProc自体が呼ばれません
(1ではなくて0の部分もよばれない)
なにがいけないんでしょうか?

156 名前:155 mailto:sage [2010/02/19(金) 19:48:48 ]
理由がわかりました
TListBoxはWM_COMMANDを送らないんですね
どうしてもとりたければ派生クラス自分で作れってことですね

157 名前:デフォルトの名無しさん mailto:sage [2010/02/19(金) 21:05:38 ]
>>155
矢印キーによる選択でも、OnClickイベントが発生するけど
解決できない処理なのか

158 名前:デフォルトの名無しさん mailto:sage [2010/02/19(金) 21:15:11 ]
すでに選択されていたものが再びクリックされたのか
選択されていなかったものが新たにクリックされたのか
で処理を切り分けたいんです

159 名前:デフォルトの名無しさん mailto:sage [2010/02/19(金) 22:36:17 ]
>>158
フラグ用の変数を用意して、現在選択している項目と同じ項目を再度クリックされたかを判定する事になると思う。
ListBox->Tagプロパティを使ってなければ、これを使うとお手軽。

別の意味で、1度選択された項目は2度と処理したくない場合は
ListBox->Itemsを使うのはどうか?
Itemsの正体はTStringListである
TStringListは文字列とセットでポインターを1つ保持できる
これがListBox->Items->Objects[index] である
このポインターを収めるところをフラグに使う
NULLはゼロ。NULL以外はアドレスで、アドレスは数値。
だから数値を1個保存すると、NULLと区別できる

void __fastcall TForm1::ListBox1Click(TObject *Sender)
{
TListBox* ListBox = dynamic_cast<TListBox*>(Sender);
int index; AnsiString s;
if (ListBox == NULL) { return; }
index = ListBox->ItemIndex;
if (index < 0) { return; }
if (ListBox->Items->Objects[index] == NULL) {
s.printf("未処理[%d]", index);
// 処理済フラグON
ListBox->Items->Objects[index] =(TObject*) 1;
} else {
s.printf("処理炭[%d]", index);
}
Memo1->Lines->Add(s);
}




160 名前:デフォルトの名無しさん [2010/02/20(土) 14:33:54 ]
2007を使っています。
TRichEditのSelStartは全角の1バイト目を指定したら
SelLengthは自動的に2となって2バイト目を指定したらSelStartは自動で次文字の1バイト目にいってました
それが突然2ならなくなってしまいました。
どこかでプロジェクトのランタイムテーマが無効でこうなるって書いてた気がしたのですが・・・
確かにランタイムテーマのチェックを外してからおかしくなったとおもうのですが
再度これにチェックを入れてコンパイルしても以前の動作にもどってくれません・・
どうしたらもどっれくれますか?

161 名前:デフォルトの名無しさん mailto:sage [2010/02/20(土) 15:09:10 ]
テーマが有効だと、そうなるのですが。
無効にし、かつプロジェクトのあるディレクトリに自動生成されている .res ファイルを
削除してみてください

162 名前:デフォルトの名無しさん [2010/02/20(土) 15:43:05 ]
XPのビジュアルスタイルにするためのマニフェストファイルをリソースに埋込み
brc32でコンパイルしても、コンパイルは正常にできるんですが、スタイルが変わりません
どうしたらいいの?

163 名前:デフォルトの名無しさん [2010/02/20(土) 15:45:45 ]
>>161
できました!!!
でも・・・
res削除するとアイコンが消えて読み込みもできなくなったんですが
これアプリのアイコンはどうやってしていしたらいいでしょうか?

それともう1つ。。。
TRichEditでSelStart=0にして、SelLength=RichEdit->Lines->Text.Length();として
RichEdit->SetAttributes->Color = clRed;として
全文字を赤(色はデフォ以外ならなんでもいいみたい)にしたときに
行間がつまって表示されてしまいます。
更にこの時にSelStartとSelLength位置の色が正常に取得できなくなってしまうのですが
何が原因なのでしょうか?
これは先ほどのテーマがONでもOFFでも現象は同じでした

164 名前:163 [2010/02/22(月) 16:11:12 ]
ちなみに、RichEditのフォントが変わってるような感じがします
フォントはMSゴシックを指定しているのですが
正常な時もおかしいい時もフォント名はMSゴシックだったのですが
おかしい時は文字間が詰まっています(MSPゴシックみたいな感じに)
これTRichEditのバグですか?


165 名前:デフォルトの名無しさん mailto:sage [2010/02/24(水) 16:08:46 ]
Variant::CreateObjectで作成したOLEオブジェクトにある
プロパティの有無を何か検出する方法は無いでしょうか?

本来NULLを返すはずのプロパティがあるのですがどうも
プロパティ名自体が無いようで例外が発生しています
例外処理でひっかけてはいるのですがデバックしている時は
毎度そこで止まるので困っています

166 名前:デフォルトの名無しさん mailto:sage [2010/02/24(水) 17:16:59 ]
デバッグが不便だというなら@Delphi7

例外が出る前の行にブレークポイントを仕掛けて、ブレークポイントの設定→拡張でブレークのチェックをクリア
+この後の例外を無視するにチェック

例外が出る後の行(ry
+この後の例外を処理するにチェック

167 名前:165 mailto:sage [2010/02/25(木) 08:59:24 ]
ブレークポイントで例外を無視ってのに気が付きませんでした
これでずいぶん楽になりました、ありがとうございます

168 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 09:22:08 ]
あ、そんな風に設定するんだ。
設定方法知らなかったので今まで一度も使わなかったorz
IDEとかプロジェクトの設定ダイアログで無視する例外を選んでおくのかと思ってた。

169 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 10:23:20 ]
>IDEとかプロジェクトの設定ダイアログで無視する例外を選んでおくのかと思ってた。
もし適切にフィルタできるなら、ふつうはそちらを使うべきでしょう。

166 のテクニックは、特定の時だけ特定の例外を無視したいときに使います




170 名前:168 mailto:sage [2010/02/25(木) 10:50:10 ]
いや、”特定の例外”ってソースいじる必用があるかもしれないし、例外クラス作ったりしなきゃならないので、
”特定の時だけ”のんが超便利。

171 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 13:30:07 ]
なんだ。しつこいな

ブレークポイントでの操作は IDE 終了したら消えちゃうから、可能なら無視例外を登録するほうが良いでしょう。

もちろんキャッチしたい例外と区別できないと意味がないので、ソースを書き換えなければいけない場合も
あるかと思います。
そこは手間とメリットをはかることになります。
ソースを変更できない(例外クラスを変更できない)場合も多々あるのでそのばあいは
ブレークポイントによる対応と成るでしょうね


172 名前:168 mailto:sage [2010/02/25(木) 13:55:39 ]
いや別に読み流してもらえばおk、だったんだけど。。。

173 名前:デフォルトの名無しさん [2010/02/25(木) 14:29:22 ]
TStringGridで文字列の一部を選択してるとき
TMemoのSelStartとSelLengthみたいにわかる方法を教えてください

174 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 14:52:13 ]
ヒント: TInplaceEdit

175 名前:デフォルトの名無しさん [2010/02/25(木) 14:59:30 ]
StringGridからどやってTInplaceEditにアクセスすんの?
さっさと教えやがってください

176 名前:デフォルトの名無しさん [2010/02/25(木) 15:14:22 ]
できた。
TInplaceEdit *ie = dynamic_cast<TInplaceEdit *>(StringGrid->Components[0]);
確かにこれでOKだったんだけどー
これComponents[0]固定になってるけど大丈夫なの??


177 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 15:56:52 ]
不安ならforで回せば?

178 名前:デフォルトの名無しさん [2010/02/25(木) 17:08:05 ]
>>177
それやってみたんですが、どうやらStringGridのあれは1つしかなかったので
[0]固定でもOKじゃね?みたいな結論になりますた。
将来的にはどうなるかわからないですがばかとりあえず今はこれで大丈夫なので^^

179 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 19:39:45 ]
>>178
dynamic_cast使っているんだから戻り値がNULLだったらインデックス増やすようにすれば良いじゃん



180 名前:デフォルトの名無しさん [2010/02/26(金) 10:16:56 ]
>>179
それちがうだろ
forで回すってことはStringGridのアレカウントが1以上あるってことなんだから
NULLが返らずにTInplaceEdit以外のポインタが来るだろJK
だからインデックスをただ増やすんじゃなくてクラスをチェックせにゃいかん
そうなったら結局forでまわしてアレするのと同じ

181 名前:デフォルトの名無しさん mailto:sage [2010/02/26(金) 19:27:23 ]
>>180
TInplaceEditでdynamic_castしているのにTInplaceEdit *ieにTInplaceEdit以外のポインタが入ることがあるのか?

182 名前:デフォルトの名無しさん mailto:sage [2010/02/27(土) 11:34:27 ]
TEditとその他のコントロールがあるフォームでTEdit以外にフォーカスがある時にキーボードが押されたら
自動的にTEditにフォーカスを移動して文字を入力したいと思い、以下のようにしました。これで正常に動く
のですが、TWebBrowserにフォーカスがあってIMEがオンの時のみ、例えば「ka」を入力すると「kあ」になって
しまいます。他のコントロールの場合はちゃんと変換中の下線付きで「か」になるので悩んでいます。TWebBrowser
に対してフォーカスを離させるような何かの処理が必要なのでしょうか?一応WM_KILLFOCUSを送ってみましたが
変化はありませんでした。

void __fastcall Form1::ApplicationEventsMessage(tagMSG &Msg, bool &Handled)
{
if (Msg.message == WM_KEYDOWN) {
Handled = false;

if (!Edit1->Focused()) {
Edit1->SetFocus();
Msg.hwnd = Edit1->Handle;
}
}
}

183 名前:デフォルトの名無しさん [2010/03/01(月) 09:08:30 ]
182です

どうやらDHTMLのkeydownイベントをフックすればよさそうな気がするんですが
TWebBrowser* からどうやってそのイベントをフックすればいいのか分かりません
documentプロパティでDHTMLオブジェクトにはアクセスできそうですが
そっから先はどうやったらいいんでしょうか?

184 名前:デフォルトの名無しさん mailto:sage [2010/03/01(月) 19:26:01 ]
これからC++はじめようと思っているんですけど
VC++とどちらが人口が多いのでしょうか?
あと、初心者がとっつきやすいのはどちらでしょうか?
仕事じゃなくて趣味でやる程度です

185 名前:デフォルトの名無しさん mailto:sage [2010/03/02(火) 20:51:53 ]
>VC++とどちらが人口が多いのでしょうか?
VC++

>初心者がとっつきやすいのはどちらでしょうか?
C++Builder

186 名前:デフォルトの名無しさん mailto:sage [2010/03/02(火) 20:55:28 ]
C++BuilderはMSみたいに無料配布してないんですね。がっかり。

187 名前:デフォルトの名無しさん mailto:sage [2010/03/02(火) 22:03:20 ]
趣味で無料がいいならC#にしとけ。

188 名前:デフォルトの名無しさん mailto:sage [2010/03/03(水) 00:37:27 ]
>>183
ttp://msdn.microsoft.com/en-us/library/bb508508%28VS.85%29.aspx

189 名前:デフォルトの名無しさん mailto:sage [2010/03/03(水) 03:11:45 ]
VC++の無料はC++/CLIを無理矢理使わされるぞ



190 名前:デフォルトの名無しさん mailto:sage [2010/03/03(水) 09:24:42 ]
趣味で金出したくないなら
Qt Creator

191 名前:デフォルトの名無しさん mailto:sage [2010/03/03(水) 10:35:04 ]
test

192 名前:デフォルトの名無しさん [2010/03/05(金) 17:27:20 ]
TJPEGImageで1920x1080の画像をSaveToFileすると10秒くらいかかってしまうのですが・・・
これって仕方がないのでしょうか?
それと、SaveToFileをしてる間はOSごと固まってしまいます
せめて固まるのはアプリだけにしたいのですがどうしたらいいでしょうか?

193 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 18:20:23 ]
圧縮前の bitmap イメージでも
1920x1080 * 4byte = 8Mbyte 程度か。

少し古い/遅い CPU を使っているとか?

OS/Driver の組み合わせだと、ディスク書き込み中に OS が反応なくなる場合があります。
もし搭載メモリに余裕があるのなら(といってもいまどき 1Gbyte 位は搭載しているだろうけど)
いったん 別のストリームへ SaveToStream で保存し、それから保存してみたら?

それでも OS が固まるなら、少し別の原因か


194 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 04:09:07 ]
BCB6を使用しています。
SSDに載せ替えたので、インストールしなおしたところ、コンパイル時に必ず以下のメッセージが出て止まるようになってしまいました。

Windows - ディスクがありません
Exception Processing Message c0000013 Parameters 764cbf7c 4 764cbf7c 764cbf7c

ググっても常駐ソフトを見直せとかの情報しか無く、困っています。
使用許諾コードは取得してあります。
よろしくお願いします。

195 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 10:51:09 ]
BCB2010でタイプライブラリの使い方を勉強しています
.ridlファイルで基本的な情報を設定すると
xxx_TLB.cpp と xxx_TLB.hができてひな形が作られるらしい
ということはわかったのですが
そっから先にどうすれば実際のインスタンスが作れるのかが
わかりません
どなたか基本的な使い方の手順を教えてもらえないでしょうか?

196 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 12:07:35 ]
>194
c0000013で検索した結果はちゃんと見て追試してそれでも何も問題となるようなものはない、
という状況なの?

>195
コンポーネントとしてインストールしてそれをフォームに貼ればいいんじゃない?

197 名前:デフォルトの名無しさん [2010/03/06(土) 16:55:48 ]
>>193
なんとなく原因がわかりました
BitBlt等にBitmap->Canvas->Handleを渡してビットマップを作るとSaveToFile時に10秒くらいかかるようになってた
これSaveToFileで以前に保存したファイルをLoadFromFileしてからSaveToFileをすると
200msでくらいで終わってたんですが
なんでAPIでアレするとこんなに遅くなりますかね?
しかもOSごとって・・・

198 名前:194 mailto:sage [2010/03/06(土) 19:19:50 ]
>>196
物凄く不安定で、どうしたらいいのやら・・・。
セーフモードで立ち上げた後は動いたりするのですが、しばらくするとまた同じエラーが出たりします。

199 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 19:34:02 ]
そもそも環境的な説明はなしか



200 名前:194 mailto:sage [2010/03/06(土) 20:48:25 ]
環境はXPsp3。
常駐はAntiVirとSpybotとp2proxyくらいです。

201 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 22:15:51 ]
たぶん>>197に対するものだと思うけどな


202 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 10:29:34 ]
>>194
IncludeかLibのパスに存在しない場所が指定されてるんじゃない?
以前作ったプロジェクトファイルには存在した場所がSSD環境では消えているとか


203 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 10:32:37 ]
そのパスがリムーバブルメディアだったら出るみたいだね
再現できた
元FDやCDのドライブ名であたってみてくれ

204 名前:194 mailto:sage [2010/03/07(日) 17:27:07 ]
>>202-203
空のプロジェクトでは発生しなかったので、それっぽいです。
ありがとうございました。

205 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 13:33:54 ]
BCBとVC++のそれぞれの最新版で比べた場合
同じようなアプリを作った場合
実行速度は変わらないでしょうか?

206 名前:デフォルトの名無しさん [2010/03/08(月) 15:56:01 ]
ずっとBCB使ってきてたんだけど
Visual Studio 2010のベータを試してみたら
ポトペタとか簡単にできてBCBとあまり変わらない

BCBの優位ってもうないんでしょうか?

207 名前:999 [2010/03/08(月) 16:46:57 ]
それはC丼だろ。
Visual Studio のC++って相変わらずの原始的レベルだろ。
C丼でいいのならVisual Studio使えばイイじゃん。


208 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 17:04:50 ]
>>207
.NETならば、C++でも、出来の悪いBCBっていう感じだよ

209 名前:999 mailto:sage [2010/03/08(月) 18:57:13 ]
VC++のDialogEditorのことを言っているのかね?
DialogEditorならC++Builderとは根本的に異なる訳だが。
ちがうのかな?




210 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 21:15:53 ]
C++/CLIなんて使い物にならんしな

211 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 22:22:48 ]
>>210
どこがダメなの?
重いの?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<216KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef