1 名前:ななしへたぐらま ◆XcB18Bks.Y mailto:sage [2007/05/31(木) 21:05:45 ] Delphi(デルファイ)について、 他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を 勇気を持って書き込むスレッドです。 Delphi使いが優しくコメントを返しますが お礼はDelphiの布教と初心者の救済をお願いします。 <前スレ> くだすれDelphi(超初心者用)その41 pc11.2ch.net/test/read.cgi/tech/1176867736/ <過去スレ> DelWiki避難所 delwiki.info/?Delphi 関連の過去スレッド
2 名前:ななしへたぐらま ◆XcB18Bks.Y mailto:sage [2007/05/31(木) 21:07:14 ] □質問しながら多少、相手してもらいながら Delphi初心者のための寺子屋 pc11.2ch.net/test/read.cgi/tech/1132756268/ Delphiで無料でプログラミングしてみるお pc11.2ch.net/test/read.cgi/tech/1158233434/ □雑談類は以下のスレに バカボンのDelphi不買・販促・その他談話室その29 pc11.2ch.net/test/read.cgi/tech/1153227982/ 【Borland】 CodeGearオッチャ その2【(ノ∀`)アチャー】 pc11.2ch.net/test/read.cgi/tech/1178362571/ Borland Developer Studio 2006 No.13 pc11.2ch.net/test/read.cgi/tech/1175861395/ Borland Developer Studio 2006 アンチスレ pc11.2ch.net/test/read.cgi/tech/1153353434/ VB vs Delphi @夏厨2006 pc11.2ch.net/test/read.cgi/tech/1152851763/
3 名前:ななしへたぐらま ◆XcB18Bks.Y mailto:sage [2007/05/31(木) 21:08:27 ] □Webとかの通信関係 【Delphi】 Indyコンポーネント 【C++Builder】 pc11.2ch.net/test/read.cgi/tech/1093654251/ delphiで2ch保守プログラムを作ろう pc11.2ch.net/test/read.cgi/tech/1165632604/ □ゲームを作りたい人 Delphi持ってるならGLSceneを使え pc11.2ch.net/test/read.cgi/tech/1163269079/ 【Delphi】 ゲームつくるぞ(゚Д゚)ゴルァ 2【Delphi】 pc11.2ch.net/test/read.cgi/gamedev/1097836469/ Delphiでアクションゲームが作りたい!! Part2 pc11.2ch.net/test/read.cgi/gamedev/1027482533/ ネットワークゲーム作成のお勉強(Delphi専用スレ) pc11.2ch.net/test/read.cgi/gamedev/1028278884/ delphiでMMO pc11.2ch.net/test/read.cgi/gamedev/1072515100/ □borland/CodeGear以外の実装もあるよ 【Delphi互換!?】FreePascal【GPL】 pc11.2ch.net/test/read.cgi/tech/1137051510/
4 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 21:38:55 ] CodeGear dn.codegear.com/jp/ ボーランド 日本の 残骸 202.33.253.145/bds/index.html
5 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 21:55:43 ] www.akanko.net/marimo/data/rfc/rfc1321-jp.txt この手のobjをDelphiで使う場合、memory.hとか使わないで MD5.hにmemcpy/memsetの宣言を書くだけで問題は無いですかね?
6 名前:Delフサギコ ◆A6VzDeLphI [2007/05/31(木) 22:32:02 ] _________ ∧,,∧∩ / ミ,,゚Д゚彡 < ななしへたぐらま さん、乙! ミつ旦.ミ \ @ミ ミ  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ∪''∪
7 名前:Delフサギコ ◆A6VzDeLphI mailto:sage [2007/05/31(木) 22:32:59 ] _________ ∧,,∧ /だれか ミ,,゚Д゚彡 < Delphiソースで ミつ旦(ミ~~ \ IPメッセに @ミ ミ メッセージ投げる方法 ∪''∪ しらまいか?
8 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 22:36:05 ] 君はそろそろ、名無しに戻ったほうがいいと思うぞ
9 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 23:14:17 ] >>5 使ってる関数は全部実装しないとダメだよ でも、実装されてるみたいだけどね。 あとMD5ならpasコードもあるよ ttp://homepage1.nifty.com/Ayakawa/soft/delphi.htm
10 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 11:45:12 ] >>7 あれってソース公開されてるよね?
11 名前:Delフサギコ ◆A6VzDeLphI mailto:sage [2007/06/01(金) 12:53:05 ] _________ ∧,,∧ / んーー、 ミ,,゚Д゚彡 < DelphiでLibrary ミつ旦(ミ~~ \ 作っている人もいるらしいが @ミ ミ  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ∪''∪ 実際やろうとすると、わけがわからないんだよね。 UDPとか使っているらしいし。 誰か具体的にやりかた知らないかなあ。
12 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 14:06:54 ] >>11 アレだけ情報でているのに出来ないんだから諦めろ
13 名前:Delフサギコ ◆A6VzDeLphI mailto:sage [2007/06/01(金) 15:00:31 ] _________ ∧,,∧ / 教えれない ミ,,゚Д゚彡 < んなら、だまってていいよ。 ミつ旦(ミ~~ \ @ミ ミ  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ∪''∪ 互換メッセンジャーのChatrunを作っている方が コンポーネント公開したい、、 というなコメントを書いているのだが、 なかなか、C++系とは違って こういうところが難しいのですよね。 誰かDelphiで接続できるコードつくってないかな。
14 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 15:30:12 ] こういう所って のはどういう所? PROTOCOL.TXT に説明あるし ues WinSock して MSGMNG.CPP を地道に パスカルに変換すればいけるだろ
15 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 15:32:49 ] >誰かDelphiで接続できるコードつくってないかな。 これがホンネだろ。この前もグダグダ言ってたら誰かコード書いてくれたし
16 名前:Delフサギコ ◆A6VzDeLphI mailto:sage [2007/06/01(金) 15:59:42 ] ∧,,∧ /最初から ミ,,゚Д゚彡 < ホンネですが U つ∀ \なにか? 〜ミ ミ ┴ ∪''∪ なんだかなあ >>15 自分でも書きましたが? >>14 さん うーん、ちょっと面倒っぽいですな....C++は嫌いだし嫁ないので.... まいつたな。。 まあ、おいおいやっていくか。
17 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 16:03:20 ] >うーん、ちょっと面倒っぽいですな....C++は嫌いだし嫁ないので.... C++Builderはやっとけ。
18 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 16:28:26 ] フサギコ死んでくれ delphiの為に
19 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 16:34:48 ] >>16 C++といっても、特にややこしいことはしてない 機械的に変換出来るレベルだよ
20 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 16:40:38 ] コテ叩きウザ フサももっと大人毛生やせ
21 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 16:48:31 ] 名無しに戻って擁護するあたりとか流石と言っておこうか
22 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 19:21:19 ] てか、コテでしょうもない質問しかしないんなら名無しでやれよ うっとうしいねん
23 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 19:46:11 ] コテが嫌ならあぼんしろ くだすれの質問に文句垂れんな 行儀よくやりたいならMLにでも行け
24 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 20:30:00 ] Delphiで彼女はできますか?
25 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 20:44:59 ] 出来ました。 当方35歳170cm85kg後頭部ハゲ 彼女 23才 158cm 43kg Cカップ 加藤あい似 感度がいいです。
26 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 20:52:32 ] ソースうpキボンヌ 俺も作る
27 名前:5 mailto:sage [2007/06/01(金) 22:10:42 ] >>9 レスありがとう 直リンでソース見れた方が分かり易いと思ったので>>5 のLink貼ったけど、 今使ってるのはこっちのオプティマイズされたのです www.fourmilab.ch/md5 memcpy/memsetはDelphiの場合、Pas側でMoveとFillCharに置き換える事に なるです(Jpeg.pasとかと同じ) ダミーの宣言ならサイズも小さくて_fastcallにも出来て良いかと思って。 .asm吐いてみたけど、アドレス以外にコード自体の違いは無いみたいで よく分からんです pasコードならここのがTransformがInline化されてるので速いです class化をやめればもうちょっと速いかもですけど、objをLinkの方が 大分速いです www.sawatzki.de/
28 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 22:21:12 ] >7 IP Messengerのこと?手元に // TIPMsg.pas, version 1.0b2 // Copyright(c) Tomoaki Takebayashi(XXXX@XX.XXX.XX.jp) というコメントの入ったソースがあるのだが…どこで入手したのか記憶にない。
29 名前:Delフサギコ ◆A6VzDeLphI mailto:sage [2007/06/02(土) 00:55:23 ] ___________ ∧,,∧ /確かに個人的に ミ,,゚Д゚彡 < EmEditorのプラグインとか ミ つ日 \考えるとC++は詠みたいのだが。 .@ミ,,,,,, ,,ミ  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 実は、目指したいのは 単純な構造のC++をDelphiコードに変換するように 構文解析をできるプログラムは組めまいかと 望んでみたりもして。 EmEditorのプラグインの場合 plugin.h→plugin.pas で、変換できたら最高なのになあ。とも思うのだ。 >>14 さん >ues WinSock して MSGMNG.CPP を地道に パスカルに変換すればいけるだろ ふむふむ。。。 自分への、課題だな。 >>28 素敵ね。
30 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 00:57:53 ] BNFがわからんとか言ってるやつに構文解析は無理だ
31 名前:Delフサギコ ◆A6VzDeLphI mailto:sage [2007/06/02(土) 01:02:19 ] _ ∧,,∧∩ / ミ*゚∀゚ミミ < これか! ミ つ且~~ \ 〜ミ,,,,,, ,,ミ  ̄ tota@web tota.s57.xrea.com/ ∧,, ∧ ありがとう。 ミ。_。彡 ペコッ 〜ミ,,,U U,,ミ 且~~ ヒントになりました。 >>30 まあ、そのうちな!ミ・w・彡
32 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 10:24:25 ] ライセンス表記のないコンポはどーすりゃいいんだ? 修正BDSって勝手に解釈して著作権だけ表記すりゃいいのか?
33 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 10:26:48 ] ライセンス表記のないソースコードは著作権法によってのみ縛られるから 改変不可、再配布不可、引用の範囲内を超えた組み込み(プログラミングの世界ではリンクと呼ばれる)による再配布も不可。
34 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 10:33:52 ] >>33 そうなのか・・・。 てっきりTBXみたいに著作権とWebアドレスかいてりゃいいと思ってたよ。 って、結構多くない? ライセンスが不明なコンポ。
35 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 10:36:05 ] >>32 ×修正BDSって勝手に解釈して著作権だけ表記すりゃいいのか? ○修正BSDって勝手に解釈して著作権だけ表記すりゃいいのか?
36 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 10:44:53 ] 実際のところPDS文化の延長で著作権表記を勝手に書き換えたり 塗りつぶしたりしない限り好きにしてくれって事だとは思うが。 help|aboutかreadmeに謝辞書いておけば十分だろうけど 気になるなら問い合わせるしかない。
37 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 10:46:25 ] >>33 >引用の範囲内を超えた組み込み(プログラミングの世界ではリンクと呼ばれる)による再配布も不可 これってコンポを自分のアプリに取り込んで、アプリを配布するのも不可ってことだよねぇ。 困ったな。 >>36 一度、問い合わせてみるかなぁ。
38 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 11:04:58 ] たまにコンポーネントにGPLライセンスを適用してる人っているよね アレって何なんだろ? せめてLGPLにしてくれよ
39 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 12:00:08 ] >>38 Delphi のコンポーネントはスタティックリンクだから LGPL でも大差なくね?
40 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 12:02:20 ] 【GPL】ライセンス問題討論すれ7【BSDL】 pc11.2ch.net/test/read.cgi/linux/1154170666/
41 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 12:21:16 ] >>39 だなw
42 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 12:21:58 ] ていうか、GPLのコンポみたことないけど、具体的にどれよ
43 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 12:25:53 ] GPLとかは後々縛られるから、おとなしく車輪の再開発したほうがいいな。 無駄だけど
44 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 12:43:51 ] 俺も前にMD5を自前で実装した。ライセンスのこと考えるとよくわけわかめで、ライセンスのことで 心配するなら作っちゃおうと。そういう事考えると、.NETのクラスライブラリだけは魅力的に見える。 GPLじゃなく、MPL採用したソースもあるけど、バグ発見して修正するとなると、いちいち公開しなきゃいけないし。 もうね。めんどい。
45 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 16:36:09 ] >>42 JVCLがMPLとLGPLのダブルライセンスじゃなかったか?
46 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 16:42:42 ] >>45 soudakkeka
47 名前:デフォルトの名無しさん [2007/06/02(土) 17:40:20 ] C++でいうstaticなメンバ変数ってどうやって作るんですか? メンバ関数ならclassを頭に付ければいいと解ったのですが変数の方が解らないです。
48 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 18:18:33 ] >>47 基本的にはできないが、どうしてもやりたければ、 型付き定数でできるはず。
49 名前:デフォルトの名無しさん [2007/06/02(土) 18:19:52 ] ごめん。関数staticと間違えた。 class var でできない?
50 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 19:31:13 ] >>47 古いバージョン使ってるなら type tfoo = class; implementation var foo_class_var: integer; みたいな事をやるしかない。
51 名前:47 mailto:sage [2007/06/02(土) 20:12:55 ] 解答tks! D6です。>49の方法はダメですた。 無理そうなので別の方法にします。
52 名前:デフォルトの名無しさん [2007/06/02(土) 20:16:54 ] D6には、class var はないわな
53 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 22:29:57 ] delphi2007を使っています。 デバッグ中に「このエラーを無視する」としたところ、 関連するエラーで中断しなくなりました。(当然ですが) 再びこの設定を元に戻すにはどこを戻してやればいいんでしょう?
54 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 22:31:28 ] 2007ってまだ体験版しかないよね
55 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 22:41:18 ] 昨日から繋がらないけど閉鎖? www.tolderlund.eu/delphi/
56 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 22:43:42 ] つながるじゃん
57 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 22:45:49 ] マジで?
58 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 22:49:27 ] つながるけど404
59 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 00:40:17 ] VBMP3のコールバック関数をどう書けば良いか分かりません・・・ 今は、 function vbmp3_callback(pProc:Pointer):Boolean;stdcall;external 'VBMP3'; //宣言 vbmp3_callback(@TForm1.CallBackPrc); //FormCreateで実行 Procedure TForm1.CallBackPrc(id,Sec:Integer); //コールバック関数 と、書いてますが、エラーが出ます。 VBでは、 Declare Function vbmp3_callback Lib "VBMP3.dll" (ByVal pProc As Long) As Boolean Call vbmp3_callback(AddressOf vbmp3_Proc) Public Sub vbmp3_Proc(ByVal id As Long, ByVal param As Long) となってます。(VBでの表記はReadMeから転記) 文法にエラーは無いのですが、ファイルをopenて再生を開始した途端にエラーが出ます。 ReadMeによれば、コールバック関数への引数のidは0~4の値をとるそうですが、 0~4以外の値をとっているようです。 IntToStrを使って値を確認しようとしたのですが、そうするとIntToStrの部分でエラー(実行は可能)が出ました。 分かる方居ましたら、よろしくお願いします。
60 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 01:08:44 ] とりあえずCallback関数をTForm1のメソッドではなく、只の関数として実装してみては procedure CallBackPrc(id, Sec: Integer); stdcall; begin //処理 end; procedure TForm1.FormCreate(Sender: TObject); begin vbmp3_callback(@CallBackPrc); ... end;
61 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 02:14:16 ] >60 やってみましたが、尚エラーです。 ステップ実行してみると、どうやらコールバック関数の処理が終わった瞬間にエラーが出てるようです。 更に、同時にCPUウインドウが。
62 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 02:20:29 ] なんてエラー?
63 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 02:24:37 ] ていうか、IntToStrでエラー出るってことは、それ以前にスタックかどっか破壊されてるっぽいな
64 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 02:33:48 ] プロジェクト が例外により実行を停止しました。 'access violation at 0x1001dde3: write of address 0x00011002' と出ます。
65 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 03:38:43 ] >>64 アドバイス受けるには情報が不足だと思うよ、コードさらしてみ
66 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 03:49:35 ] 文字列をDelphiのstringでそのまま渡しているせいとか。
67 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 03:59:07 ] >>64 ttp://web.archive.org/web/20060521074149/www.angel.ne.jp/~mike/vbmp3/index.html ようわからんが、ここが参考にならんか?
68 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 06:15:19 ] >>60 なんか変でない? 1. procedure じゃなくて Boolean を返す function じゃないの? 2. 関数名自体ははじめからポインタなのに、何で更に @ を付けるの? を勘案すると function CallBackPrc(id, Sec: Integer): Boolean; stdcall; begin //処理 end; procedure TForm1.FormCreate(Sender: TObject); begin vbmp3_callback(CallBackPrc); ... end;
69 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 07:10:05 ] 後ろについてるExternal宣言がなんか変だ。 VBの宣言に詳しくないので正しい関数名がわからんが、こんな感じに書くんじゃなかったっけ? external 'VBMP3.DLL' name 'vbmp3_callback';
70 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 08:12:32 ] 試してみた >>67 のサイトから Delphi用のサンプルvbmp3forDを落として function vbmp3_callback(pProc:Pointer):Boolean;stdcall;external 'VBMP3'; //宣言 procedure CallBackPrc(id, Sec: Integer); stdcall; //コールバック関数 begin form1.Caption:=format('%5d %5d',[id,Sec]); end; procedure TForm1.FormCreate(Sender: TObject); begin ・・・ 他の処理 ・・・・ vbmp3_callback(@CallBackPrc); // これだけ追加 end; これで、動くようだけど?
71 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 10:42:36 ] C:\Program Files\CYBERFRONT\Sid Meier's Civilization 4(J)\Warlords(J)\Civ4Warlords.exe を幅を指定して C:\Program Files\...\Civ4Warlords.exe みたいに短くする関数ってありますか?
72 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 10:46:50 ] ...\ ってどこを指してるの?
73 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 11:38:24 ] 文字列処理の話です。 例えばこんな感じで200ピクセルに収まるように文字列を適当に短くしたいです。 GetShortPathStrForPrint(Font, 200, 'C:\Program Files\CYBERFRONT\Sid Meier's Civilization 4(J)\Warlords(J)\Civ4Warlords.exe') ==> 'C:\Program Files\...\Civ4Warlords.exe';
74 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 12:06:32 ] 自分で処理描いても大した手間じゃないよ
75 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 12:20:34 ] MinimizeName?
76 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 15:34:35 ] MinimizeName ですな
77 名前:デフォルトの名無しさん [2007/06/03(日) 16:13:00 ] >>71 シビライゼーション面白いよな
78 名前:59 mailto:sage [2007/06/03(日) 16:46:22 ] 解決しました。 >70さんのコードを眺めていて、まさかと思ってVBMP3をVer1.3.1.0に戻すと正常に動作しました。 お騒がせしました。答えてくれた皆さん、ありがとうございました。
79 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 18:42:04 ] 呼び出し側がメモリブロックを確保し、そのポインタを引数にとるWin32APIの呼び出しで、 動的配列を使って例えば A: array of Integer; SetLength(A, 1024); ように、確保したとき、 引数での指定方法で、 Win32Foo(@A[0]) より Foo(Pointer(A)) の方がよろしいでしょうか?? メモリブロックのサイズが固定なら前者でもいような気がするのですが、 可変で例えばサイズが0だったりすると、前者の場合、アドレス違反がでますよね??
80 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 18:43:34 ] どうでもいいことですが、 >Win32Foo(@A[0]) >より >Foo(Pointer(A)) は Win32Foo(@A[0]) より Win32Foo(Pointer(A)) です。
81 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 20:35:15 ] >>79 違反は出なかったと思うけど。 出るようになったの? マシン語レベルでは同じだと思うぞ。 CPUView見て。
82 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 20:36:25 ] program test; {$APPTYPE CONSOLE} uses SysUtils; var a: array of Integer; p: Pointer; begin //SetLength(a, 0); p := a; Writeln('a ' + IntToStr(Integer(p))); p := @a[0]; Writeln('@a[0] ' + IntToStr(Integer(p))); p := Pointer(a); Writeln('Pointer ' + IntToStr(Integer(p))); SetLength(a, 1); p := a; Writeln('a ' + IntToStr(Integer(p))); p := @a[0]; Writeln('@a[0] ' + IntToStr(Integer(p))); p := Pointer(a); Writeln('Pointer ' + IntToStr(Integer(p))); Readln; end. 渡すだけならどっちでもOKっぽいが・・・ @a[1]にしてもエラー出ないし・・・
83 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 01:28:37 ] 試してませんでした。すみません。 試したところどっちでも問題はなさそうでした。エラーが出ないだけで、問題あるかもしれませんが。 CPUViewですか?難しそうですね。
84 名前:デフォルトの名無しさん [2007/06/04(月) 12:38:17 ] すいません、今日始めてTurbo Delphiを触っているんですが BASICやHSPで他のプログラムを起動させるのにはexecを使いますが Delphiでは、どうやるのでしょう?
85 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 12:45:31 ] Delphiは API をそのまま呼べますので APIを使うのが簡単。 uses ShellAPI ; して、 ShellExecute するのが一番簡単です。
86 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 12:51:45 ] あっと、 実行ファイルの実行だけなら WinExec が最も簡単です。 これは uses windows してあれば使えます。 > この関数は、 以前のバージョンのWindowsとの互換性のためだけに提供されています。 > Win32アプリケーションでは、 CreateProcess関数を使ってください。 と書かれていますが、そんなのはあっちの都合なんで、使える場合は使いましょう。 ただ、巨大なexeを裏で起動なんて場合には、起動出来ない場合もあるようです。
87 名前:84 mailto:sage [2007/06/04(月) 12:52:48 ] >>85 なるほど、それで調べてみます。さんくす。
88 名前:デフォルトの名無しさん [2007/06/04(月) 21:59:49 ] Turbo Delphiって無料版Delphi6使ってたらすんなり覚えられる?
89 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 22:20:41 ] 無料版があるんだから、まずそれで試してみては?
90 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 22:55:35 ] コンポインストールが出来ない無料版であるが そこまでコンポにこだわらない俺は断然turbo派 ただし動作はもっさり
91 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 23:10:54 ] ぶっちゃけDelphi6で十分高機能だからturbo使う必要性は全く無い。 ランタイムもいらないしな。
92 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 23:11:05 ] ヘルプ腐ってる。コンポの便利さを否定することはDelphiのアドバンテージを 否定することに通じるよ。「覚える」とかいう段階なら、将来がないDelphiなんか 覚えるだけ無駄だよ。
93 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 03:43:07 ] 上に紹介してあったwikiを読んで プログラミングなどやったこともないボクが 初めて実行ファイルを作りました うほ! いただきまんこ Delphiって最高ですね^^; 次は痴漢じゃなくて置換だよにトライです
94 名前:デフォルトの名無しさん [2007/06/05(火) 08:06:12 ] なんとか王子「我がDelphiは一生勝ち続けます!」
95 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 08:35:20 ] 確かにプラス部分とマイナス部分があるな。 漏れはVCLソースとエディタの補助機能とリファクタリング機能目当てでTurbo使ってる。 正直、これらだけで「乗り換えた価値はあった」と思ってる。 ただ、ヘルプは本当に使いにくいので、Del6のヘルプを使ってる
96 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 08:36:18 ] 買えよ
97 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 13:48:02 ] dcc32.exeを使ったコマンドラインでのコンパイルについて質問です。 最初、何も考えずにコマンドライン上で "dcc32.exe プロジェクトファイル名" と実行したら「致命的エラー: ファイルが見つかりません : 'MyEdit'」と出て(MyEditは自分で追加したコンポーネント) コンパイルができなかったので、dcc32.cfgに -LU"C:\Program Files\Borland\Delphi5\Projects\Bpl\dclusr50.bpl" と追加することでコンパイルはできるようになったのですが、 動作確認用の環境(Delphiはインストール済でコンポーネントは未インストール)で作成されたEXEを実行したところ 「プロシージャ エントリ ポイント @MyEdit@initialization$qqrv が ダイナミックリンクライブラリ Dclusr50.bplから見つかりませんでした」 というエラーが出て実行できませんでした。 IDE上でコンパイルしたものと比べてみるとファイルサイズが倍近く違っていて、 自分で追加したコンポーネントのパッケージ"dclusr50.bpl"が 実行ファイルに含まれていないのが原因だと思うのですが、 コマンドラインからのコンパイルで全てのパッケージを実行ファイルに含める方法があれば教えてください。
98 名前:97 mailto:sage [2007/06/05(火) 13:49:56 ] 環境を書き忘れていました。 Delphiのバージョンはコンパイル環境・動作確認環境ともにDelphi5、 OSはコンパイル環境がXPPro、動作確認環境が2000sp4です
99 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 14:00:31 ] dcc32.exeごと""で括ってるからダメなんじゃないの。
100 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 14:18:31 ] LU は実行時パッケージの追加だから実行環境に*.bplがないと実行できないのはあたりまえだろう Uオプションで dclusr.dcu をのあるディレクトリを追加してやればいいんでねえの?