1 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 20:41:37 ] Delphi(デルファイ)について、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を 勇気を持って書き込むスレッドです。 Delphi使いが優しくコメントを返しますが お礼はDelphiの布教と初心者の救済をお願いします。 <前スレ> くだすれDelphi(超初心者用)その50 pc12.2ch.net/test/read.cgi/tech/1246340765/ <過去スレ> DelWiki避難所(Delphi 関連の過去スレッド) delwiki.info/?%E3%83%AA%E3%83%B3%E3%82%AF%2F%E3%82%B3%E3%83%9F%E3%83%A5%E3%83%8B%E3%83%86%E3%82%A3%2FDelphi%20%E9%96%A2%E9%80%A3%E3%81%AE%E9%81%8E%E5%8E%BB%E3%82%B9%E3%83%AC%E3%83%83%E3%83%89
858 名前:856 mailto:sage [2010/06/23(水) 15:52:28 ] >>857 ありがとうございました。 調べる的が絞れました。
859 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 02:31:28 ] ちょいちょい挟んでくるAAがイラッと来るなw 分かってやってるのかもしれんが
860 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 08:11:08 ] 朝から引っ込んで炉よ、クズβακα..._φ(゚∀゚ )アヒャ
861 名前:デフォルトの名無しさん [2010/06/24(木) 16:06:04 ] SHFileOperationって、いわゆる非同期というやつなんでしょうか? 大量のファイル(フォルダ)をバックグラウンドでコピーするために FOF_SILENTを指定してSHFileOperationを使ってみたのですが、 処理が終わるまで画面が固まってしまいます。 そこで↓みたいなワークスレッドを作ってその中で実行させてみたのですが 今度はすべてのファイルがコピーされないまま、SHFileOperationから抜けて スレッドが終了してしまいます。 procedure TWorkThread.Execute; begin ShellAPI.SHFileOperation(ShellParam); end; こっち立てればあっち立たずな感じで困っています... こういうときにDelphiでうまい対処法みたいなものがあるのでしょうか?
862 名前:デフォルトの名無しさん [2010/06/24(木) 17:10:41 ] Outlook Expressの保存フォルダ(dbxファイル)の場所を取得するには?
863 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 17:46:25 ] >>858 分かってるとは思うけどDBのライセンスに注意してね 付属のIntereBaseも再配布不可どころか開発専用のライセンスだし。 Delphiの場合だとIBX+組み込み版Firebirdが手っ取り早いと思うけど
864 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 19:01:39 ] うるせーハゲ^^
865 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 19:59:16 ] >>861 画面の見た目にこだわらないのであれば 処理の進捗を表示するフォームを作成してからCopyFileExを呼び出して、 コールバック関数内で画面を更新させる手もある
866 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 09:09:38 ] >>861 TSHFileOpStructのウィンドウハンドルに0を指定でいいんじゃね。
867 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 11:48:40 ] 他のアプリのフォントの色を取得するにはどうすればいいですか? 目的のアプリのコントロール?のハンドルは取得できています。 GetDCでデバイスコンテキストを取得して、 Label1.Font.Color := GetTextColor(DC); みたいにしているんですが、「0」が返ってきてしまいます。 よろしくお願いします。
868 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 11:54:56 ] 全く同じ質問を見たような気がするが気のせいか?
869 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 11:58:16 ] 失礼しました。 675にアキラメロンがありました。
870 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 15:40:43 ] 数年前にDelphi6をやっていてある程度マスターしていたのですが ひさしぶりにプログラミングをやろうとしたら全然状況が変わっていて どの言語をやろうか迷っています。 Delphi経験者が今から趣味でプログラミングを始めるならどの言語がいいですか?
871 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 15:57:52 ] >>870 Object C
872 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 16:54:59 ] >>870 C#
873 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 21:47:02 ] >>870 Prism
874 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 22:03:33 ] >870 趣味?お金をかけたくないならC#、お金に余裕があるならDelphiかPrism。 C#はEEならただだから。
875 名前:765 mailto:sage [2010/06/26(土) 12:09:21 ] >>832 すいません、やっと出張から帰ってこれました・・・。 遅くなりましたが、うpローダーにうpしてみました。 ttp://www.dotup.org/uploda/www.dotup.org988294.zip.html 確認用に取得したHTMLをtest.htmlとしてexeと同じ位置に保存し、それを再度TWebBrowserに 取り込んでいます(ランタイムエラーでますが)。 TWebbrowserの画面でいますぐ利用する(無料)ボタンが表示されている場合、ログインできて いないhome.pl画面です。 ログインできている場合は、該当アカウントのhome画面になるはずです。 よろしくお願いします。 来週からまた出張・・・orz
876 名前:765 mailto:sage [2010/06/26(土) 12:10:15 ] しまった書き忘れ・・・。 うpローダーのダウンロードパスはdelphiです。
877 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 13:36:05 ] Delphiってもう無料版はないの?
878 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 14:16:33 ] ない
879 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 00:56:09 ] 処理中にマウスのカーソルを砂時計にしたいのですが、 各コントロールのCursorを全部設定していかないと いけないのでしょうか?
880 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 03:16:10 ] Screen.Cursor := crDefault;
881 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 18:52:36 ] >>875 何度も言われていることなのにバカなの? login.pl→check.pl→home.plっていう流れなのに いきなりhome.plアクセスしてるじゃん。 いろんな人がいろんなアドバイスしてくれてるのに 全く聞く耳持ってないじゃん。 login.plでちゃんとログインできたらメタタグだけでcheck.plに行けって返ってくるから そこにアクセスしてからhome.plにアクセスしてみなよ。 一度目のPOSTのレスポンスを表示しようと思わなかったのはなんでだろうか。
882 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 19:45:37 ] 聞いてる時点でやる気も調べる気も行動する気も最後までやり遂げる気も無い
883 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 02:03:47 ] 釣れた釣れたw
884 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 05:34:07 ] 釣られちゃった てへっ
885 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 09:44:58 ] 恥ずかしい後釣り宣言来ました
886 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 14:00:40 ] 恥ずかしい後釣り宣言来ました宣言来ました
887 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 14:47:30 ] 自動ログインしたいという根性そのものがいけすかない。 手動でやれ手動で。ビシっと。
888 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 14:55:47 ] そういうのはC#でやるのが簡単なのに
889 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 16:35:18 ] Del7のListViewの事で質問です。 ListViewの左端(ItemのCaption?)に入力されている文字列と これから追加しようとする文字列が重複していないか確認をしたいのですが、 for i:=0 to ListView1.Items.Count-1 do if ListView1.Items.Item[i].Caption<>stringData then ・・・・ みたいにするしかないでしょうか? よろしくおねがいします。
890 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 19:25:46 ] ListView1.Items.IndexOf(stringData) >= 0 とか ListView1.FindCaption(0,stringData,False,True,False) = nil とか
891 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 19:29:14 ] ListView1.Items.IndexOf(stringData) < 0 だった
892 名前:889 mailto:sage [2010/06/29(火) 10:20:41 ] 質問した時のプログラム例が間違ってる。 恥ずかしい。orz >>890 ありがどうございます。 しかし、ItemsのIndexOfはTListItemを探すものらしいです。 ListView1.FindCaption(0,stringData,False,True,False) = nil こっちでいいみたいです。
893 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 10:24:06 ] VirtualListViewでやれば好きなように出来る。
894 名前:765 mailto:sage [2010/06/29(火) 11:14:01 ] >>881 当初Live HTTP headersで確認したところ、login.plのあとにcheck.pl?n=/home.plにアクセス していることがわかりましたので、 IdHTTP1.Get('mixi.jp/check.pl?n=home.pl '); や IdHTTP1.Get('mixi.jp/check.pl '); を試した事もありました が、双方ともに302 Foundがでるので(ブラウザからはアクセスできる)、それ以上の調査はして おりませんでした。 アップロードにうpしているファイルは、上の方でログインに成功されている方の例をそのまま 使って作り直したものです。 >>881 さんはcheck.plにアクセスした際に、302 Foundエラーはでませんでしたか? もしでている場合、どのように回避されましたか? 実はIndyのバージョンを2009梱包版のものではなく、最新にあげてしまっているので、そのあた りが影響していないか心配です。
895 名前:765 mailto:sage [2010/06/29(火) 11:27:51 ] 追加 POSTから返ってきた文字列に関しては>>768 で触れております。 が、この時点でこのアドレスはクッキーが無効であるという失敗を表すものだという勘違いをして しまい(>>784 さんも同意見だったため)、しばらく迷走しておりました。 で、その後再度Live HTTP headersを追ってみたところ、「mixi.jp/check.pl?n=%2Fhome.pl 」 へのGETを発見しました。 今改めてみてみましたが、ブラウザでもcheck.plへのアクセスのあと、一度「HTTP/1.1 302 Found」 がでていますね・・・。
896 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 16:33:24 ] D3のSQLエクスプローラーで二つのInterbaseファイル間のテーブルの比較って出来ますか? 片方で削除されたレコードを抽出したいのです。
897 名前:デフォルトの名無しさん [2010/06/29(火) 23:44:12 ] win7でターボデルフィは動かせますか?
898 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 01:18:54 ] 302がエラーだとしか思わない人がネットツール作れるのかよ・・・・・・
899 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 03:07:49 ] >>895 もう続きはチラ裏でいいと思うよ
900 名前:765 [2010/06/30(水) 09:49:43 ] >>898 超初心者ですので、勉強のつもりでやってます・・・。 用語もそれほど知らないので、どう皆さんにうまく説明していいかわからず、エラーと表現して しまい申し訳ございません。 >>881 さんがどのように302 Foundを回避されているのか、アドバイスいただければ幸いです。 >>899 自分自身Delphiはおろかプログラミングもはじめたばかりですので、このスレに来たのですが、 もっと初心者向けのスレがあるという事でしょうか? ここでも場違いなようでしたら、どちらかのスレに誘導していただければ嬉しいです。
901 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 10:25:11 ] Delphi7+Firebird+IBXで開発したものをDelphi2009で再構築しています。 データベースのテーブル一覧を取得するために下記SQLを発行していますが、 テーブル名が10文字分しか返ってきません。何か対処法ご存じでしたらご教授願います。 select rdb$relation_name from rdb$relations where (rdb$view_source is null) and (rdb$system_flag=0)
902 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 10:32:54 ] 本当に勉強したいなら、匿名無料掲示板で相談するのではなく経験を持っている人に教わった方が 速いです。身近に相談できるような人はいませんか? >もっと初心者向けのスレが 「知らないこと」には限界が無いので、初心者とひとくくりにすることができないのですよ あなたがどこまで何を知っているか。によって答え(や参考資料の出し方など)は変わっていくのです。 どこかにもっと初心者向けのスレがあるかもしれませんが、それは誰にもわかりません。 多くの回答者は暇なときにしか対応できませんからどうしても時間がかかります。だから「出直してこい」「ちょっとは 自分で調べろ」と言うしか無いのですよ。 今回の件では、プログラムする前に何が正しい動作、期待する動作なのかを知る必要が有るでしょう。 まずブラウザとサーバーの会話を分析、理解するべきだと思います。 簡単にはパケットキャプチャ。Safari や Chrome などのブラウザ組み込み開発ツールも役に立つでしょう。 ここから先は、まずはネットワーク関連のスレに移動した方が、より専門的な解説、説明、罵倒が待っていると おもいます。行ってらっしゃい
903 名前:765 mailto:sage [2010/06/30(水) 11:46:21 ] >>902 このスレですでに二人ほど、ログインに成功している方がいるので、できればその方たちから のヒントを聞かせていただければなと思っておりました。(´・ω・`) もちろんヒマな時の回答でも、すごく嬉しいです! DelphiでIndyを使用してMIXIにログインする例が見あたらなかったので、今後トライしようと する人の為にも成功例がコードと共にあった方がいいかなと思って質問を続けてきましたが、 他のスレに行った方がよさげですね・・・。 とりあえずネットワーク関連のスレの方をみてみます。 こちらでも何かヒント等ありましたら、引き続きアドバイスいただければ幸いです。 ありがとうございました。
904 名前:765 mailto:sage [2010/06/30(水) 12:28:13 ] XRayさんのところに302回避の良いサンプルがありました。 Redirectを使って処理すればいいようです。 ちら裏になりますが、現在の状況です。 まだ解決にはほど通りので、引き続きがんばります。 ログイン情報をPOST ↓ Cookieとmixi.jp/check.pl へ行けとの指示ゲット ↓ 302Found ↓ Redirectで処理し、mixi.jp/home.pl が返ってくる ↓ mixi.jp/home.pl へ移動 ↓ ログイン前のホームが依然表示される
905 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 12:40:52 ] だからブラウザだって302を受け取って処理してんの。それと同じにやればいいんだよ
906 名前:765 [2010/06/30(水) 12:55:21 ] >>905 >>904 のRedirect処理部分で、同じように処理いたしました(XRayさんのサイト参照)。 (Live HTTP Headersで確認したところ)正しい動きとしてはhome.plで無事ログイン済みになり あらたにemidというCookieをもらえるはずですが、上記の通りでやはりログイン前の画面に なってしまうので、引き続き調査中です。
907 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 14:00:32 ] そもそも認証は面倒だからIEでいいならIEコンポ(WebBrowser)でやったほうが早くて確実だけど INDYにこだわる必要があるのかな WebBrowserで自動ログインする部分が多少面倒だけどそれさえクリアすれば後は簡単
908 名前:765 mailto:sage [2010/06/30(水) 14:13:21 ] >>907 WebBrowserは別の練習アプリで使ったので(その時にIndyでも認証ができると知りました)今回は Indyに挑戦してみようと思いまして。 だが、資料が少なすぎて、今の俺のスキルでは無茶すぎた・・・! と後悔しつつも、せっかくだか ら最後までやりたいと思っております。
909 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 14:41:41 ] 302回避とか書いている時点でなにも理解できてない。 Delphiとは関係ない知識が足りてない。
910 名前:765 mailto:sage [2010/06/30(水) 15:13:50 ] >>909 知識不足というのは、自分でも痛感しています。 なにぶんプログラムを勉強し始めたばかりで すのでご容赦ください。 現在の時点では、ググった結果さえ理解できない事も多く、このスレの回答者の皆さんみた いになるには、かなりの時間が必要そうです。 回避というのは、302が返ってくるのでどのように処理すればいいのかという意味のつもり だったのですが、適切な言い方ではなかったようで、申し訳ないです。 Live HTTP Headersでの確認では、check.plにアクセスしたあと、「HTTP/1.1 302 Found」が返っ てきており、その後home.plにアクセスしているので(おそらく>>905 さんがおっしゃる通り、ブラウ ザが302をこの時点で処理している)、やり方としては今Delphiでやっている事と同じような気も するのですが。 今日は一日休みですので、もう少しLive HTTP Headersを確認しつつがんばってみます。 上で、すでにログインに成功している人がいるし、見落としている部分に答えがありそうです。
911 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 16:12:08 ] なぜDelphiなんだろうC#のがいいのに
912 名前:765 mailto:sage [2010/06/30(水) 16:40:50 ] >>911 ちら裏になりますが、会社の自分の前任者(元プログラマ、退職済)が2009を購入してもらって、 ちょこちょこ便利ツールを作ってたみたいで、後任の自分も使ってみたら?と渡された。 もともとプログラムできる奴カッケー!!と思っていたので、仕事の合間や自宅にノートPC持っ て帰ってに勉強しています(セキュリティが緩いので・・・)。 職種はまったくPCと関係ない上、社内でその手の知識がある奴も皆無なのがつらいところ。
913 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 19:17:26 ] なぜDelphiなんだろう
914 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 21:23:52 ] Webアプリ作りたいんならまずRFC2616くらいは読んどいたほうがいい。 とりあえず、「HTTP/1.1 302 Found」は必ずしもエラーを意味しない。それによりリダイレクト させることが目的である場合もあるから。 Indyのバージョンによるのかもしれないけど、プロパティで302を自動でリダイレクトさせる ことができるし、実際自分はそれを使ってる。
915 名前:765 mailto:sage [2010/06/30(水) 22:33:34 ] >>914 実はRFC2616を説明しているサイトで302 Foundについてすでに調べたのですが・・・・ さっぱり意味わかんねえええええw orz 他も色々みてみて、どうやら一時的なページの移動か、CGIが返す場合があるという事 として今は理解しています(検討外れだったらすいません・・・)。 Indyのバージョンは最新のはずなので、もしかしたら自動でリダイレクトさせるプロパティ があったのかもしれないですが、とりあえず現在はRedirectイベントで処理いたしました。 今日は力つきたので、ここまででw
916 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 23:06:41 ] Delphiと関係ないことは理解できましたか?
917 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 04:20:03 ] BDEでODBC経由でSQL Serverに接続しています。(TDateBaseクラスを使用) 複数のプロセスでDB接続している際、その中の1つのプロセスを強制終了 (クラッシュ)しては再起動ということを繰り返していると、何度かいったところで 「この操作に必要なメモリがありません」と出て、DB接続できなくなります。 DB接続しているプロセスをいったん全て終了させると、正常に戻ります。 見たところではリソースのリークのようなのですが、改善することはできますで しょうか。
918 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 04:28:35 ] プロセスの強制終了が直接の原因でしょ BDE は共有メモリモデルで動いているから異なるプロセス間で共有しているメモリブロックが解放されず 不足したのでしょう。 強制終了しないように直し、仮に例外が発生しても正しくアプリケーションを終了させるようにするのが正道。
919 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 04:42:57 ] BDE 使い続けている人は多いなぁ
920 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 09:41:07 ] BDE経由だとoracleでもそんな感じだし。
921 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 09:55:45 ] >>765 C++Builder2010だけど、>>814 のコードでログインできた。 >>814 のコードの IdHTTP1.Post('mixi.jp/login.pl?from=login1 ',PostData,Req); で、Reqにサーバーからのレスポンスが入っている。 とりあえずReqのデータをSaveToFileでファイルに保存してファイルの内容を教えろ。 ログインできていれば、あとは >>814 の次のコードでログイン後のページが表示される。 IdHTTP1.Request.ContentType:=''; Buf:=IdHTTP1.Get('mixi.jp/home.pl '); 302 Foundとかで躓く理由がない。
922 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 11:36:04 ] Indyってnegotiate認証に対応しているのでしょうか?NTLS認証は対応してるっぽい ですけど、Kerberos認証は対応してます?
923 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 12:03:02 ] Delphi2010(Rad Studio)の 逆アセンブル/レジスタなどのペイン(メニューだと表示→デバッグ→CPUウィンドウ以下) のフォントサイズが6?7?なのか不明ですが、文字が小さすぎて見えません CPU全体というものを選べばフォントサイズはでかくて見易いのですが、この項目はエディタウィンドウと重なってしまい、使い勝手が悪いです 特にこれらの項目のフォントサイズを変更する項目が見あたらないのですが、文字を大きくすることは不可能なのでしょうか…
924 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 13:04:34 ] 日付の比較がしたいのですが、 2010年1月1日,aaa,bbb,ccc 2010年1月2日,ddd,eee,fff ・ ・ ・ 2010年7月1日,111,222,333 の様なリストがあって、ユーザーからは「2010年2月1日から2010年5月6日まで」みたいに指定されます。 今考えているのは、年月日の漢字を消して 201021 と言う数字にして比較しようと思っているのですが、 もっと良い方法があれば教えて欲しいです。 よろしくお願いします。
925 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 13:07:09 ] TDateTime型に変換する
926 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 18:50:02 ] >>924 > 今考えているのは、年月日の漢字を消して 201021 と言う数字にして比較しようと思っているのですが、 それだと2010年1月11日と2010年11月1日の区別ができないのでは。
927 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 19:25:17 ] StrToDateTimeでTDateTimeにして比較する
928 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 19:26:19 ] ごめん、こっちの方 VarToDateTime
929 名前:924 mailto:sage [2010/07/01(木) 23:06:28 ] 皆さん、ありがとうございました。 VarToDateTimeを使って、上手くできました。 また、よろしくお願いします。
930 名前:765 mailto:sage [2010/07/02(金) 10:16:26 ] >>921 Reqのデータですが、こちらでは <html><head><meta http-equiv="refresh" content="0;url=/check.pl?n=home.pl"></head></html> となっています。 >>921 さんはどのようなデータを取得できましたか?
931 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 13:17:35 ] あれだけ言われてまだここでやるんだ
932 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 14:46:08 ] >>930 そのレスポンスなら、mixiの認証は通っている。 ここまでは正しい動作だ。 では次に >>815 の次の部分を下のコードのように変更してほしい。 これを Buf:=IdHTTP1.Get('mixi.jp/home.pl '); こうする Req.Clear(); IdHTTP1.Get('mixi.jp/home.pl ', Req); Reqにサーバーからのレスポンスが入っている。 これをSaveToFileでファイルに保存して内容を確認してほしい。 なお文字コードはeuc-jpなので、euc-jpに対応しているエディタで開く必要がある。
933 名前:765 mailto:sage [2010/07/02(金) 16:49:20 ] >>932 Reqの中身はログイン前の画面でした。 「すでに登録済みの方は、 こちらからログインしてください」 と共にログインメールアドレスとパスワードの入力を施す画面です。 >>932 さんや>>814 さんはこれでログインできているようですので、もしや、Indyのアップデータを 行ったのが問題なのか? 週末にでも一度削除し、インスロールを一からやり直してみます。
934 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 17:45:30 ] >>933 これ使え。 yuukiremix.s33.xrea.com/chirashi/
935 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 19:01:55 ] ここまでやってパスかメアド間違えてるとかだったら殺意すら湧く
936 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 20:26:11 ] var X: Cardinal; としておいて、 X:=32768*32768; X:=X*2; とか、 X:=2147483648; だと問題ないのですが、 X:=32768*65536; では、コンパイル時に「[エラー] 〜: 数値演算のオーバーフロー」となってしまいます どうしてなのでしょうか
937 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 20:41:12 ] 0..4294967295
938 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 21:00:16 ] >>937 4294967295 ? 32768*65536は 2147483648 ですから、あふれてないように思うのですが
939 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 21:26:45 ] ヘルプの「真の定数」によると、定数式が整数の場合はその値によって型が決まり 32768〜65535 ⇒ WORD 65536〜2147483647 ⇒ 0..2147483647 となる。この場合 (WORD)*(0..2147483647) の演算だから 式全体の型は 0..2147483647 となり、結果がこの範囲に収まらないとエラー という理屈になるのかな。何だか納得いかないけど、とりあえず X := 32768*Cardinal(655356) とでもすればコンパイルは通るだろ。
940 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 22:26:25 ] >>939 「真の定数」読みました なるほど、65536..2147483647は、ほぼInteger(Longint)ですね X:=Cardinal(32768)*65536; でもOkでしたので、その解釈は当たりだと思います 分かりましたー、と言いたいところですが、それなら X:=32768*32768; でもオーバーフローになるはずでは??? やっぱりなんか変ですよね
941 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 23:09:09 ] >>940 あとは、整数型同士の演算の場合 どちらかがInt64なら結果もInt64、そうでなければ結果はInteger という規則があるから、これにひっかかるのかな。(ヘルプだと「算術演算子」のところ) Cardinalが入った場合の規則が書かれていないからよくわからないけど、 Integerの範囲には収まらないはずだからInt64扱いになるのかもしれない。
942 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 00:29:21 ] >もしや、Indyのアップデータを行ったのが問題なのか? >週末にでも一度削除し、インスロールを一からやり直してみます。 ワロタwww アップデータをインスロールしてくださいね(笑)
943 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 01:39:16 ] 定数の型を指定したい場合はこうすればいい const foo = Cardinal(1);
944 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 08:46:20 ] 計算時に i := Cardinal(1) * 10; でいいやん。
945 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 12:29:36 ] 仕事に忙殺されてるうちにすっかり取り残されてしまい、いまだに D6 Pro ですが、 職場では Win7 を使っています。 少々余裕も出てきた&ネイティブコードも必要になりそうなので、職場のマシンに インスコしてみました。今のところ動いています。 せっかくなので Win7 のタスクバーの新機能を使ってみたいのですが、D6 Pro で ITaskbarList3 を使うにはどうしたらいいんでしょうか。タイプライブラリの取り込みで ExplorerFrame.dll を指定してもエラーになってしまいます。さすがに古すぎるんでしょうか。
946 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 12:44:42 ] >>944 定数の話してるのになんでマジックナンバーにするの?馬鹿なの?
947 名前:946 mailto:sage [2010/07/03(土) 12:45:56 ] 僕が馬鹿でした
948 名前:944 mailto:sage [2010/07/03(土) 12:47:03 ] 分かればいいよw
949 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 12:48:35 ] const foo:Cardinal=1; でいいやん。
950 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 13:02:41 ] >>949 しか知らんかったわ。 >>943 今度使ってみよう。 些細なことで偶に勉強になるな。役立つかは別にして。
951 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 15:25:44 ] 厳密に言えば>>949 は一度だけ書き替え可能な変数 >>944 が本当の定数 >>944 はコンパイル時に実際に数値と置き換わるけど、>>949 は変数と同じく参照として扱われるから、 その展開がない分>>944 の方が高速になる 知らないことは誰だってあるけど、いいやんとか言って違いも調べず思考停止するやつは向上心もう少し持とうぜ
952 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 03:30:07 ] もっと!もっと熱くなれよ!!
953 名前:765 mailto:sage [2010/07/05(月) 14:22:54 ] IndyのバージョンをDelphiインストール時のものに戻してテストしてみたところ、こちらの バージョンではログイン後の画面が表示されました。 よって、バージョンアップをしてしまうと、なんらかの原因で正常なログインができなくなる ようです。 Proxomitronを使って、両者のPOSTおよびGETの内容を確認してみましたが、全く同じデー タでした。 旧バージョンで新バージョンのunitを開くとRequest.Ranges.Unitsが無いというエラーがでた ので、そのあたりのプロパティかと思い、わからないならがも色々やってみたのですが改善 することができませんでした。 ソースを追って、原因追及といきたいところですが、自分にはまだまだ無理ですので、とり あえず旧バージョンに戻す事で対応したいと思っています。 新バージョンで実装されているRequest.CharSetを使いたくてバージョンアップしたのですが、 残念です・・・。 色々教えていただき、ありがとうございました。 また自分の書き込みでご気分を害された方、申し訳ございませんでした。
954 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:05:21 ] そういうときはIndyのバージョンも書けよ
955 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:31:55 ] Double, Integer, Byte, Word, ShortIntなどの2値を比較し、その結果を返すような関数を作りたいのですが、 function TCompareClass.chkValProc<TypeID>( const srcVal, dstVal : TypeID ): Boolean; begin if ( srcVal < dstVal) then begin Result := False; end else begin Result := True; end; end; イメージ的にこういう感じのメソッドを作る方法ってないもんでしょうか。 ↑だと、型が限定されないからか、コンパイルが通りません。 function TCompareClass.chkValProc<TypeID>( const srcVal, dstVal : Double ): Boolean; function TCompareClass.chkValProc<TypeID>( const srcVal, dstVal : ): Boolean; function TCompareClass.chkValProc<TypeID>( const srcVal, dstVal : TypeID ): Boolean;
956 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:33:11 ] 失礼しました。後半あやまって送信してしまいました function TCompareClass.chkValProc( const srcVal, dstVal : Double): Boolean; function TCompareClass.chkValProc( const srcVal, dstVal : Integer ): Boolean; function TCompareClass.chkValProc( const srcVal, dstVal : Byte ): Boolean; function TCompareClass.chkValProc( const srcVal, dstVal : Word ): Boolean; function TCompareClass.chkValProc( const srcVal, dstVal : ShortInt ): Boolean; こういう風に全部用意してやれば一応目的は達成できるのですが、1つにまとめたく思います。
957 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:56:55 ] >>954 自分の無能さをライブラリのせいにして逃げる口実なんだからわざと書いてないんだよ 言わせんな恥ずかしい
958 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 18:02:31 ] >>955-956 TComparer<T>.Defaultの実装が参考になるというかそのまま使えると思う
959 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 18:14:50 ] >>954 ,>>957 バージョンについては>>818 に書いたのですが、最初の書き込み時に書くべきでしたね。 申し訳ございません。
960 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 19:09:23 ] 「最新」なんてバージョンはない
961 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 20:55:58 ] 最初から最後までここまでぐだぐだになれるのもある意味才能だろうな・・・
962 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 23:49:35 ] ume
963 名前:765 mailto:sage [2010/07/06(火) 11:10:56 ] >>960 同じようにアップデートしてしまって以前と同じような動きができなくなった方の為に、参考ま でに書いておきますね。 バージョンは10.5.7で(2009に同梱のものは10.2.5)昨日の時点ではr4270のものを使用しまし た(changelog.txtでの確認)。 最初に試したものはr4258です。 >>961 PCやプログラムについての知識がなさすぎて、皆様を不快な気持ちをさせてしまいました。 申し訳ございません。
964 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 13:14:00 ] いいよ^^
965 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 18:38:37 ] 匿名関数使ったサンプル集みたいなサイトや本って無い?
966 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 21:25:28 ] WebBrowserをフォームに貼ってサイトを表示させてるとkeypreviewをtrueにしてもonkeydownでキーを拾ってくれないんですがどうすればよいのでしょうか?
967 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 17:50:49 ] ローソク足のチャートが書ける日本語のコンポーネントってありませんか? 有料でも良いです。
968 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 17:54:02 ] 条件をひとつ削ってもいいなら腐るほどあると思うけど
969 名前:デフォルトの名無しさん [2010/07/12(月) 17:54:17 ] page13.auctions.yahoo.co.jp/jp/auction/r66957338
970 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 17:58:25 ] >>967 ありますよ
971 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 19:57:43 ] >965 omnithreadlibrary - Project Hosting on Google Code ttp://code.google.com/p/omnithreadlibrary/ のデモの30番とか。