1 :
デフォルトの名無しさん :
04/11/01 01:08:56 C++Builderに関する質問・回答や議論等を行う相談室スレッド。
過去スレ・関連サイトは
>>2-6 あたり。
うんこ
12 :
デフォルトの名無しさん :04/11/01 01:48:54
スレタイは 【VC++】C++Builder相談室Part12【挫折組みw】 じゃなかったの?w
昔はVCよりもBCの方が出来が良かった だけど今はVCが追い越したのでVCを使っている
VCLはほとんどがスレッドセーフじゃないのが致命的
C++Builder6で開発しています。 多分全てのダイアログ制御で関連してると思うんですが、 親Formから子Formをモードレスで表示[form->Show()]して 子Formから孫Formをモーダルで表示[form->ShowModal()] すると、孫Form出した瞬間に、親Formがアクティブに出来ない (操作できない。)のはWindowsシステムの仕様なんでしょうか? なんとなく、子Formの孫Formなのだから、親Formはアクティブでも 良いような気が・・・。 回避の方法とかご存知の方があればお願いします。
16 :
デフォルトの名無しさん :04/11/01 21:21:08
C++Builder5で簡単なアプリケーションを作成中です。 物はUUSBD(柏野政弘氏)を使用してUSBによるデータの送受信を行う仕様。 UUSBD.LIBが正しく認識出来ないのか、 #pragma link "uusbd.lib" とすると [リンカエラー]' 〜略〜 \UUSBD.LIB' contains invalid OMF record, type 0x21(possibly COFF) が出てしまいます。 基本的にUUSBD.DLLはWin32の標準的なDLLなので、 "UUSBD.H"をincludeし上記LIBファイルをリンク すれば簡単に使えるのかと思ってました。 私の考えに間違いがあると思うのですが、 何かがわかりません。ご存知に方にご教授願えれば 助かります。 よろしくお願いします。
17 :
デフォルトの名無しさん :04/11/01 21:25:23
BCB = ガソリンスタンド VC++ = ギニュー特戦隊 BCC = 清原 MFC = ケンシロウ VCL = ビヒダスヨーグルト
>>16 IMPLIB使って、BCB用のLib作ればできると思うよ。
ちなみにリンカーエラーの内容は 「 オブジェクトファイルが壊れているか,またはOMEオブジェクトファイルではありません。 COFFインポートライブラリをリンクする場合は,BINディレクトリにある COFF2OMF.EXE ユーティリティを実行してください。 」
>>18 レスありがとうございます。
IMPLIBについての説明をヘルプで見ましたが、
実際どこで実行させればよろしいのでしょうか?
>>21 UUSBDをどこかにコピーする
その後コマンドプロンプトで
D:\どこか>IMPLIB UUSBD.LIB UUSBD.DLL
あるいは
>>19 のメッセージの通りにCOFF2OMFを使うのもいいかもしれない。
>>23 ヘイ
ググってみたらわかりました。
で、早速ハンドルの取得を行うと
結果は NULL
USBが認識されてない時は0xFFFFFFFFで
確かに、UUSBD.DLLはインストールされているようにも思われるのですが、
答えがNULLな訳は無いですよね。オプションがイクナイのかなぁ。
>>24 一度トライはしてみたのですが、今思うと考え方が間違っていたかも。
このコマンドはCOFFファイル(.OBJかな)を作成するものだとすると、
当方、生成するファイルの拡張子を.LIBにしてリンクしてました。
何か訳わからん状態になってきました。少し落ち着きます。
>>25 は変です
>>23 ヘイ
ググってみたらわかりました。
で、早速ハンドルの取得を行うと
結果は NULL
タゲUSBがインストールされてない時は0xFFFFFFFFなので
UUSBD.DLLはインストール状態では、確かに確認されているように
思われます。
それなにの答えがNULLな訳は無いですよね。
オプションがイクナイのかなぁ。
>>20 いまだに続編が出てるのかw
BCB9が出さえすれば商売になると踏んでるのかな?
>>16 っLoadLibrary()
GetProcAddress()
FreeLibrary()
30 :
デフォルトの名無しさん :04/11/02 01:36:08
なぜにこんなに無意味にバイナリがデカいんですか? ったく使えねーなVCL
バイナリなんか大きくたって構わない。 開発期間を短縮して人月低くする方がはるかに重要。
32 :
デフォルトの名無しさん :04/11/02 02:01:22
開発期間を短縮できるならな
33 :
デフォルトの名無しさん :04/11/02 02:12:24
開発期間を短縮できても運用後のメンテナンスコストが下がらなければ 結局トータルでは安くなったことにはならない。 もっと大局的に考えよう。
34 :
デフォルトの名無しさん :04/11/02 02:18:27
BCBでは下がらないと言いたげですねw
その通りだ Delphiもそう VBもそう Ruby最高!!
最強はRubyでwxRuby。 間違いない。
書き込むスレを間違えてる
>>35 >>37 を回収に来ました
∧∧ ∧∧
< > < >
(==\(`Д´)テ==)手間かけさせんじゃねえ!
>λ )( ) | i 丿
○ ( ) O人O ( )
∫ ∫
∫ ∫ズルズル
>>28 ありがとうございます。
**** USBD.DLL *****
→ uusbd.hの中身(include済み)
HUSB APIENTRY Uusbd_Open(void);
**** sorce ****
HANDLE hDll = LoadLibrary( "USBD.DLL" );
FARPROC _Uusbd_Open = GetProcAddress( hDll, "Uusbd_Open" );
HUSB hUsb = (*_Uusbd_Open)();
FreeLibrary( hDll );
とすると、
"HUSB hUsb = (*_Uusbd_Open)();"
に対して
エラー:'int'型は'void *'型に変換できない
と言われてしまいます。不具合な点はあるのでしょうか?
また、ここでAPIENTRYっていったいなんでしょうか?
GetProcAddress() のプロトタイプがないから戻り値がintとみなされている ヘッダのインクルードし忘れでは
typedef HUSB (APIENTRY *UUSBD_OPEN)(void); //略 UUSBD_OPEN pUusbd_Open = (UUSBD_OPEN)GetProcAddress(hDll, "Uunsbd_Open"); HUSB jUsb = pUusbd_Open(); //略 >>APIENTRY 呼び出し規約
. ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄
(;´Д`)< すいませんすぐ片付けますんで。
-=≡ / ヽ \_______
. /| | |. |
-=≡ /. \ヽ/\\_
/ ヽ⌒)==ヽ_)= ∧_∧
-= / /⌒\.\ || || (´・ω・`) ←
>>35-38 / / > ) || || ( つ旦O
/ / / /_||_ || と_)_) _.
し' (_つ ̄(_)) ̄ (.)) ̄ (_)) ̄(.))
>>40 "winbase.h"のインクルードはしてます。
>>41 試したのですが、何やらエラーが沢山。
typedef HUSB (APIENTRY *UUSBD_OPEN)(void);
に対して
[C++エラー]:E2257 ,が必要
等々
現在解析中です。
記し忘れです。
レスなさっていただいた
>>40-41 ありがとうございます。
LoadLibraryの戻り値はHANDLEじゃなくてHMODULEだぞ
46 :
デフォルトの名無しさん :04/11/02 14:21:38
('д`)えー
>>45 ある本には
戻り値 HANDLE:成功した時はロードされたライブラリのモジュール(ry
と書いてあります。
また忘れた・・・
>>45 レスありがとうございます。
半からメンテかよ…今入れたところなのに。
うはw誤爆
いやーごめんなさいです。
>>25-26 でNULLな訳無いと言い切ったのですが、
NULLで良かったみたいです。お騒がせしました。
よって、今じゃ通信が開始・・・までは逝って
ませんが、とりあえずUSBのハンドル取得は出来ました。
手法は”IMPLIB”方式で凌ぎました。
みなさんありがとうございました。
また何か不明な点がありましたら顔を出します。
それまでPOMです。では
( ゚д゚)ポカーン
>>54 とりあえずリンカのバージョンが5.66でなければ5.66にしてみれ
ilink32 のバージョンは 5.66 ざんす。 でも、ダメなの。
59 :
デフォルトの名無しさん :04/11/04 01:17:43
任意の文字列を再変換したいんですけど、 うまくできません。 というより、どうすれば良いのかよくわかりません。 とりあえず、ImmSetCompositionString()を使うって ところまではわかったのですが…。 実際これを使ってどうすれば良いのでしょう?
それスレ違いだろ
>>60 C++Builderを使ってたので何も考えずこのスレに書き込んでしまいました…。
すいません。
>>61 ありがとうございます。
でも、これは確認済みというか…未確定文字列を変換する方法なんですよね。
自分がやりたいのは確定文字列を再変換する方法なわけで…。
「メモ帳」で任意の確定文字列を選択して右クリックすると
「再変換」できるんですが、あれと同じ事をしたいんです。
>>55 ありがとうございます?
というか、そうゆうことなので、出来ないという決着が付きました。
ヽ(`Д´)ノウワァァン!!
Delphi Developers Day 2004に行ってきました 米ボーランドの偉い人が2人講演しました。その中で、 C++ Builderについてちょっとだけコメント。 Delphi 2005ではC# Builderも使える(DelphiのIDE内に統合) ようになったが、BCBについても同じ事が可能かどうか現在 調査中。その結論を12月15日までに決めて発表する予定 だそうです。 発表が楽しみですね…
65 :
デフォルトの名無しさん :04/11/06 00:45:31
ポトペタw
67 :
デフォルトの名無しさん :04/11/06 02:17:04
ポトペタじゃきゃかけない人w
ポトペタで充分。 自動点火のコンロがあるのに 毎回毎回マッチで火をつけることを好む変態の気持ちはわからない。
ってかUIの実装に時間かけるの馬鹿らしいやん。 開発の焦点はあくまで問題領域にあるわけで。 無論UIのデザインには大いに注力するよ。 でもデザインが決まればあとはポトペタで上等。
70 :
デフォルトの名無しさん :04/11/06 02:55:06
あなたの言う問題領域というところは客先から難癖がつくことはまずない 見えないから・・・。 けど、UIの変更は日常茶飯事。 結局、BCBでも既存のコンポーネントじゃ実用には耐えれないから1から 書くはめになることがほとんど。その際Delphiが分からないとロクなコンポは かけない。
71 :
デフォルトの名無しさん :04/11/06 03:04:31
ポトペタで うまくハマらず ブチ切れる
>その際Delphiが分からないとロクなコンポはかけない。 ??????????
>>70 > けど、UIの変更は日常茶飯事。
可哀想な仕事ぶりですね
あなたの人生の二度と返らない大切な時間、浪費もいいところですねw
BCB5で#pragma messageを使ってIDEにメッセージを表示しているんですが、 その表示された行をダブルクリックしてもソースの位置にジャンプしてくれません。 何か方法ありませんか?
76 :
デフォルトの名無しさん :04/11/06 11:27:10
クライアントのいいなりになるばかりで提案できない無能なSE/PGのいるスレはここですか
あなたが一人目です
ポトペタがダメという方は何が気に入らないのでしょうか。 私は計測器を使った測定アプリをBCB6で作成しておりますが 簡単なものなら1から作っても10分位でできてしまうので重宝しております。 VC++だとこうはいかないのではないでしょうか。
いや、それでいいんだよ。SE/PGを大別二分すると 問題領域担当 = ホワイトカラー UI担当 = ブルカラ
言語作成…ホワイト 言語を使用して何か作成…ブルー
81 :
デフォルトの名無しさん :04/11/06 16:22:30
マルチモニターでSaveDialogがフォームとは別のモニターに出てきてしまうのですが、 何とかする方法しりませんか?
82 :
デフォルトの名無しさん :04/11/06 16:47:13
VCLでUnicodeアプリは作れますか?
83 :
デフォルトの名無しさん :04/11/06 16:50:27
>>83 まじですか?BCB5 で作る方法教えてください!
(いままでできないと思ってた。。。)
すみません質問です。 TreeView1->Items->Add(NULL, "hoge"); ListBox1->AddItem("Nodes1", TreeView1->Items); TreeView1->Items = new TTreeNodes(TreeView1); TreeView1->Items->Add(NULL, "hige"); ListBox1->AddItem("Nodes2", TreeView1->Items); とこんな感じでTTreeNodesを別リストに保存しておき、 その保存してあるノードをTreeView->Itemsに代入してItemsを簡単に切り替えられるようにしたいのですが、 これでやるとItemsに代入した時点でもとのItemsが解放されるらしくうまくできません。 こういうのは別形式で保存していちいちクリア->追加で切り替えるしかないんでしょうか…
オブジェクトインスペクターみたいなのを実装しようとした場合に、なにをつかっていますか? 自分は、PropGridをかなりいじって使わせていただいているのですが。
>>86 一番簡単な手は、複数のTTreeVewを用意して表示・非表示を切り替える。
90 :
デフォルトの名無しさん :04/11/08 06:01:16
最小化ボタンを押した時に、タスクトレイに入れる方法を教えてください
92 :
デフォルトの名無しさん :04/11/08 15:14:16
TChartでTLineSeriesの追加方法を教えてください
Chart の編集画面を出して、 系列ペインにして、 追加ボタンを押す
94 :
デフォルトの名無しさん :04/11/08 19:00:20
いやいやいや、設計時じゃなくて実行時にプログラムでなんですけどおおおおおおおおおおおおおおおおおおおおおおおおおおおおおお
var MyChart : TChart; MyChart := TChart.Create( Self ); MyChart.Parent := Self; MyChart.Left := 100; MyChart.Top := 50; MyChart.Show; You can also add series to a Chart using code: MyChart.AddSeries( TBarSeries.Create( Self ) ); or... MyChart.AddSeries( TLineSeries ); or... var P : TPieSeries; P := TPieSeries.Create( Self ); P.ParentChart := MyChart;
>>94 ググったらいっぱい出てきたぞ
TLineSeries *s = new TLineSeries(Chart1);
s->AddY(1,"1",clWhite);
s->AddY(2,"2",clWhite);
Chart1->AddSeries(s);
ごめん、いっぱいは出てきてなかった
>>95 でるふぁいですかありがとう
>>96 s->Addでシリーズ2つになってます?
シリーズを追加するんはChart1->AddSeriesでやるんですかね?
必要なぶんだけnewしてあれするくぁwせdrftgyふじこlでFAですか?
>>98 何を言いたいのか分からん。
シリーズ二つ?
100 :
デフォルトの名無しさん :04/11/09 16:08:48
C++ Mobile Edition for C++ BUILDER(6) で、Windows Mobile 2003 SE アプリがポトペタ開発出来まつか?
101 :
100 :04/11/09 16:45:56
インストールしましたが、Symbianですた。 Symbian OS C++ プログラミング はポトペタ開発でつか?
102 :
デフォルトの名無しさん :04/11/09 17:28:56
ネットワーク関係を扱う場合indyの方がいいのですか
はい。
104 :
デフォルトの名無しさん :04/11/09 19:45:10
TFormのウィンドウのタイトルバーの「×」ボタンを押してウィンドウがCloseされたのか、判断する手はありますか? 他に、右ポップアップメニューの閉じるなのか、とか。
105 :
age :04/11/10 12:29:20
Symbianは将来有望OSでつか?
107 :
age :04/11/10 13:59:13
>>104 A) ×ボタンをクリックする
B) タイトルバーのメニューから「閉じる」を選ぶ
C) ALT + F4 キーを押す
で、A,B と C との区別はできるけど、AとBとの区別はできないと思う。
ではどのMobile OSが有望でつか? やっぱXP?
111 :
本田 :04/11/10 18:47:57
>>85 これをBCBにどうやってインストールすればいいですか?
113 :
デフォルトの名無しさん :04/11/12 14:27:49
TMenuItemにHintプロパティがあるんですがShowHintはありません。 PopupMenuにヒントを表示する方法を教えてください
class PopupMenu : public TMenuItem {};
115 :
デフォルトの名無しさん :04/11/12 15:34:05
それをどこかに記述すればいいですか?
>>115 114は、TMenuItemをポップアップメニューに代用しなさいという意味でつが。
ColnEditをコメントアウトして、StrEditをStrEditD4にして、 TVirtualTreeEditor.Editのところをコメントアウトしたらでけた Edit使わなければ大丈夫かな・・・?
うほっ!いいチンポ
質問です。 BCB4でShapeをドラッグして動かしたいのですがうまくいきません。 過去ログ漁って TDragControlObjectからTMyDragObjectクラスを派生、 OnStartDragでDragObject=new TMyDragObject((TShape*)Sender) まではできたのですが、肝心のイベントの処理がうまくできません。 ご教示よろしくお願いします。
>>120 Shape って TShape か?
D&D 使わずに、OnMouseUp/Down と OnMouseMove で
コード書いたほうが簡単じゃね?
122 :
デフォルトの名無しさん :04/11/15 13:35:40
AnsiString buff[2][2]; このbuffを作った関数に渡したいのですが、受け取り側の関数の記述を教えてください
>>122 void func(AnsiString (*buff)[2]);
か
void func(AnsiString buff[][2]);
じゃないのん?
>>123 ありがとうございます。確かにできました。
これにStringGrid->Cellsを渡す場合は受け側はどう記述したらいいでしょうか?
>>124 そいつは多分配列演算子のオーバーロードだから普通の配列とは違う。
一個ずつAnsiStringで渡すしかないのでは?
>>125 ありがとうございます。
確かに上記の関数に渡そうとするとコンパイルエラーがでました。
普通の配列じゃなかったんですねこれ。
>>126 どうしてもしたいのであれば、
void func(TStringGrid& tg);
として関数内で tg[][] とアクセスするかだなあ。
ちごた。 tg.Cells[][]ね。
>>127-128 StringGrid自体を引数にとるってことですね、そういえばそんな方法もありますね
ありがとうございます。
>>129 とりあえずヘルプに書いてある宣言はちゃんと読んどけと
__property AnsiString Cells[int ACol][int ARow] = {read=GetCells, write=SetCells};
↑見れば通常の二次元配列じゃないのはわかるわけだし。
131 :
デフォルトの名無しさん :04/11/15 15:19:32
>>130 お前には聞いてませんので余計なレスしないでくださいそしてしんでくださいうざいですばか
>>121 ありがとうございます、解決できました。
どうやら回りくどいことをしていたようでした。
133 :
デフォルトの名無しさん :04/11/16 10:40:59
2つ質問があります。 1.RichEdit画面にフォーカスが移ったときカーソルが表示されていない時が有ります。 この場合RichEdit画面をマウスでクリックするとカーソルは表示されますが、フォーカスが移ったとき必ずカーソルを表示するにはどうすれば良いのでしょうか? 2.RichEdit画面のEnabledプロパティをfalseにしてもアプリケーション側から書き込みは出来ているのですが、この場合もカーソルを表示したいのですがどうすれば良いのでしょうか?
134 :
卒研者 :04/11/16 15:49:19
BuilderでTIFF形式をBMPに変換するのはどうやってするの? あと、ソースを公開してるこういうフリーウェアってありますか?
前paintlibっての使ってたなー。
137 :
卒研者 :04/11/17 15:44:25
マジレス。そこまで手抜きしてまで社会に出ない方がいい。
職場で
>>137 のようなことを言ってたら1週間で席がなくなる。
139 :
卒研者2 :04/11/17 16:19:45
質問です。 WinXPSP1、C++Builder 6.0でコンポーネントをインストール後に、 コンパイルしようとすると必ず bcb.exe Assertion failed: segType <= 0x60, file C:\src\ilink\import.cpp, line 1730 と出て、コンパイルがとおりません。 しかしC:\src\ilink\import.cppというパスはおろか、 そのファイルも存在しません。 これは一体どういうことでしょうか?
140 :
卒研者 :04/11/17 16:23:15
141 :
デフォルトの名無しさん :04/11/17 17:02:45
Stringにバイナリデータが入っていますが、 これを一番簡単にファイル出力(ファイルダンプ?)する方法、 教えて下さいでつ。
142 :
デフォルトの名無しさん :04/11/17 17:31:15
>>141 「一番簡単」かどうかは知らんけど
普通にfopen()してfwrite()じゃ駄目なの?
VCLなら
TFileStreamのインスタンスを作成
TFileStream::Write()でバイナリを書き込む
とか
TMemoryStreamのインスタンスを作成
TMemoryStream::Write()でバイナリを書き込む
TMemoryStream::SaveToFile()で保存
で
TMemoryStreamにしてみますでつ。
144 :
デフォルトの名無しさん :04/11/17 21:05:14
145 :
デフォルトの名無しさん :04/11/17 22:00:00
9. C/C++の他に、どのような言語を使用してアプリケーション開発を行っていますか?(複数回答可) アセンブリ言語 COBOL C# Delphi/Pascal Eiffel Fortran Java JavaScript Lisp/Scheme Microsoft managed C++ Perl PHP Prolog Python Objective-C Ruby SmallTalk VisualBasic VB.Net その他
アンケート応えたけど、欲しくなるようなグッズが... 某靴下なんてヲタクの極致。
抽選で1名様にC++Builder9(出荷未定)をプレゼントにしてくれ。
148 :
デフォルトの名無しさん :04/11/18 11:52:53
人柱はごめんこうむる
むしろC++Builder7で
150 :
デフォルトの名無しさん :04/11/18 15:38:30
TStringGridでセルが編集されたかどうかを調べる方法を教えてください
151 :
デフォルトの名無しさん :04/11/18 15:48:26
__fastcallをつけない方がいいのはどういう時ですか?
153 :
本田 :04/11/19 03:11:27
>>151 MFC、OWLやその他、VCLがからまないとき。
154 :
デフォルトの名無しさん :04/11/19 14:57:57
try{ try{ ・・・ return 1; } catch(...){} } __finally{ } 上記のコードでreturn 1;で抜けた場合に__finallyに入ってくれないのですが なんか記述間違ってますか?それともそういう仕様ですか?
155 :
タヌキ :04/11/19 14:59:55
叩きも煽りもしないでスルーします
157 :
age :04/11/19 16:35:57
そーいう仕様では?
158 :
age :04/11/19 16:39:25
こう書くべきでは? //--------------------------------------------------------------------------- void __fastcall TForm1::test(int& retval) { try { try { retval = 1; } catch(...) { retval = 2; } } __finally { ShowMessage("come"); retval = 3; } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { int retval = 0; test(retval); ShowMessage(IntToStr(retval)); } //---------------------------------------------------------------------------
159 :
デフォルトの名無しさん :04/11/19 16:48:02
>>158 try内でreturnは反則ですか?
例えば上記の例でtry内のretval = 1;の下の行は実行しなくないとかではどうすればいいですかね?
当然抜けたい箇所は数箇所あるのでifで囲むと鬼ネストになるので
161 :
age :04/11/19 17:10:49
こうすれば?? int __fastcall TForm1::test() { bool done = false; int retval = 0; try { try { retval = 1; done = true; }catch(...) { } } __finally { ShowMessage("come1"); } if( done ) return retval; try { try { retval = 2; done = true; }catch(...) { } } __finally { ShowMessage("come2"); } return retval; } void __fastcall TForm1::Button1Click(TObject *Sender) { int retval = test(); }
162 :
デフォルトの名無しさん :04/11/19 17:14:40
C+_ Builderの入門サイトはありますでしょうか。
BCB5にBuilderXのbinフォルダのファイルを入れてみた ちゃんとコンパイルできたんだけど、統合開発環境ONにするとbordbk51.dllエラーでる・・・
>>164 ありがとうございます
勝ってみようと思います
C++Builder6 Personal使用してる初心者です。 Tiff形式の画像を読み込みたいのですが、どうすればいいでしょうか?
168 :
デフォルトの名無しさん :04/11/20 11:59:14
>>167 susieのプラグインを介して読み込む
169 :
デフォルトの名無しさん :04/11/20 13:19:03
初心者です。C++Builder6を使用しています。 StringGridコンポーネントのセルに表示した文字を中央に整えるにはどうすれば良いのでしょうか。
すみません、困っています。 どなたかWEBアプリケーションを作れる方、 相談にのっていただけませんか? 「こういうWEBプログラムが作りたい」という案は すでにあります。自宅サーバーもすでにあります。 平日の夜、都内で焼肉をおごります。 もし、「それなら作れるよ」ということでしたら 数万円の謝礼をお支払いする用意があります。 よろしくお願いいたします。
>168 Susie plug-in関係でぐぐってみたのですが、プラグインを組み込む方法とか わかりませんです。 ヘルプみてものってませんし。 つくりたいのはA4の紙の任意の座標に任意の大きさでTif形式で保存されている 画像を印刷したいだけなのですが、、、、 なんか意外に壁が高いですorz
>>174 い?もしかしてDLLをBCBで使った事ないのか?
177 :
174 :04/11/20 16:28:45
>176 ないです、、、 精進します。
>>177 何でもいいから簡単なDLLを使うプログラムを組んでみれ。
すぐ理解できる。C++の場合は関数名の変形に気をつけて。
extern "C" が必要だな。
序数でアクセスすればいいんだが最近は流行らないし。
>>174 カットシステム「C++Builder4コンポーネント活用ガイド&実践プログラミングVol2」(絶版?)
の第21章にDLLの使い方、Susie plug-inコンポーネントの制作うんぬんが載ってるよ。
ビル6のパソで使えるかどうかわかんないけど。
テンプレに載ってますよ。>5
>180 ほんとだ、Vol2の第16章になってるね。
みなさまアドバイスありがとうです。 >179 その本もってました、、、でも会社におきっぱなし、、 ちゃんと読み返します。 またつまったら質問させてください、、、
184 :
デフォルトの名無しさん :04/11/22 09:47:34
できました。 なんとなくですが、dllの利用の仕方が理解できたような気がします。 いろいろ触ってもっと練習しますです。 ありがとう。
Delphi2005の優待販売きたか? Proで23500円なら かってみてもいいかなとか思ったりして C#も使えるし BCBは全く先が見えないんだが...
ハガキだったので、危うく捨てるとこだった。 とりあえず、お布施。 どう使うかはあとで考える。
お布施か (w Delphi読めないとVCL読めないからなあ これを機会に試してみるか...
C++書けるんならObjectPascalもすぐに読める気が‥‥
しかしDelは活発で良いねえ
191 :
age :04/11/26 17:28:20
12月15日
BCB5.01J使ってます。 あの、本当にレベルの低い質問で悪いんですが、 このエディタってマウスでスクロール出来ないんですか???
>>192 そら、エディタじゃなくてマウスドライバの問題。
スクロールできるマウス使え。
>>192 ホイールってこと?「どこでもホイール」がお奨め。
195 :
デフォルトの名無しさん :04/11/27 19:00:46
BCB って C++ の標準にどれだけ準拠しているのですか? とくにテンプレートまわりについて知りたいです。
196 :
デフォルトの名無しさん :04/11/27 19:07:38
Delphi8買ったばかりでDelphi2005。ハァ〜(泣;
197 :
本田 :04/11/27 22:12:01
>>197 ありがとう。
Borland ships STLport Library with C++ Builder 6, as the default ANSI/ISO Standard Library.
って書いてありますけど、テンプレート機能が標準をサポートしているかどうかは
明らかではありませんよね。
200 :
デフォルトの名無しさん :04/11/28 01:56:32
>>193-194 ありゃ、ってことは使えて当たり前ってことですか…orz
ちなみにbcb6はスクロールできましたw
プロジェクトとか、そんな大きいの作らずに
作って試しての繰り返しで、大体1000行前後で
複数ファイルにならないようなプログラムやってるので、
bcb5でやっていきたい…
CPadに後退しようか。額も後退してきたし…うるせぇ!!!
201 :
本田 :04/11/28 10:13:41
202 :
本田 :04/11/28 10:24:38
203 :
デフォルトの名無しさん :04/11/29 00:55:49
C++ builderてEXEだけでクライアントにインストできます? VBはできないで困っています。 (XPは文字化けするし) delはランタイムライブラリがいらないんでいいですね
>>203 もちろんできますよ。
デフォルトではランタイムが必要ですが、
プロジェクトの設定を変えて全部静的リンクすれば、
EXE 単体で実行できます。
ilink32の5.66ってどこでダウンロードできるんですか?
C++ Builderで最近はやっているXPのようなフラットメニューを 作りたいんですが、これはメニューのオーナー描画で作るんですか?
207 :
デフォルトの名無しさん :04/11/30 09:17:42
209 :
デフォルトの名無しさん :04/11/30 10:16:42
マジレス申し訳ないが、件の有料サイトって会員になるやついるの? あの程度で金が取れるとは到底思えないのだが。
211 :
デフォルトの名無しさん :04/11/30 11:47:49
>>206 オーナードローじゃ_。
TBXってコンポーネントがあるから、これオススメ。
213 :
デフォルトの名無しさん :04/11/30 12:12:10
オーナードローじゃ_。つっても流行らないと思うぜ?
214 :
デフォルトの名無しさん :04/11/30 12:17:00
215 :
デフォルトの名無しさん :04/11/30 12:20:29
マニフェストファイルを作成します。 下記の内容のテキストファイル(文字コードはUTF-8)を作り、 ファイル名を「(EXEファイ ルのファイル名).manifest」 (たとえば「VB1.exe.manifest」)として EXEファイルと同じフォルダに保存します。
XPってOfficeXPやVS.NET風のことでないの。
217 :
デフォルトの名無しさん :04/11/30 12:49:14
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="VB1.exe" type="win32" /> <description>Description</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly>
218 :
デフォルトの名無しさん :04/11/30 17:20:39
パイプがよくわかりません。誰か親切な人教えてください。
219 :
デフォルトの名無しさん :04/11/30 17:53:56
220 :
デフォルトの名無しさん :04/12/01 04:40:33
222 :
デフォルトの名無しさん :04/12/01 12:13:23
223 :
デフォルトの名無しさん :04/12/01 12:48:15
224 :
デフォルトの名無しさん :04/12/01 13:57:58
225 :
デフォルトの名無しさん :04/12/01 14:19:13
大原ゆきのサイトじゃんか。。。
227 :
デフォルトの名無しさん :04/12/01 15:51:52
228 :
デフォルトの名無しさん :04/12/01 16:58:18
通常のメソッドには、__fastcall付けない方が良いんだっけか?
229 :
デフォルトの名無しさん :04/12/01 17:09:30
そこか。某スレッドに晒されて有料の会員制にしたというサイトは。
230 :
デフォルトの名無しさん :04/12/01 18:08:26
転送量無制限タイプも新登場。
232 :
デフォルトの名無しさん :04/12/02 03:40:23
TcppWebBrowserを使ってみたんですが、 何故かコピーができません。 一応ブラウザ上の文字列を選択して右クリックを押すと、 IEと同じようにコンテクストメニューが出て、 「コピー」も別にグレイアウト状態ではなく、 ちゃんと実行出来るんです。 が、 メモちょうか何か適当に開いて貼り付けようとしても、 実際にはコピーされてないんです。 コンテクストメニュー中の他の項目、例えば印刷やソースの表示とかはちゃんと出来るんですが…。 何かのプロパティがfalseになってるとか簡単なことなのか、 アドバイス頂けませんでしょうか。 バージョンはBCB6です。 よろしくお願いします。
>>232 起動時/終了時に、OleInitialize/OleUninitializeを呼ぶ。
あ、一応言っておくとその他のコンポーネントではちゃんとコピー&ペースト出来ます。 TcppWebBrowser上でのみ出来ないんです。
>>233 うわ、はや!
さっそくやってみたら出来ました。
ありがとうございます。
236 :
デフォルトの名無しさん :04/12/02 07:07:54
237 :
デフォルトの名無しさん :04/12/02 07:21:14
238 :
デフォルトの名無しさん :04/12/02 08:32:27
239 :
デフォルトの名無しさん :04/12/02 09:43:13
BCB6pなんですが、コードエディタの下側のスクロールバーが1/3ほどステータスバーに 埋まっています。激しく使いづらいのですがどこかに解決策ってありますか? OSはXpです。 既に既出かも知れませんが、過去ログが読めないのでお願い致します。
242 :
デフォルトの名無しさん :04/12/02 11:28:12
02/04/30 BCB6 あっちでもこっちでも、ギャーという声が上がってるらしい(USでもだ)。 MicrosoftのWindows関連のインクルードファイルが間違ってるおかげで、構造体のサイズがお かしくなってしまう。 BITMAPFILEHEADERあたりもやられているので、かなり深刻。でも、Borlandは何もしてくれな い。 ニュースページ(Bolrand.cbuilder-api)に告知したら、親切な人がヘッダーを修正してもいいよ と、Borlandに確認を取ってくれた。中口さん感謝。 BCB6をインストールしたら速攻、次のパッチを当てよう。 poppack.h,pshpack1.h〜pshpack8.hの最初と最後の#pragmaをコメントアウトする。 確認した限りでは、これで大丈夫なはずだが、心配な向きは#ifndefで囲ってやって適当なコン パイルスイッチでON/OFF すればいいだろう。
243 :
GUCCI :04/12/02 11:38:18
visualC++のプログラムで char *para,*data; の文で以下のエラーがあらわれるのですが・・・ error C2448: '<Unknown>' : 関数の定義が間違っています。 fatal error C1004: 予期せぬ EOF が検出されました。 どうしたらいいかまったくわからないのでもし良かったら アドバイス的なものをもらえないでしょうか?
244 :
デフォルトの名無しさん :04/12/02 12:06:42
C++Builderを使う
245 :
デフォルトの名無しさん :04/12/02 12:50:17
246 :
デフォルトの名無しさん :04/12/02 16:39:21
247 :
デフォルトの名無しさん :04/12/02 18:17:29
TClientSocketでUDPプロトコルは対応してますか?
http://www.geocities.jp/wininet_dll_jp/page2.html このページのとおりにプロジェクトをつくってコンパイルしたのですが
リンカエラーがでます
[リンカ エラー] 外部シンボル 'InternetOpenA' が未解決(E:\CYGWIN\TMP\BORLAND\UNIT1.OBJ が参照)
[リンカ エラー] 外部シンボル 'InternetOpenUrlA' が未解決(E:\CYGWIN\TMP\BORLAND\UNIT1.OBJ が参照)
[リンカ エラー] 外部シンボル 'InternetReadFile' が未解決(E:\CYGWIN\TMP\BORLAND\UNIT1.OBJ が参照)
[リンカ エラー] 外部シンボル 'InternetCloseHandle' が未解決(E:\CYGWIN\TMP\BORLAND\UNIT1.OBJ が参照)
プロジェクトにはinet.libを参加させました
C++ builderは今日初めて使うので、右も左もわからない状態です。
wininet.libだった気がする
ありがとうございます その通りでした >> ○wininet.lib
>>248 MSDNなりPlatformSDK見る癖つけといたほうがいい
InternetOpenならきちんとこう書いてある↓
> Requirements
> Client: Included in Windows XP, Windows 2000 Professional, Windows NT Workstation 4.0, Windows Me, Windows 98, and Windows 95.
> Server: Included in Windows Server 2003, Windows 2000 Server, and Windows NT Server 4.0.
> Version: Requires Internet Explorer 3.0 or later.
> Header: Declared in Wininet.h.
> Library: Use Wininet.lib.
うい そうします
253 :
デフォルトの名無しさん :04/12/03 15:33:14
何時の間にかWinMainでMainFormがCreateFormされたときにFormShowまで実行されてしまう様になって まだCreateFormされていないFormへのアクセス違反が起きる様になってしまいました。 試しに新しいプロジェクトを作って試してみたらそんな事は起きないのですが、どうすれば元にもどる のでしょうか?
>>254 try
{
Application->Initialize();
Application->Title="hoge";
Application->CreateForm(__classid(THogeMain), &HogeMain);
→Application->CreateForm(__classid(TInputForm), &InputForm);
.....
ShowWindow(Application->Handle, SW_HIDE);
Application->Run();
}
てな感じです。
→の部分にブレークポイントをつけても、そこに来る前にHogeMainのFormShowでInputForm
にアクセスして落ちてしまう状態です・・・。
>>255 HogeMainのコンストラクタでInputFormにアクセスしてるんじゃなくて?
>>256 当初はそうで、あぁこれじゃしょうがないなとInputFormにアクセスするところをFormShow()
に移したのですが、何故かCreateFormされた時にFormShowまで実行されてしまうらしいんです。
HogeMainのコンストラクタの中身を殆どFormShowに持っていってもついてきてしまうんで
FormShowがコンストラクタから呼ばれてるとも思われないんですよ、と言うかステップ実行
で追ってみてもコンストラクタから抜けてそのままWinMainに戻らずにFormShowに行ってしまって
います。
>>257 まず
Application->CreateForm(__classid(TInputForm), &InputForm);
これ取れ。
THogeMainの中でTInputFormをnewしてるんだろ?
--- project1.cppの一部 try { Application->Initialize(); Application->CreateForm(__classid(TForm1), &Form1); Application->Run(); } --- unit1.cppの一部 __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { Form2 = new TForm2(this); Form2->Show(); Sleep(1000); delete Form2; }
プロジェクト→オプション→フォームで、選択可能なフォームに InputFormを移す。
261 :
デフォルトの名無しさん :04/12/03 21:06:57
262 :
デフォルトの名無しさん :04/12/03 21:34:30
C++ Builder 9 はいつ頃発売になりますか?
結局MainがCreateFormでFormShowまで行ってしまう原因はわかりませんでしたが、
>>258-260 を参考に
InputFormを選択可能フォームにして、使用する直前でCreateFormでなくnewするようにしたら目的の動作は達成できました。
ありがとうございました。
>263 FormのVisibleがTrueになってないか?
265 :
デフォルトの名無しさん :04/12/04 06:01:38
/
266 :
デフォルトの名無しさん :04/12/06 10:10:19
267 :
デフォルトの名無しさん :04/12/06 10:11:09
268 :
BCB6P :04/12/07 00:45:06
IdSMTP と IdMessage を使ってメールを送信したいのですが、 ファイルの添付の仕方がわかりません。教えてください。 (TListBox に添付ファイルのリストがあるとして)
270 :
デフォルトの名無しさん :04/12/07 11:08:15
C++ Builder で、s という文字列を表示した確認ウィンドウを出したい際に ::XXXX(char *s); のような形式で呼びさせるものがあったと思うのですが、 ご存知の方はご教授いただけないでしょうか? C++ Builder を触るのは数年ぶりなので、思い出せずに困っています。
>>270 ↓これか?
void Dialogs::ShowMessage(const AnsiString msg);
>>271 早速ありがとうございます!
まさにそれでした。ありがとうございました。
273 :
デフォルトの名無しさん :04/12/07 16:00:14
TStringGridって書き込みができないですよね。 Excelみたいに書き込みの出来るTStringGridってないですか? # 既出だったらスマソ
>>273 StringGrid1.Options.goEditing := True;
ごめんこれDelphi用のコードだったわ。 けれどもオブジェクトインスペクタからプロパティを設定できる。
>>274 サンクス...それにしても簡単だ。
簡単な質問でスマヌ
ここはそういう質問とかするスレだ問題ないぼけなす
TCppWebBrowserで個別にプロキシを設定するにはどうしたらいいでしょうか? デフォルトだとIEの設定が使われるようですが。
279 :
本田 :04/12/07 21:09:23
>>262 単なる予想です。
Windows XPのAMD64版が出荷された、
3−6カ月後にDELPHI9が出荷されて、
さらに3−6ヶ月後にBCB9が出荷。
手元にDelphi 2005の案内葉書が来ておるんですが、 これがDelphi9と言われてきたものなんですか?
>>280 知らないけど、そうかもね。C#も統合したんだったらC++も統合して欲しかった。
C++もついてたら値段3倍でも買ったかも。
C++Builderでするプログラミングって楽しいなあ
カットシステムから出ている本についに第6巻「グラフィック編」が加わったな。 立ち読みしてみたけど、内容がイマイチなあ。 今まで一番面白かったのはデータベース編かな。目から鱗が落ちた。 インターネット編は必要な人には必要かもしれないけど、俺には不要。
ってかデータベース編までとインターネット編以降で著者変わってるし。
グラフィック周りならDelphi本の方がいいやつあるよ。
Scanlineが足引っ張るからTBitmap使ってられない( ゚д゚)
OpenDialog でファイルではなくフォルダを選択したいのですが、 どのオプションを変更すればよいのかわかりません。 よろしくおながいします
だれかおねがいします
調べてみたところ、フォルダの選択はOpendialogをつかうのではなく フォルダ選択ダイアログボックス を使用するとのことでした
290 :
デフォルトの名無しさん :04/12/08 23:28:21
SelectDirectory String dir; SelectDirectory( "DIRINPUT","\\",dir); これがなぜビジュアルコンポーネントになっていないのかが不思議
291 :
デフォルトの名無しさん :04/12/08 23:29:52
292 :
デフォルトの名無しさん :04/12/08 23:33:18
ありがとうございます SelectDirectoryを使ってみます
295 :
デフォルトの名無しさん :04/12/08 23:56:54
#define NO_WIN32_LEAN_AND_MEAN //////////////// define ━━ vt. 限界[範囲]を定める, …の輪郭をはっ きり示す; 明確にする, 定義する ((as)). de・fin・a・ble ━━ a. de・fined ━━ a. 輪郭のはっきりした. defining moment 本性[正体]が明らかにな る瞬間. def・i・ni・tion ━━ n. 限定; 定義 ((of)); (レンズの)解像力, (音や像の)鮮明度; はっきり させること. by definition 定義すれば, 当然. 三省堂提供「EXCEED 英和辞典」より
296 :
デフォルトの名無しさん :04/12/09 00:08:27
対象ファイル main.cpp 修正箇所 // 先頭から #define NO_WIN32_LEAN_AND_MEAN // 追加 #include <vcl.h> #include <stdio.h>
298 :
デフォルトの名無しさん :04/12/09 00:57:23
びっくりさせるなよ。前の話じゃないか。 まさか今ごろBCB製って知ったのか。
47氏がタイーホされたときBCB6も押収されたよ
>>300 それは有名な話。君、昨日まで意識不明だったの?
押収されたのは「市販のWinny作成ソフト」。 ちゃんとニュースでそう言ってたぞ。
BCB9ではTWinnyの実装って、これもガイシュツネタだなw
304 :
デフォルトの名無しさん :04/12/09 06:48:59
MLの「質問の方法」ワラタ
Delphi2005、FedEx で着た。 大丈夫か? 日本法人。
308 :
デフォルトの名無しさん :04/12/09 11:37:31
#include <vcl.h> #pragma hdrstop #include <vcl.h> #pragma hdrstop
>>306 いかにもC風のディスコンパイラ掛けましたっていう感じのソースだな。
310 :
デフォルトの名無しさん :04/12/09 12:03:50
ショートカットの作成 IShellLinkインターフェースを使用して、ショートカットファイルを作成します。 ※このサンプルを実行する時には、[プロジェクト(P)|オプション(O)...]を開き、[ディレクトリ/条件]タブの中にある[条件定義(C)]に NO_WIN32_LEAN_AND_MEAN を追加してください。 //--------------------------------------------------------------------------- // Unit1.cpp //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" #include <shlobj.h> //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) {
311 :
デフォルトの名無しさん :04/12/09 13:15:24
おまえらさっさとC++Builder2005を出してくださいよ
managed C++も同梱してたら最高だな。
313 :
デフォルトの名無しさん :04/12/09 13:49:07
教えてください class TTest : public TThread { } class TTest1 : public TTest { } というクラスがあったとして、TTest1でTThreadのExecuteを実行させるためには どういうふうに記述すればいいのでしょうか?
Resume ?
>>313 TTestに、TThreadのExecuteを実行させるためのメソッドを用意する
>>314 いえ・・
>>315 その場合はExecute本体はTTest1に書いていいんですよね?
あ、すんません・・・普通にできますた。 TTest1でExecuteを宣言してたのが問題っぽかったです
318 :
デフォルトの名無しさん :04/12/09 16:29:09
送受信を自前でやるしかないんじゃないのかな。
そこでwinsockの出番ですよ。
>>319 >>320 とするとDelegateサーバのようなものをローカルに立てて
TCppWebBrowserには
http://localhost:8080/-_- (目的のURL)
を指定し、ローカルサーバは設定されたProxyからデータを取得して
リクエストに答えてあげるといった感じでしょうか?
でも、これですとHTML内のアドレスもローカルサーバ経由に
書き換えてあげないといけないですよね。
Sleipnirなんかはどうやってるのかなぁ...
DelphiのTWebBrowserでぐぐったら何か例見つかるんじゃね?
OpenJaneのソースみてたら、Indyを使ってるようだ。
IndyとTCppWebBrowserでどういう関係が・・
326 :
デフォルトの名無しさん :04/12/09 19:19:54
InternetSetOptionでできたよ>Proxy
329 :
デフォルトの名無しさん :04/12/09 23:09:14
Indy9のインストールやっとうまくいった。 だめだった原因はInclude\Vclの中の旧Indyインクルードファイルが 消えてなかった事。 プログラムの追加と削除から消したのに消えなかった。糞だな。 まあいいや。うまく行ったし。
>>328 すいません、InternetSetOptionに設定するハンドルは
どうやってTCppWebBrowserから引っ張っているのでしょうか?
ちゅうかさっきテストしたプログラム、ハンドルのとこNULLにしてたな。 別にNULLでもいいみたい。
>>329 ノシ
WinCVSほどではないけど、意外と使いやすいよ。
そのままだと日本語が通らないから、
フォームのフォントを変えて、再ビルドすればOK
>>333 NULLでいけましたっ!
どうもありがとうございます。
恥であることを自覚しながらお聞きします telnetでの操作をGUIかぶせるようなアプリを 作ろうとしてるんですが 送受信部分はTClientSocket、ブロッキングモードでやるべきでしょうか? ノンブロッキングモードでの送受信はとりあえず動きますが 大量の送受信する時に問題になるのかな、と思いまして
>>337 とてもためになりました
といっても全部理解しきったわけではないですが
これを頭に入れつつ、もう一度ゆっくり考えてみます
とりあえずは、ありがとう、ということだけ
確か古いバージョンのヘッダを参照してる時のエラー。 古いのはBCBインストール時に、Indyを選択してもしてなくても勝手に入ってたりする。 古いヘッダを探して削除するか、Indy9のインクルードパスの優先順位を上げればいいはず。
341 :
デフォルトの名無しさん :04/12/11 07:47:44
すみませんおしえてください ActiveFormにて Form1->Show()とかでダイアログを出したいの 例外で落ちてしまいます ActiveFormはダイアログが作成できないのでしょうか?
うひょう インクルードパスの最初にIndyディレクトリを追加したらうまくいきました ありがとうございました
343 :
デフォルトの名無しさん :04/12/11 18:53:34
344 :
デフォルトの名無しさん :04/12/11 19:09:11
345 :
デフォルトの名無しさん :04/12/11 19:10:34
346 :
デフォルトの名無しさん :04/12/11 19:25:05
Close メソッドは,フォームを閉じます。 注意アプリケーションのメインフォームが閉じると,アプリケーションは終了します。
347 :
デフォルトの名無しさん :04/12/11 19:26:02
Hide メソッドは,フォームを非表示にします。
348 :
デフォルトの名無しさん :04/12/11 19:37:27
349 :
BCB6P :04/12/11 22:20:46
教えてください for(int i = 0; i < ListBox1->Count; i++) { AnsiString temp = ListBox1->Items->Strings[i]; TIdAttachment(IdMessage1->MessageParts, temp); } IdSMTP1->Send(IdMessage1); 受信した添付ファイル名が文字化けしてしまいます。 どうすればよいのでしょうか?
RFCを読め。メールクライアントを作るときはそれが義務。
TThreadのExecute内で自分自身をResumeして メインフォームから何かアクションがあったらSuspend という処理を考えて組んでみたのですが Suspendしてもスレッドが復帰してないみたいです こういう使い方って間違ってるのでしょうか? それとも、本当は復帰できるのに 俺がタコなコードを組んじゃったんでしょうか?
ResumeとSuspend逆じゃないか
逆ですね スレッド側でSuspendして、メインフォームでResumeです ここに書くのに間違えただけです
ちゃんと復帰するよ。
すいません、ありがとうございます タコなソースを見直します
上はまちがいです。
IndyをつかってHttpクライアントを作っています
このページ
http://monazilla.org/document/indytips.html を参照にしたのですが、
Builderでの書き方がわかりません。
var
Res : TStringStream;
Source : TStringList;
begin
Res := TStringStream.Create('');
Source := TStringList.Create;
Source.Text := '送信内容';
FIdHttp.Post('
http://hogehoge/write.cgi ', Source, Res);
FContent := Res.DataString; //もどってきたHTML
これをC++のコードに書き直すとどうなりますか?
たとえば、
TStringStream Res = new TSgringStream();
とやってもエラーがでますし。
ポインタにするのじゃ
>>358 そのエラーのところは、以下のように書き直すべし。
TStringStream *Res;
Res = new TStringStream;
たぶん同じ理由で
Source = new TStringList();
とやっているでしょうから、これも
TStringList *Source;
Source = new TStringList;
と書き直します。
これで何でエラーになるか分かってないって事は、
どうも、ポインタとオブジェクトがごっちゃになっているようだから、
その辺を少し勉強し直してみては如何でしょうか。
長文スマソ
C++なら素直に TStringStream* Res = new TStringStream; TStringList* Source = new TStringList; と書いてくれ
362 :
デフォルトの名無しさん :04/12/13 01:47:06
void __fastcall TForm1::Save1Click(TObject* Sender) { if(!SaveDialog1->Execute()) return; TFileStream* fs = new TFileStream(SaveDialog1->FileName, fmCreate); TStringStream* ss = new TStringStream(""); try{ SaveData(ss); ss->Position = 0; fs->CopyFrom(ss, ss->Size); } __finally{ delete ss; delete fs; } }
('A`)?
一晩Pacal眺め続ければ読めるようになる
366 :
デフォルトの名無しさん :04/12/13 17:32:13
367 :
デフォルトの名無しさん :04/12/13 17:38:48
それもそうだな
368 :
デフォルトの名無しさん :04/12/13 21:52:48
369 :
デフォルトの名無しさん :04/12/14 05:39:45
370 :
デフォルトの名無しさん :04/12/14 20:11:24
質問します。 Menuがあるメインフォーム、その他のサブフォーム といった具合にフォームが複数あるアプリケーションを作成中です。 サブフォームを選択してアクティブにした場合、 メインフォームのMenu部分の文字が薄字になってしまいます。 例えばBCB本体のように、他フォームをアクティブにしても、 メインフォームのメニュー文字が濃い状態を保つ方法はあるんでしょうか?
ActionMainMenuBarでメニューを作るとそうなるね
>>371 おー、期待通りになりました。
ありがとうございました。
373 :
デフォルトの名無しさん :04/12/14 23:56:04
今、BCB6を買うのがいいのか、それとも新しいのが出て買うのがいいのか。 どっちがいいと思う?
374 :
デフォルトの名無しさん :04/12/14 23:58:48
俺その体験版起動できなかったなー。今は日本語版持ってるからいいけど。
376 :
デフォルトの名無しさん :04/12/15 00:45:53
私は体験版使用できました。
今日、Xデーだけど。
378 :
デフォルトの名無しさん :04/12/15 08:48:28
継続決定記念カキコ キ…(-_-)キ(_- )キ!(- )キッ!( )キタ(. ゚)キタ!( ゚∀)キタ!!( ゚∀゚ )キタ━━━ キタ━━━( ゚∀゚ )━( ゚∀)━( ゚)━( )━(゚ )━(∀゚ )━( ゚∀゚ )━━━!!!! キタ━━━━(Д゚(○=(゚∀゚)=○)Д゚)━━━━━!! キタ Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒(。A。)!!!
おまいらおめでとう
来たね。 でも次期のDelphiと同時期(って書いてあるよね?英語苦手……)ってことは、早くても一年後か……。
訳してみた。めでたいこんな時だからミスは許してくれ。
要約:全BCB利用者はこのボーランド発表文書をお見逃しないよう! 非常に長い間ボーランドとBCBシリーズを支えてくれたユーザの皆様方に、 まずボーランドは感謝の意を伝えたいと思います。 我社は、VCLベースのBCBを利用している多数の開発者や、 その技術によって開発された多くのエンドユーザソリューションを 高く評価しております。 そして、BCBと皆様の既存の資産の両方を前進させることは、 大きな意味を持つことだと考えております。
そういったわけで、VCLベースのC++の開発をボーランドが継続すことを、 我社は皆様に感謝の意をもってお約束いたします。 BCBの次期バージョンはDelphiのIDEファミリーの一つとなり、 最新のDelphiのVCLやIDEフレームワーク、 そして皆様がご希望されているC++の多くの新しい機能を 自由にご利用することが可能となります。 ボーランドではこれらの機能を、 Delphiの次期メジャーリリースと同時かそれ以前に 盛り込みたいと考えております。 詳細な内容やスケジュールにつきましては、 可能になり次第発表していきます。
我社は皆様のボーランド、とりわけBCBファミリーへのご愛顧を感謝しております。
皆様との対話を通じ、皆様の成果に関して我社は非常に多くのことを学びました。
今後も我社とのコミュニケーションが開かれた状態で活発に継続していくことを
願っております。
BCBへのフィードバックにつきましては、
[email protected] までメールしていただくか、QualityCentralにてご意見を登録ください。
皆様のソフトウェア開発に幸多きことを心より願っております。
敬具
ワーイヽ(゚∀゚)メ(゚∀゚)メ(゚∀゚)ノワーイ
388 :
デフォルトの名無しさん :04/12/15 19:38:35
じゃあ、これからC++Builder6を買っても大丈夫なんですね!
C++Builder6 Proが店頭にないんですけど。。。。
390 :
デフォルトの名無しさん :04/12/15 20:59:14
ワーイワーイ、めでたいなー うひょー
391 :
デフォルトの名無しさん :04/12/15 21:11:29
392 :
デフォルトの名無しさん :04/12/16 01:42:46
393 :
デフォルトの名無しさん :04/12/16 13:59:27
たとえば、openjaneなどで 「設定」メニューを選ぶと 設定ウィンドウが出てきますよね? あれは子フォームを作っているのですか?
C++Builder 6コンポーネント活用ガイド&実践プログラミング Vol1 と Vol2は読みました
設定用フォームをShowModal()している
親フォームTForm1にMemoコンポーネントを貼り付けました。 で、子フォームからこれに適当な文字を表示させようと次のようなコードを書きました。 TForm1* theForm1 = new theForm1(this); theForm1->Memo1->Lines->Add("はにゃ〜ん"); delete theForm1; が、うまく表示されません。 どこが間違っているのでしょうか
間違ってるね
どうまちがっていますか?
新しくnewしてるところ
どうすればいいですか?
ヒントだけでもお願いします
incude "Unit1.h" Form1->Memo1->Lines->Add("はにゃ〜ん");
うまくいきました! ありがとうございます
404 :
デフォルトの名無しさん :04/12/16 23:30:36
How can I send keys to another application? 1. Start a new project using File | New Application. 2. Add a Button and edit the OnClick event: void __fastcall TForm1::Button1Click(TObject *Sender) { // Get the handle of the window HANDLE notepad = FindWindow("Notepad", 0); if(notepad != NULL) { // Activate Notepad BringWindowToTop(notepad); // Send key keybd_event('A', 0, 0, 0); keybd_event('A', 0, KEYEVENTF_KEYUP, 0); } else { ShowMessage("Notepad not opened!"); } } 3. Make sure that Notepad is opened. The Win32 API function keybd_event sends keystrokes to another application.
405 :
デフォルトの名無しさん :04/12/16 23:32:14
406 :
デフォルトの名無しさん :04/12/16 23:33:44
407 :
デフォルトの名無しさん :04/12/16 23:40:21
http://thunder.prohosting.com/~cbdn/html.htm Keyboard
How can I change the state of Caps Lock?
How can I check the state of Num, Caps, and Scoll Lock?
How can I detect character key presses?
How can I detect key combinations?
How can I detect special key presses?
How can I disable Ctrl + Alt + Del or Alt + Tab?
How can I disable key presses?
How can I get the key text name?
How can I send keys to another application?
408 :
デフォルトの名無しさん :04/12/16 23:45:51
409 :
デフォルトの名無しさん :04/12/16 23:46:19
次のBCBはDelphiのおまけらしいけど.NETも付いてて随分重いIDEになりそうだな
411 :
デフォルトの名無しさん :04/12/17 11:23:40
オープンソースのinterbace6で扱えるデータ型が載ってるサイトとか有ったら教えてください。 MEMOやGRAPHICを使いたいんだけど、嫌がられるョ
TIniFileコンポーネントが見つからないんですが、どこにありますか?
パレットにはないよ。IniFiles.hppをインクルードしてnewして使うんだよ。
事故解決しました #include<IniFiles.hpp> するみたいです
BLOBなのね 官舎
ええいくそ。Indy9をインストールして使っててしばらく不都合がなかったのに、 しばらくして"Indy.bpiが見つかりません"とか何かダイアログが出るようになっ て、しかもコンパイルするとリンカエラーが出るようになった。 勘弁してよママン。 default.bprからIndy.bpiを削除する事でようやく解決した。
419 :
age :04/12/17 14:30:16
>>418 メインメニューから、デフォルトのプロジェクトオプションの実行時パッケージの欄から
Indyを消せばよいだけでは?
ファイルのフルパスを利用してアプリを起動するにはどうすんの? きっと簡単なんだろうな〜
421 :
デフォルトの名無しさん :04/12/17 15:39:29
しぇる
>>419 サンクス。うぁーありました。このセミコロンで区切られた一行の長い文字列
ですね。これでは見落としても仕方ないよ・・・・
>>420 Win32APIのShellExecute
424 :
デフォルトの名無しさん :04/12/17 16:58:28
C++Builder1なんですけど、 try{ } __finally{ } これでコンパイルエラーになっちゃうんだけどどう記述すればエラーでませんかね
C++Builder 3になって新しい拡張語として__finallyが追加されました
>>421 >>423 ShellExecuteで検索してやっと出来ました。
ありがとうございますた。
427 :
デフォルトの名無しさん :04/12/17 17:31:30
>>425 ヘルプで__finallyがちゃんと出てきてなんか書いてるんですよお
BCB3なんてほとんど使わなかったから覚えてないけど、 __finallyなら対になるのは__tryってことはないの?
429 :
デフォルトの名無しさん :04/12/17 18:08:04
__tryはヘルプに書いてますがそれはもうなぜかコンパイルエラーになるんですよお BCB5ではtry〜__finallyでOKなんですけどねえ〜 なんn
>>428 __try、__catchはC用だったはず
>>430 というわけでもない。
SEH 例外は C++ でも使うときは使う。
すごいゲームを作ろうとなんでもできるプログラムをさがしています。 将来も使えそうなプログラムが良いです。 キャラが一つの画面に大勢いて それぞれが違う動きをして個々の能力が違って ファルコムのゲームのように一つの画面で小さいキャラが 戦って遠距離の敵に雷を落とせたりする。 それでファイアーエンブレムのように成長すると変形して。 2Dでアンチエイリアスも綺麗なPNGで透明、半透明を 扱えるプログラムが良いです。 ちなみに私は、C言語で「ハローワールド」を表示させることに 成功しています。 あとは、本に載っているソースをひたすら書き写すという方法で 「ブロック崩し」をHSPとジャバスクリプトでそれぞれ作ったことがあります。 RPGツクールXPも持っています。
433 :
デフォルトの名無しさん :04/12/18 05:02:56
釣りですか?
434 :
デフォルトの名無しさん :04/12/18 05:03:59
反応Haeeeeeeeeeeeee!!
季節の風物詩。 一足早い訪れ。 しかし本格的だなw
>すごいゲームを作ろうとなんでもできるプログラムをさがしています。 >将来も使えそうなプログラムが良いです。 俺は、俺が大金持ちになるプログラムをさがしています。 将来も使えそうなプログラムが良いです。 ナイスバカ。w
いつからかESCキーを押すとForm上に置かれているBitボタンに 処理が移る様になっていました KeyPressとかKeyDown関連には何も書いていませんしOnClickの 関数を直接呼び出している箇所も他にありません KindもカスタムですしModalResultもNone・・・・ このボタンに処理が移る理由がまったく解りません この様な現象の時にチェックするポイントが他にあるでしょうか?
>>440 そのボタンの Cancel プロパティが true になってないかい?
442 :
デフォルトの名無しさん :04/12/19 14:49:55
Builderで.pngから.bmpに変換するにはどうしたらいいの?
libpng
445 :
デフォルトの名無しさん :04/12/19 20:31:13
BCB6使ってるんだけど、使用するエディタて変更できなかったっけ? 妙に使いづらいんだけど・・(´・ω・`)
フリーカーソル無効化アドインだったorz ~~~~~~~~
449 :
デフォルトの名無しさん :04/12/20 03:19:45
http://thunder.prohosting.com/~cbdn/html.htm Keyboard
How can I change the state of Caps Lock?
How can I check the state of Num, Caps, and Scoll Lock?
How can I detect character key presses?
How can I detect key combinations?
How can I detect special key presses?
How can I disable Ctrl + Alt + Del or Alt + Tab?
How can I disable key presses?
How can I get the key text name?
How can I send keys to another application?
450 :
デフォルトの名無しさん :04/12/20 03:44:51
http://thunder.prohosting.com/~cbdn/html.htm Mouse
How can I change the cursor position?
How can I change the screen cursor?
How can I check if a mouse is installed?
How can I check if the mouse has a wheel?
How can I detect mouse and key combinations?
How can I detect mouse clicks?
How can I detect the number of mouse buttons?
How can I get and set the double-click time?
How can I get and set the mouse speed?
How can I hide the mouse cursor?
How can I know which mouse button has been used?
How can I limit the mouse movement?
How can I use a custom cursor?
451 :
デフォルトの名無しさん :04/12/20 07:56:59
http://thunder.prohosting.com/~cbdn/html.htm Multimedia
How can I create a simple CD player?
How can I detect a sound card?
How can I open and close the CD-ROM door?
How can I play video fullscreen?
How can I play video using MediaPlayer?
How can I play wave files?
How can I play Windows default sounds?
>>441 これが原因でした、ありがとうございます<(_ _)>
453 :
デフォルトの名無しさん :04/12/20 11:42:28
TServerSocketで自分のIPを取得する方法を教えてください
InterBaseのBLOBにファイルやImageの画像を出し入れするにはどうすんの? HELP見たけどバカには訳わからんランラン♪
456 :
age :04/12/20 15:39:49
>>455 早くリリースしてほしいものですね
私は買います (^^)
457 :
デフォルトの名無しさん :04/12/20 16:59:49
こういった感じで文字列を連結すると、&がなぜか消えてしまいます。 sprintf(send_buf,"UserID = %s&_word = %s", User_Edit->Text.c_str( ), Passward_Edit->Text.c_str( ) ); ShowMessageで中身を確認するときは消えてしまうものなのでしょうか? POSTができない…
>>457 ひょっとしてネタ?と思うような、良くできた質問ですね。
&AをShowMessageすると、Aに下線がついて表示されます。
そういうことです。
459 :
456 :04/12/20 18:09:57
458>>ご回答ありがとうございます。 文字列を結合しているつもりが、 変数のアドレスを取り出してるってことでしょうか?? ぜんぜん違ったらごめんなさい。
>>459 ちょっとまて。文字列を結合しているの?
461 :
459 :04/12/20 18:23:32
460>>そうです。結合して、POSTのボディ部分として、サーバーに送信しています。
>>461 普通に "+" で連結して、一番最後にc_str()を一度だけ参照すればいいだろ。
やはりC#も一緒になるのか。重そうだな。 Delphiの風評見てる限りPentiumV733MHZ512MBでは辛そうだ。
465 :
459 :04/12/20 20:52:42
460>>+でやるとメモリがもったいないので、なるべくさけたいのです。 464>>&はPOSTの文でいるだけで、結合にはつかっていません。 最終的に作りたい文字列は、(xxxは入力された文字) UserID=XXX&_word=XXX です。
>>465 メモリが勿体ないと言っても、所詮一時変数だろ?c_str()を参照した代入が終わってしまえば
+で生成された一時変数は消えてしまう。それも許容できないのか?
467 :
459 :04/12/20 21:42:51
466>>一応+でやってみましたが、結果が同じでした。 開発環境がバグってるのでしょうか・・ 一応最新のパッチ当ててみたんですが。
いや、だから&が消えてるのはShowMessageの仕様であって、send_buf内から&が消えてるわけじゃないから バグでもなんでもないって。
469 :
459 :04/12/20 23:38:34
468>>仕様だったんですか!? 勘違いしまくりで申し訳ない すっきりしました ありがとうございました
"&_"を表示したから気付かなかったんだろうな。
ShowMessage("&Hoge")とでもしてみれば、
>>458 の言ってることが分かると思うよ。
471 :
デフォルトの名無しさん :04/12/21 03:30:43
472 :
デフォルトの名無しさん :04/12/21 07:22:04
474 :
デフォルトの名無しさん :04/12/21 07:43:50
過ちて改めざる是を過ちと謂う(孔子) きしゅつ 0 【既出】 以前にすでに提示されていること。 「―の単語」 三省堂提供「大辞林 第二版」より
質問させてください MS社のVCで、MFCアプリのデフォルトアイコンはMFCと描かれた青いアイコンになります Borland社製のC++Builderでは、ビルを模したアイコンになるのでしょうか?
いまさら「がいしゅつ」に突っ込むのって、ネタなのかな。
477 :
デフォルトの名無しさん :04/12/21 08:25:48
478 :
デフォルトの名無しさん :04/12/21 08:27:31
http://thunder.prohosting.com/~cbdn/anon.htm // Load the application Icon from file
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Application->Icon->LoadFromFile("c:\\"
"program files\\common files\\borland shared\\"
"images\\icons\\finance.ico");
}
479 :
デフォルトの名無しさん :04/12/21 08:29:08
http://thunder.prohosting.com/~cbdn/html.htm Keyboard
How can I change the state of Caps Lock?
How can I check the state of Num, Caps, and Scoll Lock?
How can I detect character key presses?
How can I detect key combinations?
How can I detect special key presses?
How can I disable Ctrl + Alt + Del or Alt + Tab?
How can I disable key presses?
How can I get the key text name?
How can I send keys to another application?
バイナリファイルの中身を一気にAnsiStringsに読み込むのって可能でしょうか? ファイルサイズは不定で数十Bから数百MBまで様々です。 或いはバッファをダイナミックにnewしてそこに読み込ませる方法をお教え下さい。 糞な質問で申し訳ありません。聞くは一時の恥ということでお許しを…。
>>481 バイナリをAnsiStringに入れて良いんだっけ?
何をしたいのかにもよるけど、TFileStreamを使うってのはどう?
せっかくC++なんだからvector<char>でも使えよ
484 :
デフォルトの名無しさん :04/12/21 17:37:04
>>481 AnsiStringには直接入れれないから、ワークを用意してそこからぶち込むとか
まあ変なコードは入れれないからアレだけどな
俺はCの時と同じくchar*にmalloc,reallocで取り込んでるな
486 :
本田 :04/12/22 03:48:02
>>475 BFC(MFC)を使えば、MFC on VC++のアプリケーションと同じアイコンになる。
487 :
デフォルトの名無しさん :04/12/22 07:12:36
↑何そのがいしゅつ。ふざけてるの?
489 :
デフォルトの名無しさん :04/12/22 09:00:59
過ちて改めざる是を過ちと謂う(孔子) きしゅつ 0 【既出】 以前にすでに提示されていること。 「―の単語」 三省堂提供「大辞林 第二版」より
↑何そのがいしゅつ。ふざけてるの?
491 :
デフォルトの名無しさん :04/12/22 11:31:52
TStringGridでセルの入力モード中に右クリするとなんかウィンドウズ標準のメニューがでますが この時にマウスのDown/Upイベントがこないのですが、どうやったらイベントとれますか?
492 :
デフォルトの名無しさん :04/12/22 16:09:35
↑何そのがいしゅつ。ふざけてるの?
外出中うざすぎだろ。
494 :
デフォルトの名無しさん :04/12/22 17:07:30
495 :
デフォルトの名無しさん :04/12/22 17:54:05
↑何そのがいしゅつ。ふざけてるの?
496 :
デフォルトの名無しさん :04/12/22 17:56:52
過ちて改めざる是を過ちと謂う(孔子) きしゅつ 0 【既出】 以前にすでに提示されていること。 「―の単語」 三省堂提供「大辞林 第二版」より
まぁしかし、がいしゅつってのもセンスのいいものでもない。 元はただの読み違いから来たんだろ。 つまらん。
↑がいしゅつ発祥スレを読んだことのない人
冬だなぁ
500 :
デフォルトの名無しさん :04/12/23 08:19:55
501 :
デフォルトの名無しさん :04/12/23 10:41:10
↑何そのがいしゅつ。ふざけてるの?
過ちて改めざる是を過ちと謂う(孔子) きしゅつ 0 【既出】 以前にすでに提示されていること。 「―の単語」 三省堂提供「大辞林 第二版」より
>>501 「がいしゅつ」だって。どこか出かけるの?ププッ
子供はおねんねしてな。
↑何そのがいしゅつ。ふざけてるの?
505 :
デフォルトの名無しさん :04/12/23 11:33:18
未だに居るんだよな 情緒は「じょうしょ」だ「じょうちょ」などというのはアフォだとかって。 言葉ってのは常に変化している。まるの生き物のようにね。 そんなことも理解していない年寄りにはなりたくないね。
↑何そのコピペ。ふざけてるの?
はやく新しいの発売されないかなぁ・・・楽しみ♥
C++Builder6でTShellTreeViewが見つからない。 どのカテゴリにあるの?
>>508 $(BCB)\Examples\ShellControls
nullオブジェクトのわたしかたがわかりません・・・
511 :
508 :04/12/24 08:05:23
>>509 どうもありがとう。
自分のC++Builder6上のパレットにはExampleカテゴリが存在しないがインストールしなくちゃいけないのかな?
それとも昔簡単なコンポーネント作ってインストールした時に間違って消しちゃったのかな?
Delphiパーソナルには元からあるのに。
512 :
デフォルトの名無しさん :04/12/24 15:06:12
過ちて改めざる是を過ちと謂う(孔子) きしゅつ 0 【既出】 以前にすでに提示されていること。 「―の単語」 三省堂提供「大辞林 第二版」より
516 :
デフォルトの名無しさん :04/12/24 17:08:26
↑何そのがいしゅつ。ふざけてるの?
517 :
デフォルトの名無しさん :04/12/24 17:19:09
518 :
デフォルトの名無しさん :04/12/24 17:22:25
519 :
デフォルトの名無しさん :04/12/24 17:23:53
472 名前:デフォルトの名無しさん[] 投稿日:04/12/21 07:22:04
http://bdntv.borland.com/cppbuilder/CPPinDelphi.html http://bdn.borland.com/article/0,1410,32845,00.html 487 名前:デフォルトの名無しさん[] 投稿日:04/12/22 07:12:36
http://bdntv.borland.com/cppbuilder/CPPinDelphi.html http://bdn.borland.com/article/0,1410,32845,00.html 494 名前:デフォルトの名無しさん[] 投稿日:04/12/22 17:07:30
http://bdntv.borland.com/cppbuilder/CPPinDelphi.html http://bdn.borland.com/article/0,1410,32845,00.html 500 名前:デフォルトの名無しさん[] 投稿日:04/12/23 08:19:55
http://bdntv.borland.com/cppbuilder/CPPinDelphi.html http://bdn.borland.com/article/0,1410,32845,00.html 512 名前:デフォルトの名無しさん[] 投稿日:04/12/24 15:06:12
http://bdntv.borland.com/cppbuilder/CPPinDelphi.html http://bdn.borland.com/article/0,1410,32845,00.html 519 名前:デフォルトの名無しさん[] 投稿日:04/12/24 17:23:53
http://bdntv.borland.com/cppbuilder/CPPinDelphi.html http://bdn.borland.com/article/0,1410,32845,00.html
522 :
デフォルトの名無しさん :04/12/24 18:32:40
↑何そのがいしゅつ。ふざけてるの?
523 :
デフォルトの名無しさん :04/12/24 18:41:40
まぁしかし、がいしゅつってのもセンスのいいものでもない。 元はただの読み違いから来たんだろ。 つまらん。
524 :
デフォルトの名無しさん :04/12/24 19:01:23
過ちて改めざる是を過ちと謂う(孔子) きしゅつ 0 【既出】 以前にすでに提示されていること。 「―の単語」 三省堂提供「大辞林 第二版」より
525 :
デフォルトの名無しさん :04/12/24 19:29:01
↑何そのコピペ。ふざけてるの?
StringGridにおいてマウスなどで選択されたセルだけを処理する関数を作りたいのですが、 そのセルが選択状態にあるのか無いのかを返すbool変数とかありませんか? どうか教えてください、お願いします。
>>527 boolじゃないけどSelectionプロパティを使うんでない
>>528 おお もっと便利そうなプロパティがあるんですね
早速Selection使って作ってみます。ありがとうございました。
530 :
デフォルトの名無しさん :04/12/25 01:44:09
p2pでデータ通信するときって、双方のノードにclientとserverを 置いて通信するのがいいの??
なぜここで… ああ47死に聞いてるのか。
532 :
デフォルトの名無しさん :04/12/25 03:07:50
犯罪者も注目するスレ
533 :
デフォルトの名無しさん :04/12/25 08:31:00
534 :
デフォルトの名無しさん :04/12/25 08:31:33
これに対してMoleSterなる Perlによる9行の実装が登場。 こちらは、さらに以下 のような制約を加えているところがすごい。 明らかなセキュリティホールはないこと なんらかの認証手段をもつこと TCP以上のプロトコル抽象化ライブラリを使わない(これは大きい) 言語処理系標準添付以外のライブラリを使わない 実装は以下のようになる。 $/=$_;$,=shift;$w=$a=shift;sub g{open(F,'<',$4)&&t($2,$a,"e$4",<F>);close F}$k{+shift}=1;socket S,2,1,6;bind S,&a;sub e{open F,'>',$4;print F $';close F}sub h{t($2,$_,id)for keys%k}sub i{$k{$2}=1}sub f{t($_,$2,$4)for keys%k}sub a{$w=~/:/;pack'CxnC4x8',2,$',split'\.',$`}for(listen S,5;$SIG{ALRM}=sub{};m!^(.*?) (.*?) ([e-i])([^/]*)/!s&&$,eq$1&&&$3){alarm 9;(accept(C,S),alarm 0)?read C,$_,1e6:($_="$, $a f".shift);close C}sub t{socket X,2,1,6;$w=shift;$k{$w}=(connect X,&a)?print X"$, $_[0] $_[1]/".pop:$/;close X}
535 :
デフォルトの名無しさん :04/12/25 08:41:10
Rubyも負けていない。以下はFlorian Grossによる実装([ruby-talk:123789])。 #!/usr/bin/ruby # Server: ruby p2p.rb password server server-uri merge-servers # Sample: ruby p2p.rb foobar server druby://localhost:1337 druby://foo.bar:1337 # Client: ruby p2p.rb password client server-uri download-pattern # Sample: ruby p2p.rb foobar client druby://localhost:1337 *.rb require'drb';F,D,P,M,U,*O=File,Dir,*ARGV;def s(p)F.basename p[/\w.*/]end;def c u DRbObject.new((),u)end;def x(u);[P,u].hash;end;M["c"]?c(U).f(x(U)).map{|n|p=x(n) c=c(n);(c.f(p,O[0],0).map{|f|s f}-D["*"]).map{|f|open(f,"w")<<c.f(p,f,1)}}:(DRb. start_service U,Class.new{def p(z=O)O.push(*z).uniq!;O;end;new.methods.map{|m|m[ /_[_t]/]||private(m)};def f(c,a=[],t=2)c==x(U)&&(t==0?D[s(a)]:t==1?F.read(s(a)): p(a))end;def y;(p(U)+p).map{|u|c(u).f(x(u),p(U))rescue()};self;end}.new.y;sleep) コメントを除けば6行。密度でも負けていない。 ただし、dRubyを使っているから「TCP以上のプロトコル抽象化ライブラリを使わ ない」というMoleSterの制約は満たしていない。
536 :
デフォルトの名無しさん :04/12/25 08:51:45
537 :
デフォルトの名無しさん :04/12/25 11:51:10
DDEサーバを使ったソフトを作っているのですが、DDEトピック名をTDdeServerConvで設定しようとしても親FormのCaptionの値になってしまいます。 DDEコンポーネントは動的に生成しています(状況によってトピック名を変更したいため) 下記のようにするとトピック名はForm1のCaption(Form1)になってしまいます。 //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { TDdeServerConv *DdeServerConv = new TDdeServerConv(this); TDdeServerItem *DdeServerItem = new TDdeServerItem(this); DdeServerItem->ServerConv = DdeServerConv; } //--------------------------------------------------------------------------- DDEコンポーネントを動的に生成させず、Form上に貼り付けてDdeServerItem->ServerConvの値をオブジェクトインスペクタで設定したあとに コンパイルするとTDdeServerConvのNameのトピックになります。 動的に生成したい場合、良い方法は無いのでしょうか?|´・ω・)
とりあえず、Nameを設定しているコードが示されてないようだが
>>539 DdeServerConv->Name = "DdeServerConv";
の一行を入れたらうまくいきました。
TDdeServerConv *DdeServerConv = new TDdeServerConv(this);
ってしたら自動的にNameプロパティにオブジェクト名が入るものと勘違いしてました|´・ω・)
ありがとうございます。
541 :
デフォルトの名無しさん :04/12/27 09:31:01
542 :
デフォルトの名無しさん :04/12/27 12:12:45
sshクライアントの作り方を教えてください
>>541 そんなにかかるんだ。でも習えば断然早いですね?
>>541 現役を退いたヤツが優位性を保とうとデッチ上げた記事なんじゃないの?
プログラマを引退するまでが10年ぐらいだし
しかし、結局、Delphiのおまけに落ちぶれてしまうのか・・・
残るのは嬉しいが、今度こそboostがまともに通るようにしてくれ。悲惨すぎ
コンパイラがバージョンアップするの何年ぶりなんだろう・・・・ しないってことはないよな、BCBXでベータ出てたし
本当に出るのかよ・・・。 半年くらいしたらまたぷっつりと・・・。
次期メジャーリリースって2年後かよ
>ボーランドならびに弊社C++Builder製品群に対し、 >長期間にわたるご支援を賜りまして誠にありがとうございます。 ここ読んだとき、ガクブルしたヨ。 まるで「サービス停止のお知らせ」みたいな出だし。
Delphiに統合… てことはC++Builderって名前は無くなっちゃうって事か? ちょっと寂しいな
553 :
デフォルトの名無しさん :04/12/28 10:54:42
C++自体なくなってパスカルになるの?
>>553 Delphi(製品名)の中の一つになるだけ。
VisualStudioにVCやVC#、VBが含まれるように
DelphiにDelphi、C++Builderが含まれる。
ドトニートだとSTLが使えないmc++になるんだよね?
556 :
デフォルトの名無しさん :04/12/28 11:41:47
>>556 Delphi7とC丼Buiderが一緒になったD2005は価格高くなってないと思う。
バージョンアップに関しては2万数千円と激安になった感じ。
>>557 おまけ的存在じゃないんだよね?
ちゃんとパワーアップしてるのかなあC++Builderは
Kylix for Windows ではないのか、、、 C++BuilderXはどうなるのだろう?
もう某はだめなんかなぁ・・・
561 :
デフォルトの名無しさん :04/12/30 17:09:10
PascalのこれをBuilderように変換してください test = array of array[0..63] of Char;
冬休みはまだあると思うので、宿題はもう少し自力で頑張ってください。
Delphi捨ててWideStudioに逝っちゃった俺は・・・
>>563 もっと盛り上げてWideStudio使いやすくしてくれ
565 :
デフォルトの名無しさん :05/01/03 19:45:19
小さなP2P
566 :
デフォルトの名無しさん :05/01/03 23:01:31
568 :
デフォルトの名無しさん :05/01/03 23:37:00
http://www.koders.com/ Kodersというソースコード検索エンジンのサービスが始まっ た
(詳しくはKoders.com:(オープン)ソースコードの高速検索を参 照)。
Kodersの目的は、私のプロジェクトと同様に、
参考となるソース コードを探し出すことである。
さきほどのiconv関数をKodersで検索す ると、大量のソースコードが見つかる。
ソースコード検索エンジン gonzui
今回のプロジェクトで開発するソースコード検索エンジンの名前は
gonzuiに決めた。ゴンズイはナマズ目の海水魚で、
毒を持っている。 全文検索システムNamazuの仲間という
意味合いを込めて名づけ た。
569 :
デフォルトの名無しさん :05/01/03 23:40:45
ブラックジャックを自分で作成したいのですが、上手く作れません。 何処か良いサイトな無いでしょうか?
>>571 スンマセン。外見じゃなくて、中のプログラムについて知りたいんです。
それを考えるのがプログラムの楽しさじゃないのかね? ん、んんっ?
574 :
デフォルトの名無しさん :05/01/04 20:24:31
デカルトの[方法序説](1637)からである[1]。 デカルトは、複雑な物質・現象も細分化・単純化すれば 自ずと中身が見えてくるであろうという 要素還元論の立場に立ち、真理を探求するための方法として 次の4つの点が重要であると説いたのである。 第一は、明らか に真であると認められるものだけを真として受け入れること (速断と偏見を避けること)。 第二は、問題の各々を、問題を解くために必要な数の小部分に分かつこと。 第三は、その小部分から思想を順序に従って導くこと。もっとも認識しやすい ものからはじめて、少しずついわば階段を踏んで最も複雑なものの認識にま でのぼってゆくこと。 第四は、全体にわたって良く検討すること。 現代の科学は以上の四つの規則の上に積み重ねとして成り立ってきたもの であるから、 科学の基礎として分析という概念が極めて重要なものであることは言うまで もない。
575 :
デフォルトの名無しさん :05/01/04 20:27:09
koders.comのスレはある?
576 :
デフォルトの名無しさん :05/01/04 22:56:22
次のコードを実行すると”VALUESは変更できません。”というメッセージでおちます。 ファイルによってはうまくいきます。 ADOTable->LoadFromFille(FILE); ADOTable1->Edit(); //ここで落ちます。 ADOTable1->FieldValue["VALUES"]="value"; ADOTable1->SaveFile(FILE);
お世話になってます。レノンと申します。 現在、Paradox、InterBaseを使ってDBプログラミングについて勉強 中です。 その中で、AVIやMPG2といった動画ファイルをDBに登録しようとして いるのですが、これって技術的に可能なのでしょうか? 誰か、情報をお持ちでしたらば、教えてください。お願いします。
>>578 >その中で、AVIやMPG2といった動画ファイルをDBに登録しようとして
>いるのですが、これって技術的に可能なのでしょうか?
うっ。BmpやJpegならよくやるけど、動画は聞いたことないなぁ…
自分ならそのような要求があった場合は、ファイルパスをDBに登録して、
アプリケーション側でそのファイルを呼び出して再生する仕組みにする。
BLOBフィールドに格納できるかもしれないけど、ファイルサイズがいたずらに
大きくなるし。
>>578 MLでBLOBを使えって回答もらってるけど、後は何が知りたいの?
↑何そのレス。ふざけてるの? 答えられないなら黙ってろやカス
でなんか役に立つアドバイスないの?
役に立つアドバイス
↑何そのレス。ふざけてるの? 答えられないなら黙ってろやカス
585 :
デフォルトの名無しさん :05/01/07 03:14:39
BCB 5 のリモート・デバッグで、ターゲット・プログラムを終了しても、 リモート側でターゲット・プログラムの面倒を見ていると思われる プロセスが終了していない事があるんだけど、なんでこうなるの? リソースの解放し忘れかなにかあると、こうなるの?
ブラックジャックというと 皮袋に砂とか石詰めたやつじゃないのか
587 :
デフォルトの名無しさん :05/01/07 09:14:45
CD-ROMに入っているEXEを実行して、同じCDの中にあるファイルを Cドライブ内にコピーするだけのものを作ったのですが、 プログラムは終了してコピーも成功しているのに、CDを取り出すと その後、「ドライブにディスクがありません」と表示されてしまいます。 エラーを出さないようにする方法がありますか?
>>587 プログラムも晒さないで原因を特定しろと?
>>587 プログラム中のバグを直せばエラーは出なくなるよ。
>>587 ドライブにディスクがないのは事実だからプログラム的には正しい動作。
。・… ←なにこれ
ふざけてるんですよ
594 :
デフォルトの名無しさん :05/01/07 13:12:32
ふざけてるんですよ
>>595 あと半年くらいROMればわかるよるになるよ。初心者さん
>>599 知らないことは恥かしい事ではないよ!(´,_ゝ`)プッ
バカかアホ
>>601 1.バカまたはアホ
2・バカの上さらにアホ
どっちですか?
>>600 年取ってくとそうでもないよ。
恥ずかしくなるよ。
あの時やっとけば良かったって思うよ。
604 :
デフォルトの名無しさん :05/01/07 21:27:53
bcc32.exeを使っています。 mmsystem.hをインクルードすると コンパイル時に , がない 宣言に ; がない 型名が必要 などのエラーが大量にでて困ってます。設定がまずいんでしょうか? (ヘッダファイルはインストール後一切いじっていないです。 プログラムはtimeGetTime()を使うところをtime(0)をつかうと正常に動いてます。)
その前にwindows.hをincludeすれば解決すると見た。 free bccの話題はスレ違いだけどね。
std::ofstream fd( "hoge" ); に文字列を書き出します。 fd << "hoge\n"と fd<< "hoge" << std::endl; を比較すると(試したのはもう少し複雑ですが\nをstd::endlに置き換えると) 1.6倍くらい遅くなりました。こういうものなのでしょうか?なんか対策はないですか? 環境は、IntelC++のver.8です。
スレ間違えました…
608 :
デフォルトの名無しさん :05/01/08 05:40:57
今度、BCB6 で開発してるのを引き継ぐみたいなことになったのですが ソースやプロジェクトのファイルからEnterprise版とかProfessional版とかって 判別できますか? 手元に BCB6 が無いので買ってくる必要があるので・・・ bprファイルで使ってるパッケージ見たらわかるような気がするのですが なにを使っていたらEnterpriseとかがわかりません。 よろしくお願いします。
>>608 そんな事も前の担当者に聞けない仕事ならやめときや。
おかしい思わんか?
>>608 聞き方が悪い
〜のようなパッケージを読み込んでいるのですが、これはEnterpriseじゃないとダメそうですか?
とかの方が答えが返りそうだろ
その言い方だとEnterpriseとPro版両方持ってる人しか答えられないじゃん
611 :
デフォルトの名無しさん :05/01/08 11:36:52
マウスジェスチャー機能
612 :
デフォルトの名無しさん :05/01/08 11:55:23
A little demo application that shows how to easily implement mouse gestures (as seen in Opera) in Delphi or BCB forms. Please have a look at the supplied source code. [more]
Mouse gesture demo application with two gestures implemented.
http://delphi.icm.edu.pl/newl/c50/f005_001.htm
613 :
608 :05/01/08 13:38:34
>>609 自分もそう思います。
>>610 スマソ、とりあえず bpr の中の PACKAGES でわかりますか?
<PACKAGES value="vcl.bpi rtl.bpi vclx.bpi bcbsmp.bpi vcldb.bpi dbrtl.bpi bdertl.bpi
qrpt.bpi vclie.bpi xmlrtl.bpi inet.bpi inetdbbde.bpi inetdbxpress.bpi
nmfast.bpi soaprtl.bpi dsnap.bpi dclocx.bpi indy.bpi ibxpress.bpi
visualclx.bpi visualdbclx.bpi dsnapcrba.bpi dsnapcon.bpi bcbie.bpi
dbexpress.bpi adortl.bpi vcldbx.bpi cds.bpi bdecds.bpi teeui.bpi teedb.bpi
tee.bpi teeqr.bpi inetdb.bpi dbxcds.bpi bcb2kaxserver.bpi"/>
615 :
608 :05/01/08 15:00:42
604です。すれ違い失礼しました。 >605無事コンパイル出来ました。ありがとうございました。
617 :
デフォルトの名無しさん :05/01/09 05:55:53
BCB6 ProfessionalでHTMLパーサのような機能を持つライブラリはありますか?
ない
最近のC++Builder系のMLやスレは 何でこんなにつまらん質問ばかり飛んでるの? 仕事系の質問なんてしてんじゃねーよ。
libxmlやらxercesの話が出てきただけで仕事系か(wwwwwwww
つーか「仕事系」ねぇw
木じゃなくて森的な意見なんだけど。 例えば個人でデータベースとか使ってんの? 使ってるとしてそのデータベースにはどれほどのデータが蓄積されてんの? しかも作ったプログラムまともに使ってんの?
なんか必死すぎて笑える
俺はC++Builder相談室の行く末を案(ry なんか625は軽すぎてむかつく
自分にわからん質問はつまらん質問なんだろうな
200万の画像を各種条件で検索・表示できるエロ画像データベースは数年使ってた けど、ダメですか? バックアップを取ってなかったから画像ファイルがHDDごとあぼーんしたけど、 DBファイルだけは残ってる。
DBはデジカメ画像を整理するようなプログラムを作ろうと思うと使いたくなるな
>>631 DBにはパス突っ込んでおいたほうが色々使いやすいんじゃないか?エロ画像なら。
>>631-632 BLOB使うと遅くなる(と聞いた)とか、でかいファイルはバックアップが手軽にできない
とか、そういう理由で画像はファイルのままだった。
標準のDBコンポ・IBXとか、Susieプラグインとか、色々と勉強になったよ。
ちょっとお尋ねします。 BCBのProfessionalのIDEには ネームスペースからの補完機能はあるんですか?
>>634 自動補完機能を無効にするのがBCBユーザーの嗜みです。
つーか重すぎ‥‥
>>636 BCB6がリリースされたころはそう思ってたけど、
CPUが2GHz超えたころから気にならなくなったな。
638 :
デフォルトの名無しさん :05/01/11 10:55:58
639 :
デフォルトの名無しさん :05/01/11 13:31:16
640 :
デフォルトの名無しさん :05/01/11 16:12:38
質問します。BCB6 Proです。 クリップボードの内容を一時的に別メモリに退避させたいと考えています。 TClipboardのAsTextプロパティによってテキスト形式のみ退避させる場合は出来たのですが、 クリップボードの内容がどのようなフォーマットが混在してても、 丸々退避させる方法をどなたかご存知無いでしょうか。
別メモリって意味がよくわからん。 USBメモリとか?
642 :
640 :05/01/11 21:14:07
あ、すいません。 メモリ上の別の領域にという事です。
TClipboard->Assign()じゃダメ?
644 :
640 :05/01/12 06:30:13
うーむ、Assignメソッドだと画像のみの取り扱いになってしまいます。 如何なるデータがClipboardに収められてても大丈夫な方法は無いですかね。
645 :
デフォルトの名無しさん :05/01/12 09:24:24
次のような自動アップデート機能を実装したいのですが、 サンプルソースが載ってるHPはないでしょうか? @HTTPを利用し、新しいバージョンが公開されているかどうかを確認。 A新しいバージョンがある場合は、アプリが実行してないかを確認して、 動いているようなら停止する。 Bインストールフォルダ箇所を取得して、 新しいバージョンをダウンロード。 以上でアップデート完了。 かなり探したのですが.NETで作成するページばかりヒットします… よろしくお願いします。
647 :
646 :05/01/12 14:03:41
>>646 ご回答ありがとうございます。
IndyってC++Builder6.0で標準実装されている
インターネットコンポーネントですね。
使用方法がよくわからずに、全くつかっていませんでした。
これで何とかできそうな感じです。
あとIndyの使用方法についての良いサイト、書籍などあったら
ご教授願いたいです。
649 :
647 :05/01/13 08:56:44
>>648 C++Builder以外のリンクを見るの忘れてました。
申し訳ない。
650 :
646 :05/01/13 14:26:54
651 :
646 :05/01/13 14:38:23
バージョンは9.0.17、9.0.15を試しました。
>>650 ($BCB)\binにBCB6標準のdclIndy60.bplが残ってたりしないか?
653 :
650 :05/01/13 15:21:36
652>>作業工程で、BinフォルダにdclIndy60.bplをコピーする項目が あるので、Indyのファイルからコピーしています。 最初の時点では同名ファイルはありませんでした。 コンポーネントのインストールで、追加ボタンを押してdclIndy60.bplを追加する という部分で、エラーがでます。 エラーメッセージは【(dclIndy60.bpl)ファイルが見つかりません】 ファイルの規定値が拡張子がbpkとなっているのですが、bplファイルでいいのでしょうか? 一応bpkの拡張子がないか検索をかけてみたのですが、見当たりませんでした。
654 :
650 :05/01/13 15:27:54
解決しました。 コンポーネントのインストールじゃなく、 パッケージのインストールだったのですね・・・ ありがとうございました。
BDEを使用しているDBアプリをC/S型に変更することになりました。 予算もなく、C/S型DBアプリを作成するのも初めてです。 手間をかけずに変更したいのですがどうすればいいのでしょうか? 今のところ下記の手順で考えています。 1.Firebird をインストールし、現行DBからデータを移行。 2.現行プログラム内の BDE 系コンポーネントを InterBase 系に置き換えて、 とりあえず動く用にする。 3.実際に動かしてパフォーマンスに問題が出たところから、ストアドプロシージャなどに 置き換えたりしてチューンしていく。 PostgreSQL も考えたんですが、PQCompo が TDataSet を継承していないので、 変更箇所が多くなりそうな感じです。 って感じで考えてますが、もっとおすすめの方法とか、参考になりそうなサイト とかあったら教えていただけないでしょうか? ちなみにアプリはありがちな見積・納品・請求管理アプリで、OS は クライアント・サーバー・開発環境とも Windows XP SP2 で、 BCB6 で 開発する予定です。 よろしくお願いします。
dllのソースをネットから拾ってきたのですが コンパイル・リンクの方法教えてくれませんか? Borland初めてなもので・・・ ソース test.cpp test.def リンクする標準ライブラリ user32.lib kernel32.lib
a.まずオブジェクトファイルを作成する bcc32 -c foo.c b.次にそれをDLL形式でリンクする(カッコ部分はdefファイルを作成した場合だけ書く) bcc32 -WD -e foo.dll foo.obj (foo.def) c.必要であればライブラリファイル(.lib)を作成する. implib foo.lib foo.dll
660 :
デフォルトの名無しさん :05/01/14 07:40:29
文字認識されている数字なんですけど, 不動小数点の桁数をそろえる方法は無いでしょうか? StrToFloatと何か組み合わせればいけるでしょうか? お願いします!
661 :
デフォルトの名無しさん :05/01/14 10:00:17
Indyを使用した場合、htmlソースの取得は下記の処理でできるのですが、
バイナリファイルの取得はどうやったらいいのでしょうか?
Memo1->Text = IdHttp1.Get('
http://www.2ch.net ');
よろしくお願いします。
662 :
デフォルトの名無しさん :05/01/14 10:18:50
>>660 printf("%9.2f\n", x);
...654.32小数点を入れて 9桁(小数点以下 2桁)
664 :
デフォルトの名無しさん :05/01/14 11:03:02
>>663 このように、
String SBuf = IdHttp1.Get(
http://sample.lzh );
でデータを受信してlzhファイルを作成したい場合は、
どうすればいいのでしょうか?
File関数を使うのかと思い色々やってみたのですが、うまくいかなくて。
レベルの低い質問ばかりで申し訳ない…
666 :
デフォルトの名無しさん :05/01/14 11:47:30
>>665 例えば受信データがexeなら、それを実体化するにも対応したライブラリ
が別途必要になるということでしょうか??
>>666 あ、ごめん
lzhファイルをダウンロードしているんだったらそのまま保存するだけでOK orz
668 :
デフォルトの名無しさん :05/01/14 13:26:04
>>667 私の質問が悪かったです。申し訳ない。
うまくいかないのは、
String SBuf に格納されたものを、指定フォルダに保存する方法です。
670 :
デフォルトの名無しさん :05/01/14 14:17:44
>>669 この方法でできました。
ありがとうございました。
TFileStream *filestream;
AnsiString as_fname;
as_fname = "C:\sample.lzh";
filestream = new TFileStream(as_fname,fmCreate);
IdHTTP1->Get("
http://www.sample.lzh ",filestream);
// ファイルを閉じる
delete filestream;
filestream = NULL;
671 :
デフォルトの名無しさん :05/01/14 15:55:00
Win32APIのヘルプってどこに入ってたっけ??
673 :
デフォルトの名無しさん :05/01/14 17:08:57
いやCDに入ってる日本語ヘルプの場所を聞いてたんだがー まあもうみつかったからいいけどな
674 :
デフォルトの名無しさん :05/01/14 21:04:11
CppWebBrowserで画像のURLを直接入力し、表示することはできました。 このPNG画像をBMPの形式でImageに変換するにはどうしたらいいのでしょうか? 画像を使用(加工)する許可はいただいています。 WideString w = WideString(Edit1->Text); CppWebBrowser1->Navigate(w); このようなプログラムです。
GLDPNGとか
CppWebBrowser使うんだったらCOM制御か?
677 :
デフォルトの名無しさん :05/01/15 09:37:38
BCB6Proを使っています。 CPU使用率を計測するプロを作ろうとしたんですが、 PdhOpenQuery(NULL, 0, &hQuery); としたところ、 [C++ エラー] Unit1.cpp(27): E2015 '__stdcall PdhOpenQueryA(const char *,unsigned long,void * *)' と 'PdhOpenQueryA(void *,unsigned long,void * *)' の区別が曖昧 と出ました。 ヘッダファイルの中の定義の部分でもうこうなっちゃってると思うんですが、 なんとかこれを回避する方法はないものでしょうか?
プロ?
これでも使ってみれば
http://www.aldyn.ru/products/cpu_usage/ CollectCPUData; //CPU使用率取得
begin
for i:=0 to GetCPUCount-1 do //マルチプロセッサならその数ループ
MInfo.Lines[i]:=Format('CPU #%d - %5.2f%%',[i,GetCPUUsage(i)*100]); //GetCPUUsage(CPU_NO)が使用率
end
同じBCB6Proだけどエラーはでないな
BCB5でもやってみたけどエラー出なかった #include <pdh.h>してる?
681 :
677 :05/01/15 14:31:55
#include <pdh.h> と
PDH_STATUS PdhOpenQuery(
IN LPVOID Reserved,
IN DWORD UserData,
IN HQUERY *hQuery);
は記述しています。
両方とも.hに記述してますが、いいんですよね?
>>678 は今DLしましたんで、中身を見てみます。ありがとうございました。
682 :
デフォルトの名無しさん :05/01/15 14:34:32
その部分のソースを
HQUERY hQuery;
HCOUNTER hCounter;
PDH_FMT_COUNTERVALUE FmtValue;
PdhOpenQuery(NULL, 0, &hQuery);
PdhAddCounter(hQuery, "\\Process(notepad#0)\\% Processor Time", 0, &hCounter);
Memo->Lines->Add("計測開始...\n");
PdhCollectQueryData(hQuery);
Sleep(10000); /* 十秒間待つ */
PdhCollectQueryData(hQuery);
Memo->Lines->Add("計測終了...\n");
PdhGetFormattedCounterValue(hCounter, PDH_FMT_DOUBLE, NULL, &FmtValue);
Memo->Lines->Add(FmtValue.doubleValue);
PdhCloseQuery(hQuery);
以上です。
フォームにはボタンとメモを貼ってあります。
あと、.hに追加したのは
>>681 の通りです。
>>681 >PDH_STATUS PdhOpenQuery(
>IN LPVOID Reserved,
>IN DWORD UserData,
>IN HQUERY *hQuery);
これイラネ
684 :
デフォルトの名無しさん :05/01/15 15:21:37
>>683 なんてこったい……(泣
ありがとうございました。
やったらできました。ほんとすいません。
685 :
デフォルトの名無しさん :05/01/17 10:29:18
実行時パッケージのチェックをはずして CordGuardにチェック入れてると プログラムが正常に終了しないんですがなぜ?
686 :
age :05/01/17 11:27:55
687 :
デフォルトの名無しさん :05/01/17 11:29:43
メインプログラムを終了して、 DLLだけ動かすというのは可能でしょうか?
>>687 不可能じゃない?
いや、WinMainループを持ったDLLをCreateProcessしたら・・・なんつって
689 :
685 :05/01/17 11:50:31
BCB6ProユーザーはUpdate#4は入れないのが常識なのでしょうか?
690 :
デフォルトの名無しさん :05/01/17 11:55:02
>>688 やはり無理ですか。
メインプログラムのexeを新しいものに差し替えたい場合は、
別プログラムを呼び出してから、メインプログラムを終了して、
別プログラムでメインプログラムのexeを差し替えて、
別プログラムでメインプログラムを起動みたいな
感じでやればいいのでしょうか?
わかりにくい文章で申し訳ない…
>>690 上の自動Updateのことかな?
私の知っている自動Uploadが付いているアプリケーションはUpdate専用のexeがあるね
TabfolderっていうのとLilithっていうサウンドプレイヤー
692 :
デフォルトの名無しさん :05/01/17 13:58:18
691>>上の自動Updateのことです。 ご紹介いただいたアプリを落として、動きを見てみたのですが、 Update専用のexe使ってやるのが、割と簡単みたいですね。 このアプリと同じような動きするように作ってみます。 ありがとうございました。
693 :
デフォルトの名無しさん :05/01/17 14:13:15
TComboBoxってフォントのサイズや種類によって高さが変わるのですが、TPanelとか他のコントロールみたいに フォントが変わっても高さが変わらないようにする方法を教えてください
694 :
デフォルトの名無しさん :05/01/18 00:58:30
>>693 ComboBoxのハンドルをGetDCをちゅかってDCを取得
で、TCanvasを生成してそのハンドルに取得したDCを設定。
後はCanvasに直接描画。
たぶんこれで変わらんと思う。
しらんけど。
695 :
デフォルトの名無しさん :05/01/18 13:36:15
左側に「履歴」「デスクトップ」「マイコンピュータ」「マイネットワーク」が表示されるタイプのファイル選択ダイアログを表示する方法を教えてください。
696 :
デフォルトの名無しさん :05/01/18 13:39:33
>>694 んなことするならオーナードローするわぼけが!!
699 :
デフォルトの名無しさん :05/01/18 14:55:10
>697 さんくすです。できました。
>698 TOpenDialogでも、左側に「履歴」「デスクトップ」「マイコンピュータ」「マイネットワーク」を表示できるんですか?
701 :
デフォルトの名無しさん :05/01/18 15:11:35
>>700 BCB6+W2Kの環境だが、普通にTOpenDialogを貼り付けてOpenDialog1->Executeで
「履歴」「デスクトップ」「マイドキュメント」「マイコンピュータ」「マイネットワーク」が表示されるけど。
TOpenDialog.OptionsEx参照。
「マイドキュメント」が要らないという話ならわからないけど。
703 :
デフォルトの名無しさん :05/01/18 21:05:31
>>703 音声ボリュームの上げ下げは
どのようにすればよいのでしょうか?
音声のボリュームを上げ下げします。
>>701 HWNDの引数は
HWND hwnd = NULL;
ofn.hwndOwner = hwnd;
とせずに、そのまま
ofn.hwndOwner = NULL;
とした方がいいかも
706 :
デフォルトの名無しさん :05/01/19 09:04:15
>>703 オーディオのコントロール
ビデオだけではなく音も流さなければなりません、IBasicControl インターフェイスは Volume と Balance のプロパティをサポー トします。このアプリケーションではスライダ コントロール slVolume からボリュームをコントロールします。
Private Sub slVolume_Change()
' スライダの値をボリュームにセット
If Not g_objMediaControl Is Nothing Then
On Error Resume Next ' オーディオのない場合
g_objBasicAudio.Volume = slVolume.Value
End If
End Sub
707 :
デフォルトの名無しさん :05/01/19 09:06:42
DirectMusicの音量調節(MIDI) しゅう さん 2004年12月29日(水) MIDIファイルをDirectMusic(DirectX9)で再生しているのですが・・・その音量調節ができな くて困っています。 いろいろと調べてやってはみたものの・・・処理は成功するけど音量は変わってない・・・とい う現象です。 SetGlobalParamによる設定は下記の通りにやってみました。 アドバイスよろしくお願いします。 VC++.Net:DirectX9(Oct) <参考ソース> hr = CoCreateInstance(CLSID_DirectMusicLoader, NULL, CLSCTX_INPROC, IID_IDirectMusicLoader8, (void**)&m_pLoader); //パフォーマンスの作成 hr = CoCreateInstance(CLSID_DirectMusicPerformance, NULL, CLSCTX_INPROC, IID_IDirectMusicPerformance8, (void**)&m_pPerformance); //パフォーマンスとシンセサイザーの初期化 hr = m_pPerformance->InitAudio(NULL, NULL, NULL, DMUS_APATH_SHARED_STEREOPLUSREVERB, 64, DMUS_AUDIOF_ALL, NULL); long volume = 1000; hr = m_pPerformance->SetGlobalParam(GUID_PerfMasterVolume, (void*)&volume, sizeof(volume));
708 :
デフォルトの名無しさん :05/01/19 13:01:46
DBRichEditの内容をRichEditにコピーする方法をどなたか教えて下さい。 クリップボード経由では出来ますが、なんだかな〜 よろしくお願いいたします。
Lines->Assign()じゃだめ?
710 :
デフォルトの名無しさん :05/01/19 17:08:33
RichEdit1->Lines->Assign(DBRichEdit1->Lines); とするとLinesにアクセスできないとエラーが出ます。
もしかして RichEdit1->Text = DBRichEdit1->Text でいけないかな?
712 :
デフォルトの名無しさん :05/01/19 17:42:30
RichEdit1->Text = DBRichEdit1->Text でOKでした。 これは試してみた筈なんだけど… 何やってんだろ俺 orz 稚拙な質問にお付き合いいただき、ありがとうございました。
713 :
デフォルトの名無しさん :05/01/19 18:31:10
TPageControlでActivePage = TabSheet2;として、ページを変更した場合にOnChangeやOnChangingイベントがこないのですが これをイベントがくるようにするにはどうしたらいいのでしょうか?
714 :
デフォルトの名無しさん :05/01/19 18:53:51
はじめまして ActiveFormで、自分が乗っているブラウザの ウィンドウハンドルが必要なんですが 探す方法あります?ウィンドウタイトルで 探さないと無理?
紹介ページでも載ってるのか
716 :
デフォルトの名無しさん :05/01/19 19:21:47
C++Builderではどのように書けばいいのでしょうか?
http://forum.nifty.com/fdelphi/samples/00067.html "ボリューム調整 (WAVE)"
WAVE出力のボリュームをコントロールします。
Value の値は 0〜255 までを与えて下さい。
0 が無音で、255 が最大出力です。
エラー処理はしていません。
ステレオ時の左右バランスは中央になります。
Uses に MMSystem を書き加えて下さい。
function WaveVolume(Value: Integer):MMRESULT;
var
i: dword;
begin
i := (((Value*256)+Value)*256+Value)*256+Value;
result := WaveOutSetVolume(0,i);
end;
97/10/20(Mon) 10:30pm STAR☆CAT(BYJ02333)
Original document by STAR☆CAT 氏 ID:(BYJ02333)
これを1時間眺め続ければ必ず分かる DelphiなんてCとよく似てるじゃん
718 :
デフォルトの名無しさん :05/01/19 19:27:27
TImageのDragModeをdmAutomaticにして他のコントロールにドラッグする時に ドラッグ最中はDragCursorで指定されたカーソルになりますが、この時にTImageで表示している画像をカーソルにする方法を教えてください
720 :
デフォルトの名無しさん :05/01/20 04:23:46
Imageコンポーネント上でのラバーバンドの作り方を教えてください
pmXor
ラバーバンドって何?
723 :
デフォルトの名無しさん :05/01/20 13:16:34
Cursorプロパティーのヘルプの例に載ってるように const crMyCursor = 5; Screen->Cursors[crMyCursor] = LoadCursor(HInstance, "MAINICON"); Cursor = (TCursor)crMyCursor; とやってるのですが、マウスカーソルが変わってくれません。 どこがまずいのでしょうか?
724 :
デフォルトの名無しさん :05/01/20 14:38:00
>>724 問題なのはSwitch case文だろ。
警告をよく見ろ
726 :
デフォルトの名無しさん :05/01/21 00:09:49
フォームの情報とかをファイルとかに書いておいて、再起動したときに簡単にフォームが復元できる 方法ありますか? フォームとかフレームがたくさんあるので、面倒なんで。
727 :
デフォルトの名無しさん :05/01/21 00:30:34
独習C++3版という教科書をしようしている大学生です。正直教科書を読んでも、 あまり分かりません。なんか、勉強のコツみたいなものありますか? 皆さんは、どのようにして、勉強しましたか?
>>724 表示される。問題茄子。
>>725 BEGIN_MESSAGE_MAPマクロがswitch文に展開されるのしらんのけ
>>723 MAINICONがカーソルじゃなくてアイコンだからでは
>>727 スレ違いの上、ageる。
そのニワトリ並みの注意力理解力を改善しないとどうにもならない。
それほどのことかね
なんかあったんでしょ。ママに叱られたとか。
733 :
デフォルトの名無しさん :05/01/21 16:37:21
Form1,Form2,Form3があるとして、これを以下の関数で void Func( int Number ) { form = new Tform(this); ↑ Numberで作成するフォームを作成 } こんなことするにはどう記述すればいいですか?
734 :
デフォルトの名無しさん :05/01/21 17:28:27
>>733 void Func( int Number )
{
TForm *form;
switch(Number)
{
case 1:
form = new Tform1(this); break;
case 2:
form = new Tform2(this); break;
case 3:
form = new Tform3(this); break;
}
}
>>735 嗚呼、やっぱりcaseでわけるしかないんですね・・・
ありがとうございました、これでふんぎりつきますた
Delだとクラス参照型の配列でも作っておけばいいんだけど。
結局作らなきゃ行けないから大して手間は変わらん。 NameToTypeとかあれば別だけど
740 :
デフォルトの名無しさん :05/01/21 19:48:29
C++Builder6.0でコマンドプロンプトのプログラムを作ることは可能でしょうか? 新規作成を一通り探してみたのですが、 該当しそうな項目がバッチ?ぐらいしか見当たらなくて。
>>740 一通り探してみてそのざまなら、
プログラムするのやめた方がいいと思うぞ。
>>740 コマンドプロンプトからbcc32 hoge.cpp
「hogeは数値ではありません」などの BCB特有のエラーのダイアログを 出さないようにするにはどうすればよいですか?
catchして捨てる
>>745 エラーが出なくなりました。
ありがとうございます。
747 :
デフォルトの名無しさん :05/01/21 21:54:21
AフォームからBフォームに構造体の値を引き渡すには、 どうすればいいのでしょうか? (フォームのコンポーネントに値を渡す以外の方法で)
そのまま代入する
なんか急にこのスレ活発になった(ほとんど教えて君だが) 気がするんだが、なにかあったのか?
750 :
747 :05/01/22 00:21:47
>>748 Aフォームでa構造体を宣言
Bフォームでb構造体を宣言
のようにすると、AをBにインクルードしてもコピーできないのですが、
宣言方法がまずいですか?
もはやそれBuilderとかそういう問題じゃなくてC初心者の質問だし
いちおーC++初心者で無い毛 つう突っ込みはさておき、 冬休み終わってがっこの試験が近いんで無い毛? 2chに限らずどこの掲示板も教えてクン急増中だわ
>>750 宣言したのはヘッダファイル内かソースファイル内か
さらにはそれらのどのスコープで宣言したのか。
コピーしたいのはどっちの構造体のなのか、
どのようにコピーしようとしたのか、
なーんも判らん。
それが判らんかったら誰も返事のしようが無い罠。
>753 質問の内容から、その程度のことも理解していない事わかるだろ。
学校の授業でBuilder使わせてる所なんてあるのかな・・・ 上でコンソールとか出てるからコンソールの宿題をBuilderでしてるだけなんだろうか
BCBもここまで落ちぶれたか・・・ 愛してるのに・・・
>>756 の脳みそが落ちぶれてきただけ(プゲラリーノ
758 :
デフォルトの名無しさん :05/01/22 12:15:15
>>758 フォームの最大化ボタン, 最小化ボタンのクリックでイベントをおこすには
どうすればいいのでしょうか?
759 :
デフォルトの名無しさん :05/01/22 15:20:02
>758 Win32API質問箱へど〜ぞ。
Builder6で、サンプルソース見ると TFormを継承したMainFormのコンストラクタに virtual が付いてるのがけっこうあるんですが、 コンストラクタにvirtual付ける意味ってあるんですか。
761 :
デフォルトの名無しさん :05/01/24 01:39:55
762 :
デフォルトの名無しさん :05/01/25 09:35:59
for文でコンポーネントをまとめて処理するにはどうすれば良いのでしょう たとえばこんな風に出来ないでしょうか for(i=1;i<11;i++){ CheckBox(i)->Checked = true; } よろしくお願いいたします。
764 :
sage :05/01/25 10:36:53
>>763 ありがとうございます。
FindComponentで出来ました。
766 :
デフォルトの名無しさん :05/01/25 17:50:01
超faq
768 :
デフォルトの名無しさん :05/01/26 01:55:34
TPopupMenu に TMenuItemを追加するときなんですが, TMenuItem.Captionを"日本語","hoge"などとしておいても, メニューが表示されるときには,"日本語(&X)","&hoge"に勝手に変わってしまうのですが, 勝手に変わらないようにする手段はありますか
AutoHotkeysだよ。 デフォでOFFにしてほしいよね。これは。
TPopupMenu.AutHotKeys = maManualで出来ました
Thanks
>>769
771 :
デフォルトの名無しさん :05/01/26 10:36:36
Formを最大化した時スクロールバーを消したいのですが、FormのサイズをScreenに合わせていると タスクバーの領域も含まれてしまいます。 FormのWidowStateが変更になった時にAutoScrollを変えるイベントはどこに書けば良いでしょうか。 よろしくお願いいたします。
OnResizeみたいなの
773 :
デフォルトの名無しさん :05/01/26 11:48:21
TFormのNameプロパティでフォームを破棄する方法を教えてください
774 :
デフォルトの名無しさん :05/01/26 11:55:28
Editの入力制限ってプロパティでできますか? 数値のみ限定とかみたいなことがやりたいのですが。
775 :
771 :05/01/26 12:00:10
>>772 OnResizeでやってみましたがWindouStateを取得するタイミングが合わずうまくいきません。
単純にタスクバーを除いたScreenサイズを取得する方法は無いでしょうか。
>>771 最大化・最小化などを捕まえるならWM_SYSCOMMAND。
>>775 スクリーンサイズの取得ならGetSystemMetrics()。
778 :
デフォルトの名無しさん :05/01/26 13:08:35
766>> プロジェクト→オプション→ディレクトリ→ライブラリパス→Indy追加 してます?
779 :
デフォルトの名無しさん :05/01/26 13:10:34
Editに16進数を表示するにはどうすればいいでしょうか?
780 :
771 :05/01/26 13:48:10
始めまして、質問させていただきます。 C++ Builder6でWindowsXPの視覚スタイル を適用するにはどうやればいいですか? お願いします。
manifest
>>782 リソースを埋め込む?方法を教えてください
784 :
デフォルトの名無しさん :05/01/26 17:52:30
BREGEXP DLLを使おうと思っているのですが、 [C++ エラー] bregexp.h(19): E2232 <定数> メンバー 'bregexp::splitctr' のクラスにコンストラクタがない とエラーがでます。 C++Builderで使用する場合は、加工しないと ダメなのでしょうか?
そうです。加工済みのやつもどっかに転がってたはず
786 :
デフォルトの名無しさん :05/01/26 19:35:48
>>785 加工済みのやつもあるのですね。
探してみます。
ありがとうございます。
とりあえずぐぐって3件ほど落としたやつはダメでした(汗
787 :
デフォルトの名無しさん :05/01/26 19:37:50
フルカラーのビットマップをEXEファイルに埋め込むには、プロジェクトのRESファイルに そのビットマップファイルをリンクすればいいのですが、RESファイルの編集をするImage Editorと言うツールがC++Builderについているのですが、フルカラーのビットマップは、 扱えません。 それに、ペイント機能もおまけ程度のもので、お世辞にも使いやすいとは言えません。 なので、他のペイントソフトで作ったビットマップファイルをRESファイルにリンクしちゃい ます。 やり方は、まず、プロジェクトがあるディレクトリにプロジェクト名以外の適当な名前のリ ソース定義ファイル(拡張子”rc”のテキストファイル)を作ります。 そして、その内容に MYBMP BITMAP と書いて その後ろに リソースとして取り込みた いビットマップファイル名を書きます。 MYBMPは識別子なのでほかの名前でも構いません。 例 ファイル myresrc.rc に以下を記載 MYBMP BITMAP NEKO.BMP 注意1:ファイル名は同一ディレクトリにない場合フルパスで指定します。 注意2:2バイト文字を含むパスやファイルは、指定できません。 そして、以下の文をプロジェクトのソースファイル(Project1.cppなど)に、記載します。 USERC("myresrc.rc"); これで、再構築すれば、EXEファイルにNEKO.BMPがリンクされます。 リンクされたBITMAPオブジェクトの使い方で1番簡単なの は、TBitmap::LoadFromResourceNameメソッドを使う方法です。 //リンクされたビットマップをImaga1に表示 Image1->Picture->Bitmap->LoadFromResourceName((int)HInstance, "MYBMP");
788 :
デフォルトの名無しさん :05/01/26 19:40:04
WaveファイルをEXEファイルに埋め込むには、まず、プロジェクトがあるディレクトリに プ ロジェクト名以外の適当な名前のリソース定義ファイル(拡張子”rc”のテキストファイ ル) を作ります。 そして、その内容に MYWAVE WAVE と書いて その後ろに リソースとして取り込みたい Waveファイル名を書きます。 MYWAVEは識別子なのでほかの名前でも構いません。 例 ファイル名 myresrc.rc に以下を記載 MYWAVE WAVE POPO.WAV 注意1:ファイル名は同一ディレクトリにない場合フルパスで指定します。 注意2:2バイト文字を含むファイルは、指定できません。 そして、以下の文をプロジェクトのソースファイル(Project1.cppなど)に、記載します。 USERC("myresrc.rc"); これで、 再構築すれば、EXEファイルにPOPO.WAVがリンクされます。 リンクしたWAVEオブジェクトを鳴らすには、PlaySound関数を使います。 PlaySound("MYWAVE", HInstance, SND_RESOURCE | SND_SYNC); 最後のパラメータにSND_RESOURCEは必ずつけてください。 これは、リソースの "MYWAVE" を鳴らすって意味のフラグです。
790 :
デフォルトの名無しさん :05/01/27 08:53:42
How can I create a simple CD player?
http://thunder.prohosting.com/~cbdn/mm003.htm Applies To: C++Builder 1 or higher
Category: Knowledge Base
1.
Start a new application.
2.
Add a MediaPlayer. Set its DeviceType to dtCDAudio and its
FileName to the device path of your CD-ROM drive. Finally,
enable the AutoOpen property.
3.
Edit the OnCreate event of your form:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
MediaPlayer1->TimeFormat = tfHMS;
}
4.
Add a Timer. Double-click its OnTimer event:
#include <mmsystem.h>
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
int Pos = MediaPlayer1->Position;
String track, min, sec;
track = FormatFloat("00", MCI_HMS_HOUR(Pos));
min = FormatFloat("00", MCI_HMS_MINUTE(Pos));
sec = FormatFloat("00", MCI_HMS_SECOND(Pos));
Caption = "[" + track + "] " + min + ":" + sec;
}
791 :
775 :05/01/27 10:15:23
>>789 WorkAreaRectでうまくいきました。
ありがとうございます。
792 :
デフォルトの名無しさん :05/01/27 14:10:02
数値だけとかアルファベットだけとかIPアドレス定型とかメールアドレス等の、 入力チェックのできるコンポーネントってないでしょうか? 地道にロジックで弾くしかないですか?
探す手間より自分で関数作った方が早い希ガス エラーでたら例外出すような 数値ならStrToIntでできるけど
でも、いかにもありそうなコンポーネントなので、探した方が早い肝酢。
>>792 TMaskEdit
ま、マスクそのものは自分で指定する必要があるが。
TStringListの変わりに見えないところに配置したMemoコンポーネントを使うのはまずいですか? メモリ食いソフトになりますか?
それでデバッグ効率が上がるんならそれでいいじゃない
特定ディレクトリのファイルリストをひっぱってくるのに、 見えない FileListBox 使ったりするけど、バレないバレない。
ただMemoだとある行数以上は格納できなかったりするから問題かな
TStringListの代用にTMemoを使いたがる人って多いけど、理由がよくわからない。
内容が確認できるから、最初の頃は俺もTMemo使ってたなぁ
>>792 >数値だけとかアルファベットだけとかIPアドレス定型とかメールアドレス等の、
>入力チェックのできるコンポーネントってないでしょうか?
数字のみならテキストボックスのウィンドウスタイルの変更でいける。
IPアドレスはコモンコントロールが存在する。
805 :
デフォルトの名無しさん :05/01/27 19:07:15
英語かよ、つかえねーな
806 :
デフォルトの名無しさん :05/01/27 19:10:48
>805 日本語化ワ簡単デス!
807 :
デフォルトの名無しさん :05/01/27 22:02:18
すんません 実行ファイル(.exe)のパスからアイコンを取得して Imageに表示する方法、もしくはサンプルのある場所 を教えてください。
809 :
デフォルトの名無しさん :05/01/28 03:24:43
if Assigned(Form2) then Form2.Release; C++Builderではどのように書けばいいのでしょうか? if ( Form2 ) { Form2->Release(); }
810 :
792 :05/01/28 08:49:54
>>ALL 教えてくださった皆様ありがとうございます。 参考にさせていただきます
811 :
デフォルトの名無しさん :05/01/28 09:24:21
void __fastcall TMainForm::SelectCell(TObject *Sender, int ACol, int ARow, bool &CanSelect) フォームのListのクラスを呼び出したいのですが、 どうやったらできますか? TMainForm.SelectCell(); みたいな形で呼び出そうとしたのですがうまくいかなくて。 引数にも何をセットしていいのかよくわかりません…
>>811 それはTCustomDrawGridクラスがイベント発生時に自分で呼び出すメソッドで勝手に呼んでも意味ないと思うが‥‥
ちなみにSenderはグリッドのインスタンスだから必要な場合は適当な型にキャストして使用。
813 :
デフォルトの名無しさん :05/01/28 11:50:22
>>812 なるほど!
理解できました!
ありがとうございました。
814 :
デフォルトの名無しさん :05/01/28 16:03:13
コンボボックスで1件目のデータをデフォルト 表示しようと思ってプロパティを色々いじってみたのですが、 うまくいきません。 どの項目を設定すればいいのでしょうか?
815 :
デフォルトの名無しさん :05/01/28 16:05:38
ItemIndex
816 :
デフォルトの名無しさん :05/01/28 16:20:26
>>815 設定しても-1に戻ってしまうのですが、
どこかと連鎖設定になっているのでしょうか?
817 :
デフォルトの名無しさん :05/01/28 16:48:54
ItemIndexに0を入れてからリストを動的に作成してるとか
818 :
814 :05/01/28 17:09:14
>>817 おっしゃられた通り、
リストを作成してからセットしないとダメですね。
解決しそうです!
ありがとうございます。
Button1のOnMouseDownイベントをプログラムから呼び出す方法を教えて下さい
Performでできるかな?
BM_CLICKとか
>>819 イベントハンドラも関数だから普通に呼び出すだけ。
引数は自分で適宜設定する。
823 :
デフォルトの名無しさん :05/01/29 13:01:04
初歩的な質問ですいません。 char *c; と char* c; と違うのでしょうか? 違うならどの様に違うのでしょうか。 よろしくお願いします。
同じ
C++ではスペースは無視される
わきゃない
char*c; charc;
ちゃらっく
>>823 「char* c」 も 「char *c」も 結局、結果は同じです。
ただ、 char* c, d; //cはポインタ変数、dは単なるchar型変数
char *c, *d; //ともにポインタ変数
というように、変数の宣言で上の段のようなことが起こるので、そこさえ
気をつければよいでしょう。
裕美子は思うに、int *p;
int test;
p = &test;
*p = 3;
なとき、従来の変数宣言と代入に比べて、一行目と四行目の記述の違和感があるので
ストラップ先生が「char* c」的な記述を始めたのかなと思います。
ん?
>>831 >一行目と四行目の記述の違和感があるので
藻前の存在が一番違和感あるんだよ!
835 :
デフォルトの名無しさん :05/01/29 19:40:27
TStringListの要素のObjectには、 TObject*由来以外のポインタをつっこんでも大丈夫ですか?
>>835 どうせ保管しておくだけのスペースだから問題はない。
でも、キャストがめんどい。
BCB6Proで、WinSight32を使ったところ固まってしまいました んで、強制終了させたあともう一度使おうとしたんですが、なぜか実行できないんです 再起動をすると実行はできるようになるんですが…… ws32.exe以外にも、なんか走ってたりするんですかね?
WinSightは挙動が変すぎ
ありがどうございました
842 :
デフォルトの名無しさん :05/01/30 21:32:39
なんていうか、、、アレですね。
>>840 さんのリンク先のアプリを入れて見たんですよ、、、
プロパティは、、表示してくれるが、、、
。。。メッセージが、、、表示されね(W98)
ウインドウスタイルも変化してくんね。
1時間ほど粘ってみたけど駄目でしたわ、、なんでだろ、、
844 :
823 :05/01/31 14:36:58
了解しました。 初心者なもので初歩的なところでいろいろ悩んでしまいます。 助かりました。ありがとうございました。
845 :
デフォルトの名無しさん :05/01/31 17:43:07
TOpenDialogでExecuteの前にInitialDirを設定しても 以前にOKしたフォルダから変わってくれないのですが、 どうやったら変えることができますか?
846 :
デフォルトの名無しさん :05/01/31 18:21:03
>845 何かよくわからんけどカレントディレクトリを変更すればいいんでない?
847 :
デフォルトの名無しさん :05/01/31 18:23:18
>>846 OptionsのofNoChangeDirをtrueにしてもAPIでディレクトリを1つ上の階層にしてからやってもダメですた。
ちなみにSaveDialogは普通にInitialDirで指定したフォルダに移動してくれます
>>845 Delphi5だけどそんなことなかったなぁ。
試しにFormをCreateするときに設定してみたらどうなる?
849 :
デフォルトの名無しさん :05/01/31 20:16:45
>>848 FormのCreate時だと動的に変更できないとおもうんだがこのやろう
850 :
デフォルトの名無しさん :05/01/31 20:41:22
つーかTOpenDialogくらい newで動的に呼び出せよ。
>>849 >>848 は原因の切り分けのために「〜してみたらどうなる?」と言っているんじゃないのか?
つか「このやろう」って回答者にケンカ売ってるつもりなのか?
>>845 そらInitialDirは文字通り最初に実行したときの話だ罠。
2度目以降はFileNameに代入されたパスが優先される。
なので強制的にフォルダを指定したかったら
FileNameをフルパス指定すればいい。ファイル名は"*.*"なんかでごまかす。
ところで、TSaveDialogも同じ動作のはずだけど?
853 :
デフォルトの名無しさん :05/02/01 10:17:45
>>852 確かにFileNameにフルパスを入れたら希望通りの動作をしましたが
ファイル名を空欄にする方法ってないですかね?
パスだけ(最後\に)にするとExecuteはスルーされますた
>>853 あー、寝て起きたら気がついた。
FileName="";
これでInitialDirが開くはず。
855 :
デフォルトの名無しさん :05/02/01 13:44:52
>>854 (゚∀゚)キタ--!!!
うおおお、これで望み通りになりますた。
しかしFileNameのパスが優先されるって上で言ってたんだからこうすれば良いって言われてから気づいたなあ〜
ありがとうございますた。
856 :
デフォルトの名無しさん :05/02/01 14:51:16
EditBoxのOnkeyUpまたはOnKeyDownのイベントでENTERキー入力を 検出する場合、上記のイベント関数内で if (Key == VK_ENTER) と入れてみたのですが「未定義のシンボル VK_ENTER」と出てコンパイル出来ません。 VK_ESCAPEなら出来るのですがEnterキーは検出不可能なのでしょうか?
VK_RETURN
858 :
デフォルトの名無しさん :05/02/01 14:58:53
>>857 即答ありがとうございます!解決しました。
今日はぐっすり眠れそうです。
ちょっとワロタ。ごめん
PanelにEditを置いて、PanelのPopupMenuを適当なメニューにしたときに EditのPopupMenuがPanelと同じになってしまいます。 Editは何も指定していないときのポップアップメニューを出したいんですがどうしたらいいでしょうか。 Edit->PopupMenu = NULL;とかやってもだめみたいなので…
>>860 プロパティタブじゃなくてイベントタブ見てみれ
hxxx = GetDlgItem(hwnd, IDC_LIST); とやろうとしたんですが、コンパイルしたところ「IDC_LISTは未定義」と言われました IDC_LISTって、VK_RETURNみたくこっちが定義しなくても使えるものじゃないんでしょうか?
>>862 そう。それは参考にしたソースのプロジェクトでローカルに作られたもの。
VCのIDEがコントロールのIDに、そういう名前の付け方をする。
ありがとうございました。もっぺんサンプルソースから見直します。
mutableやvolatileってどういう時に使用しますか。
必要な時
867 :
デフォルトの名無しさん :05/02/03 13:35:49
横からゴメソ
>>862-863 を見て思ったんだけど
こういうVC-BCBの方言みたいなもんの対照表ってどっかにないの?
それともいっこずつ調べて潰していくしかないのかなぁ
868 :
デフォルトの名無しさん :05/02/03 14:44:45
TEditにフォーカスがあるときにカーソルを表示しない方法を教えてくださ
>>867 これは方言というか... 異なる開発環境なので、個別対応するしかないでしょう。
なお、862 のネタは、VC で作ったプロジェクト毎、すなわち .H ファイル込みで持ってきたなら
BCB でもコンパイルはできたはず。IDC_LIST は(おそらく)VC のダイアログデザイナが自動生成した
識別子で、それは .H に無いと VC もコンパイルできない。
教科書の、コード部分だけを BCB にコピーしたため問題が起きた。のかと思う。
個別に尋ねるしかないかと。
>>868 >TEditにフォーカスがあるときにカーソルを表示しない
もうちょい詳しく。
VCL の話なので、Delphi 系スレに持っていったほうがよいかも。
871 :
デフォルトの名無しさん :05/02/03 14:55:38
>>870 TEditでは直接入力せずにTEditのKeyPressでEnterが押されるかClickイベントでキーパッドみたいなのを出して入力したいって
おもっていんだけど・・・よくよく考えるとカーソルを表示しないとTEditにフォーカスがあるかどうかわからんか
まあTEditの背景色を変えて現在フォーカスがあるって表現できないこともないか
>>871 むむ。(点滅する)キャレットをとめたいのかな?
カーソルの変更は簡単なので省略してよいね?
Edit コントロールの SelectAll メソッドはどう?
874 :
デフォルトの名無しさん :05/02/03 15:22:58
>>872 そそ、そです。カーソルってアレです、マウスのじゃなくてキャレットですね、点滅を止めたいと言うかあいつの表示自体をなくしたいのですあ
>>873 SelectAllってTextを全選択するアレでしたっけ?それってその場で→←キー押されると解除されそうなんですg
SelectAll で全選択(■■■■状態)にし、後は KeyDown を含めてコントロール側で処理。 かな? フォーカスが移動した後(Edit コントロールが内部的に ShowCaret した後)HideCaret すれば 消えるようだけど。
876 :
デフォルトの名無しさん :05/02/03 15:39:35
Edit コントロールのコードが公開されていない以上、メッセージフック的なアプローチは ある点から先は実装依存、OS(のバージョン)依存となり、汎用性が損なわれます。 一般論として、こういったコントロールを作る場合には、Edit コントロールの上に自前のコントロールを 乗せるか、またはフォーカスが Edit コントロールに移った時点で全部横取りするか。 その上で、必要なメッセージだけを本来の Edit コントロールに送り込むように作ることになります。 なお、ユーザーインターフェースを OS 標準から変えることにアレルギーを持つ方もいらっしゃいます。 また視覚障害に対するアクセスサービスのことも考慮すべきかも知れません。
ってかTEditじゃなくてTPanel使えば良いじゃん
879 :
デフォルトの名無しさん :05/02/03 15:47:21
いやTPanel使ってたんだけどTPanelってフォーカスないからクリックで入力してキーパッドとか出した後に 違う場所(元々フォーカスがあったコントロール)にフォーカスがうつるのがアレって言われて、まあそんな感じ
880 :
デフォルトの名無しさん :05/02/03 16:50:22
OnEnterイベントでHideCaretやってもカーソルが消えてくれない(ノД`。) HideCaretを呼ぶタイミングが悪いんですかね?
882 :
デフォルトの名無しさん :05/02/04 11:59:24
883 :
デフォルトの名無しさん :05/02/04 13:36:27
TListViewで指定行の文字色を変更する方法を教えてください
885 :
デフォルトの名無しさん :05/02/04 14:58:23
887 :
デフォルトの名無しさん :05/02/04 16:30:53
RadioGroupのItemindexの指定番号変更できますか? 通常は0,1と順番になっているものを 1,0としたいのです。
プロ版を売ってるところしりませんか? VB6から卒業したくなりました。
知ってるよ
>>891 ありがとうございます。 m(_ _)m
ところで、アカデミックって何が違うんですか?
フォームの最小化を検知する方法を教えて下さい 泣きそうです
>>895 ありがとうございます。 m(_ _)m
作った物は売れないじゃん・・・orz
>>896 そういうことは売れるもの作ってから考えろ。
うは、大学の研究室はアカデミックパックで作ったもの売ってたぞwwwwwww
>>898 法的措置を検討いたしますので詳細を
 ̄ ̄∨ ̄ ̄ ̄ ̄ ̄
∧_∧ ニヤニヤ
( ・∀・)
( )
| 某|
(__)_)
まぁ大学ではアカデミックパックのそれ以前に、ひとつのBCBを全員のPCで使ってるからなぁ
どこの大学だよ(;´Д`)
>>893 BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(WM_SYSCOMMAND, TMessage, WMSysCommand);
END_MESSAGE_MAP(TForm)
void __fastcall TForm1::WMSysCommand(TMessage& Msg)
{
if(Msg.WParam == SC_MINIMIZE){
//
}
TForm::Dispatch((void*)&Msg);
}
C++BuilderやBCC5.5で使えるXSLTプロセッサってある?xalan-Cは VCだけみたいだし、、、
>>903 お、ありがとうございます。
しかしこれではFormの最小化ボタンを押した
時はイケますがタスクバーをクリックして最小化
した時には反応しませんね。
どうか後者のほうでもイケる方法をお願いします。
まだ泣いてます。
delphiコンポーネント側(?)のメモリエラーを回避するために、 NkMMってのを見つけたんですけど、うまく使えないです。 環境は、 Borland C++ Builder6 Pro + アップデートパック #4 です。 NkMMの経験者います?
>>905 void __fastcall TForm1::FormCreate(TObject *Sender)
{
Application->OnMinimize = Minimized;
}
void __fastcall TForm1::Minimized(TObject *Sender)
{
// 最小化したときの処理
}
こうすれば最小化ボタンを押した時も
タスクバーをクリックして最小化した時もいけるのでは?
>>907 なりましたありがとう
こういうコンポーネントのイベントタブ
に記載されてないイベントハンドラは
どうやって知っているのでしょうか。
>>908 TApplicationEventsをフォームに貼ると
オブジェクトインスペクタにTApplicationのイベントが
表示されるよ。
厳密にはTApplicationのイベントをインターセプタ
してるんだけど。
TApplication TScreen TMouseなんかは
使い方知ってると便利なことが多い。
この辺は開発者ガイドには一応書いてあるけど
まぁ、読んだことが無い奴の方が多いだろうし、
読んだことがあっても必要なときに思い出せるか
どうかw
「コンポーネント活用ガイド」みたいな本で知るか
掲示板で教えてもらって覚えたって人が多いんじゃ?
>>909 なるほど、奥が深い
まだ覚えたてでなんにもわかんないんで
親切に教えて頂いて感謝しています。
おかげで望みのものができそうです。感謝
TNMHTTPコンポーネントで User-Agentを任意に変更するにはどうすればよいのでしょうか? nmhttp->SendHeader->Add("User-Agent:hoge"); nmhttp->Get(fuga); では駄目でした。
913 :
デフォルトの名無しさん :05/02/08 19:56:15
TStringGridで、反転選択されている文字列数って取得できないのでしょうか? TEditやTMemoなら、Edit1->SelLengthで取得できるのに・・・・。 BCB5
>>913 文字列の編集はStringGrid内に置かれたCustomEditで行われているので、そのSelLengthで取得
for (int i = 0; i < StringGrid1->ControlCount; i++)
{
TCustomEdit* edit = dynamic_cast<TCustomEdit*>(StringGrid1->Controls[i]);
if (edit)
Caption = IntToStr(edit->SelLength);
}
>>913 TStringGridの文字列編集は、TStringGridがTInplaceEditを
呼び出してやってる。
TInplaceEditにはSelLengthプロパティが存在する。
だけど、このTStringGridがもつTInplaceEditのインスタンスは
privateなので、触るには派生コンポつくる必要がある。
オレだったら面倒なので別の手を考えるw
>>914 げっ、Controlsで取れるのか。しらんかったよ。
しかし、それでいいのか?w
?
TCustomGrid::InpaceEditorがprotected継承されているのに そのポインタをpublicなControlsで取得できるのは、 情報隠蔽の原則から言えば美しくないのではないかと。
Parentを設定したら自動的にControlsに追加されるという仕組みが大元にあるわけで、StringGridがわざわざ公開してるわけではないしな。 全ての子コントロールにアクセスできるControlsという物を用意してる時点で、元々隠蔽するつもりはないだろう。
出来ました。 この方法ならある程度、Editでやっていることと同じことができますね。 今までTStringGridでTEditみたいに扱いたいけど、扱えない〜ってことがあって困っていました。 ありがとうございました。
えーと、InplaceEditor のインスタンスは変更可能なので、自分で TSpecialInplaceEditor を定義し、 それに差し替えて使うのが正当かろ。
ちょっと間違えたのと、D2005 で見てました。BCB6 かぁ
確認しました。TCustomStringGrid で、InplaceEditor プロパティが Private で定義されています。 TStringGrid では可視性を変更していないから使えない。 TSpecialStringGrid を定義して、InplaceEditor プロパティの可視性を Public にしてあげれば 外部から、その時点で有効な InplaceEditor のインスタンスに参照できます。 これが安全。トリック使うより、継承しなさい。
926 :
デフォルトの名無しさん :05/02/09 12:03:16
TCustomStringGridなんてBCBにはないぞ。 TCustomGrid::InplaceEditorのことならprotectedだ。 プロパティでない生のポインタはprivateだが。
928 :
デフォルトの名無しさん :05/02/09 15:39:40
TStringGridでマウスがのってるセルによってHintの内容を変更し表示する方法を教えてください
>926 あたりへ。もし質問の意味を誤読しているのなら許してくれ。 CBuilder6 を起動して コンポーネントの新規作成 - 上位クラスを tstringGrid - クラス名を TSpecialStringGrid - その他はデフォルトのままか好きな値に。 インストールボタンを押し既存の "dclusr" パッケージに入れる。 コンパイル後、今作った SpecialStringGrid.h をエディタで開き TSpecialStringGrid コンストラクタ __fastcall TSpecialStringGrid(TComponent* Owner); の一行下に __property InplaceEditor; とだけ追加。 パッケージをコンパイル。無事にパッケージを作成できたらいったん全ての プロジェクトを閉じ、新たに VCL フォームアプリケーションプロジェクトを 作成。 上で作った TSpecialStringGrid をフォームに落とす。(デフォルトなら sample ページにある) InplaceEditor のテストなので、Options の goEditing を True に設定。 フォーカスが StringGrid から出ると、Inplaceeditor が破棄されるのでテストしづらい。 だから、Grid の脇に TLabel をおき、それの OnMouseMode に if (SpecialStringGrid1->InplaceEditor) SpecialStringGrid1->InplaceEditor->SelectAll(); と記述。これでマウスをラベルの上に移動するとアクティブなインプレースエディタの 文字列が全選択となる。
それにしてもBCBのヘルプは出来が悪いですね。 メソッドが吐く例外が何なのかヘルプから分からない。
すいません 文字列の中に " や \ を代入するには どうしたらいいでしょうか。 泣きそうです。
932 :
デフォルトの名無しさん :05/02/10 13:52:27
\" \\
>>933 そうじゃなくてLoadFromFileから参照クリックしても
EFOpenErrorが出てこないし、本文にもこのメソッドは
EFOpenErrorを吐く可能性がありますとか書いてない。
>>935 それがふつー。
全エラークラスを把握してるのはJava言語(とそのIDE)のみ。
937 :
デフォルトの名無しさん :05/02/10 14:38:04
自分以外のウィンドウでマウスのクリックを検出する方法を教えてください
\ ∩─ー、 ==== \/ ● 、_ `ヽ ====== / \( ● ● |つ | X_入__ノ ミ そんなエサで俺様がクマ――!! 、 (_/ ノ /⌒l /\___ノ゙_/ / ===== 〈 __ノ ==== \ \_ \ \___) \ ====== (´⌒ \ ___ \__ (´⌒;;(´⌒;; \___)___)(´;;⌒ (´⌒;; ズザザザ (´⌒; (´⌒;;;
941 :
デフォルトの名無しさん :05/02/10 15:43:32
すんません、リストボックスの選択状態のアイテムの背景色(青)を変えるには どうしたらいいでしょうか? OnDrawItemイベント内で if(((TListBox *)Control)->Selected[Index]==true){ ((TListBox *)Control)->Canvas->Brush = clGreen; }else{ ((TListBox *)Control)->Canvas->Brush = clWhite; } とやっても一度選択してしまうとずっとclGreenのままになってしまいます。
>>941 if(((TListBox *)Control)->Selected[Index]==true) を
if (State.Contains(odSelected)) にする
>>938 マウスのボタンが押されたかどうかを調べるだけならタイマーと
GetAsyncKeyStateでいけそうだけど、凝ったことするんなら駄目
そうで脛。
TListBox の Add メソッドで行追加する時に、行ごとに色変える事って出来ますか? それがダメなら全部追加した後に複数の行の色だけ変更できてもいいんですが。
>>945 わーい、できました!! (`-`+)
あとは奇麗に横幅にスペース入れれば出来そうです!ヽ(´▽`)ノ
947 :
デフォルトの名無しさん :05/02/11 13:17:22
CppWebBrowserで表示されているページを印刷するときに、 印刷のダイアログボックスを出さずにすぐに印刷することはできますか? IEの印刷ボタンのように。 次のようにすると、いちいちOKボタンを押さないと印刷できません。 CppWebBrowser1->ExecWB(Shdocvw_tlb::OLECMDID_SELECTALL, Shdocvw_tlb::OLECMDEXECOPT_DODEFAULT, TNoParam(), TNoParam());
948 :
947 :05/02/11 13:18:48
間違えました。 CppWebBrowser1->ExecWB(Shdocvw_tlb::OLECMDID_PRINT, Shdocvw_tlb::OLECMDEXECOPT_DODEFAULT, TNoParam(), TNoParam()); でした。
949 :
デフォルトの名無しさん :05/02/11 14:13:04
TActionMainMenuBarに「hoge(&H)」というアイテムを設置し、 「Alt+;」というショートカットキーを割り当てたとします。 この状態で、 1.「Alt+;」を押して処理を実行 2.結果が反映される(例えばTEditやTMemoに"hoge"が挿入される) 3.「;」を離してから「Alt」キーを離す。 という手順を取ると、フォーカスがTActionMainMenuBarに 移ってしまうようで元に戻りません。 逆に「Alt」キーを離してから「;」を離すと元に戻ります。 TMainMenuでは同様の現象は起こりません。 SetFocus()でもダメでした。 どうにかしてフォーカスを元に戻したいのですが、どうしたら良いのでしょう?
c++builderの実行ファイルを配布したいのですがpersonal以上は高すぎてこまってます。 ほかに安いのないですかねw
>>950 Personalでも配布できるぞ。金取って配布はダメだけどな。
ばれないばれないwwwwww
ばれるような仕掛けないの?w
「personal以上」(pertsonal<=)とか「金鳥鯛」(可読性を考慮しない)とか、 プログラマとして才能なさそう。
>>956 話し言葉だろ。そんなことにつっかかるおまいも3流プログラマの臭いがプソプソw
確かにプログラマ(仕事としての)としてはセンスなさそうだな。 しいて言えば厨房だ
べつにいいじゃんコード書ければ 凄腕は変わり者が多いよ
961 :
デフォルトの名無しさん :05/02/13 13:19:16
かちゅ〜しゃの板ボタンのような、ボタン群を実現するにはどうすればいいのでしょうか。 TToolBarでFlat=trueにしたら似たようなものが出来ましたが、ボタンの幅がどのボタンも全部同じになってしまいます。 Caption文字列の長さに応じて、ボタン幅を変更したいのですが。
962 :
デフォルトの名無しさん :05/02/13 15:02:02
BCBがdelに統合されたら当然アクティベーション必要になるんだろうな・・・
BCB6でアクチ必要ですが?
>>961 TToolButton::AutoSize
>964 さんくすです。うまくできますた。
>>953 金取るなら、その収入を見越してPro買えばいいじゃん。
967 :
デフォルトの名無しさん :05/02/14 13:56:04
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { //多重起動を禁止 mx = CreateMutex( NULL, true, "aaa"); if( GetLastError() ) { return 1; } try { Application->Initialize(); Application->CreateForm(__classid(TForm1), &Form1); Application->ShowMainForm = false;//フォームを表示しない Application->Run(); } catch (Exception &exception) { Application->ShowException(&exception); }
968 :
967 :05/02/14 13:57:25
catch (...) { try { throw Exception(""); } catch (Exception &exception) { Application->ShowException(&exception); } } ReleaseMutex( mx ); return 0; } なぜかフォームが表示されてしまいます。何処がいけないんでしょうか
969 :
デフォルトの名無しさん :05/02/14 15:38:58
【Q】_vscprintf について BCBとVCの共通のライブラリを作っていたのですが、BCBでコンパイルした時に _vscprintf がエラーになってしまいました。 BCBだとこれは使えないのでしょうか?(HELPにも出てこないようですし) 使えないとすれば、VCLを使用せずに代わりになる方法はないでしょうか?
970 :
本田 :05/02/14 18:23:30
>>967 OnCreateとかOnShowのイベントハンドラでなんかマズイことやってるんじゃないのか・・・
972 :
969 :05/02/14 21:06:01
>>970 dstring.cpp の AnsiString::vprintf を参考にしてうまくいくようになりました。
ありがとうございました。
973 :
デフォルトの名無しさん :05/02/14 22:40:23
>>971 OnShowもOnCreateも削除しましたが表示されてしまいます。
他に何か原因があるのでしょうか
プロジェクトの新規作成のデフォルトでできるフォームだけの プログラムに Application->ShowMainForm = false; を追加すると、ちゃんと消えるんだがなあ
975 :
デフォルトの名無しさん :05/02/14 22:53:50
>>974 そうなんです
なぜかわからずずっと悩んでます
原因として考えられることはありますでしょうか
>>975 どっかで、Show();とかVisible = true; とかやってるとか
Application->MainForm がどっかで書き換えられてるとか
わかんねーな(´・ω・`)
関係ないが、ミューテクスのハンドルは最後にCloseHancle();すべきでは?
>>977 「完全な処理系依存」って言ってるやん。
OutputDebugStringは使えるよ。こらWinAPIだ。
>>978 Learning/PersonalはIDEのデバッガ有効にしてると出力が行方不明になるはず。
(本来出力されるはずのイベントログウィンドウが存在しない&存在しない場合でもPro/Entと同じくIDEが抱え込んで外部に出さない)
980 :
デフォルトの名無しさん :05/02/15 13:06:53
>>976 ちっちゃいアプリなんで新規から移植しますた
お騒がせしました
981 :
デフォルトの名無しさん :05/02/15 16:41:09
タスクトレイに格納したままプログラムを終了すると、 プログラムが終了しても、タスクトレイのアイコンが 残ってしまいます。 マウスポインタを重ねたら消えるのですが、 これを重ねなくても消す方法はないでしょうか?
982 :
デフォルトの名無しさん :05/02/15 16:45:59
あるよ
983 :
デフォルトの名無しさん :05/02/15 16:46:08
>>981 void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
//フォームが閉じられる時
{
//タスクアイコン消去
NOTIFYICONDATA icn;
icn.cbSize = sizeof(NOTIFYICONDATA);
icn.hWnd = Handle;
icn.uID = 100;
icn.uFlags = 0;
Shell_NotifyIcon( NIM_DELETE, &icn );
}
//---------------------------------------------------------------
984 :
デフォルトの名無しさん :05/02/15 17:07:29
>>983 一応これと同じ方法で実装しているのですが、
やっぱり残ってしまいます。
ぐぐっても同じようなやり方しか見当たらないし、
私の開発環境(XP SP2)のせいかもしれないですね…
もうちょっと調べてみます。
ありがとうございました。
>>984 まず、そのルーチンを通る事を確認すべきでは?
986 :
デフォルトの名無しさん :05/02/15 17:44:49
>>985 ご指摘して頂いた通りでした。
タスクトレイのポップメニューで終了していたので、
クローズイベントが走っていませんでした。
ありがとうございました。
987 :
デフォルトの名無しさん :05/02/15 19:39:07
test
ちょっと質問です。 CBuilder 6.0のコンパイルORビルドが死ぬほど遅いです。 どうしたら良いでしょう? VC6.0 使ってたので、すごく大変です。 マシンスペックは WidowsXP メモリ512 セレロン2.6G です。 プリコンパイルはちゃんと指定してます。。。。 これって仕様?
>>989 VC6よりは遅いけど、死ぬほどって事はないよ。
プリコンパイルに関しては
> #pragma hdrstop の前の #include 指令はすべてのソースファイルでまったく同じであるか,
> 違いがあるにしてもほんのわずかであることを確認してください。
というのは守ってる?へたするとソースファイルごとにプリコンパイルされるから遅くなる。
最初の一回目は何分もかかって遅くても次からはそんなに遅くならんかったな おっきなプロジェクトでも
992 :
age :05/02/16 11:24:50
>>989 もし、[ツール]|[環境オプション]|[設定]|[コンパイルと実行] の
バッググラウンドコンパイル がチェックされていたら、OFFにしてみては?
アドバイスありがとうございます。
>>990 確認してみます。
>>989 バックグラウンドコンパイルするとさらに遅くなりますね。
コンパイルorビルドを開始するまでに10秒ちょっとかかって画面が固まります。
そんな感じで、カンマ打ち忘れとかで、「しまった」と思ってもすぐとめられず 。ヽ(`Д´)ノ
このツールを使わないといけないので、我慢します。(´・ω・`)
>>993 ( ゚д゚)…メモリー少なすぎじゃね?
スペックはそこそこだから、最初に10秒かかるったら プリコンパイルヘッダがよっぽど大きいか、何かおかしな事になってるんだろうな。
boostとかつかってんじゃねえの
HDDぶっとぶ前ってHDDのアクセスが極端に遅くなるよね
1000 :
デフォルトの名無しさん :05/02/16 15:20:02
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。