くだすれDelphi(超初心者用)その59【Embarcadero】

■ このスレッドは過去ログ倉庫に格納されています
2021/09/24(金) 11:16:27.40ID:gP9hkwVT
Delphi(デルファイ)について、他のスレッドでは書き込めない超低レベル、もしくは
質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。

Delphi使いが優しくコメントを返しますが、お礼はDelphiの布教と初心者の救済をお願いします。

■ Delphi 11
http://www.embarcadero.com/jp/products/delphi

■ Delphi Community Edition (無料)
iOS、Android、Windows、macOS 向けアプリも開発可能。年間売上5000 US$以内の商用開発可。
https://www.embarcadero.com/jp/products/delphi/starter

<前スレ>
くだすれDelphi(超初心者用)その58【Embarcadero】
https://mevius.5ch.net/test/read.cgi/tech/1583919039/

■ 便所の落書きレベルの個人的な悪口やきつい言葉(氏ねとか)は禁止だからな。
■ Embarcaderoヲッチャ的な内容も歓迎だ。

■ 誰も立てないから立てた。さあ語れ。
2023/01/21(土) 20:03:02.14ID:wpHNmfli
>>682
TEdgeBrowserでのhtml取得の仕方

スクリプトを実行します。
EdgeBrowser1.ExecuteScript('encodeURI(document.documentElement.outerHTML)');

イベントが発生します。
procedure TEdgeViewForm.EdgeBrowser1ExecuteScript(Sender: TCustomEdgeBrowser;
AResult: HRESULT; const AResultObjectAsJson: string);

AResultObjectAsJsonにhtmlが入ります。

ヒントになればいいのですが
2023/01/21(土) 21:06:08.22ID:pwh7b8Dl
https://blogs.embarcadero.com/ja/execute-scripts-and-view-source-with-tedgebrowser-ja/
公式にもあるし
https://www.petitmonte.com/bbs/answers?question_id=29951
掲示板にもある
2023/02/19(日) 12:00:18.00ID:msEUZo/a
Delphi 28周年記念キャンペーン!最大28% OFFの特別価格
https://www.embarcadero.com/jp/campaign-japan
686デフォルトの名無しさん
垢版 |
2023/02/19(日) 15:32:57.29ID:MLUPLAgZ
>>685
たけぇーよ

Delphi 6 Pro 6万8000円  Delphi 6 Personal 4800円だったのに
2023/02/19(日) 16:15:55.38ID:+J4STHqh
出せて4万だな、サンキュッパとか
2023/02/19(日) 23:18:32.05ID:lwI5eijq
CEで開発中のアプリで、Google push (FCM) メッセージを
WindowsからAndroid にプッシュする部分があるんだけど
Android 9では正常に受信できてるのにAndroid 12では受信できないことに気づいた

色々調べたらAndroid 12から実装が少し変わったらしい
ちなみに Delphi 11の無料体験版でビルドしたら正常に受信できた

そこで質問なんだけど
CE でなく11の無料体験版でビルドしたアプリは個人使用はOK?
さらにフリーで配布するのは?
689デフォルトの名無しさん
垢版 |
2023/02/20(月) 01:05:43.25ID:zYDw/q5N
>>688

https://www.embarcadero.com/jp/try-rad-now#trial

に、

RAD Studioの30日トライアル版をダウンロードすれば、Delphi / C++Builderのすべての機能を30日間試用することができます。トライアル版の試用が終了したら、正規のライセンスを購入して開発を続けることができます。

とあるし、考えるまでもなくダメだと思うぞ。
諦めてライセンス購入なされ。
2023/02/20(月) 08:55:29.55ID:YMang20M
>>689
その30日間に何をしたらダメなのか?ハッキリ規定してあるかな?
ビルドした成果物は試用期間中に使っちゃダメなの?フリーで配布したらダメなの?
2023/02/20(月) 13:58:44.37ID:cosStO0+
自分で調べろ
2023/02/20(月) 14:03:45.99ID:gWCCmRg9
>>691
オマエモナー
2023/02/20(月) 14:27:16.32ID:cJPVlzOb
トライアル版で作成したことを明記して、フリーで配布してみる
2023/02/20(月) 15:06:48.16ID:jsOcVc3X
>>693
してみるの?してるの?どっち?
2023/02/20(月) 15:10:37.42ID:1gcKGF4j
>>693
してみるの?してるの?しろと言ってるの?どれ?
2023/02/20(月) 16:35:41.79ID:cJPVlzOb
してみろ
2023/02/21(火) 20:58:37.61ID:f7F9a7qV
ちょっと教えて

呼ばれた関数内で自身がメインスレッドで実行されてるか
またはワーカスレッド内で実行されてるかを識別する簡単な方法ってある?
2023/02/21(火) 22:33:10.29ID:aw7PXemF
スレッドのIDをMainThreadIDと比べたらいいんじゃね?
2023/02/21(火) 22:50:13.22ID:aw7PXemF
スレッドのIDをMainThreadIDと比べたらいいんじゃね?
2023/02/21(火) 22:51:48.98ID:aw7PXemF
書き込み失敗って出たのに書けてた……
2023/02/22(水) 01:23:34.00ID:CxG/IpHn
なるほど
Windows だと getcurrentthreaid か
702デフォルトの名無しさん
垢版 |
2023/02/22(水) 01:36:02.28ID:ajU/MxEc
>>701
メインスレッドIDは、System.pasで定義されるMainThreadID

実行中のスレッドIDは、TThreadクラスから
TThread.CurrentThread.ThreadID

で取ればクロスプラットホームでもいけるんじゃないかな?
2023/02/22(水) 18:08:53.64ID:CxG/IpHn
>>702
If System.MainThreadID = TThread.CurrentThread.ThreadID then
でチェックできるね
ありがとう
2023/02/27(月) 20:47:02.44ID:lyhlf193
Winny C++Builder と、おーむが Paradox 使っていた話は、
関係者は墓までもっていくことになっておる。
2023/03/02(木) 17:52:24.16ID:9GsrUiC6
新しい Community Edition まだーーーーー?
2023/03/03(金) 13:29:48.99ID:QoTrVGW4
パッチが四つくらいでてからじゃね?
707デフォルトの名無しさん
垢版 |
2023/03/04(土) 07:21:09.42ID:86UeI3RB
11.3インストールしてみたけどWin64ビルドしてIDE上で実行しようとすると
「プロセスが生成できません」と出て実行できん。 32bitビルドでは大丈夫。
ビルドしたものはIDE上でなければどちらも動作する。

俺みたいなライトユーザーが使って初日で見つかる不具合とか相変わらずの
品質管理だな
708デフォルトの名無しさん
垢版 |
2023/03/04(土) 10:35:30.22ID:RFNVa0Qi
ParadoxこそDelphiの正統な祖先
2023/03/04(土) 13:47:52.75ID:gWXfSOMZ
>>707
フォルダ名に日本語使うだけでエラー出るとかそんなレベルよ
2023/03/04(土) 13:51:53.54ID:vjbWV2TQ
ライトユーザーを名乗る初心者はこっちの想像もつかないことをして文句言うから鵜呑みにはできん
2023/03/05(日) 08:50:08.72ID:+4ji9Npd
↑ほんこれ
エンバカはこういう奴にやられて現在に至る
2023/03/06(月) 08:57:04.41ID:fRbJChir
よくみんなお布施し続けるなあ?馬鹿なの?
2023/03/06(月) 09:00:58.00ID:STc0b/R5
KeyPatch使ってるに決まってるじゃん
そんなこともわからない馬鹿なの?
2023/03/07(火) 02:05:29.86ID:RvYAXypy
11.3が出たってことは
秋に12といっしょにCEが出る

。。。とかだったらいいけど
2023/03/07(火) 16:43:06.53ID:2h4hijwR
arm Windowsアプリは、VCLで対応してほしい
2023/03/07(火) 17:53:03.13ID:2C9VHOLq
VCLがARM対応になれば、シャープの電子手帳(Win CE)の
アプリを簡単に作れるようになるのかな?
そうなれば面白いのだが
2023/03/07(火) 20:57:56.96ID:MVmdrI2Z
CEでCE
2023/03/09(木) 04:18:14.33ID:t/hCWpIc
MS ですら Arm32 は見捨てたから、Win CE は無理だべ
719デフォルトの名無しさん
垢版 |
2023/03/27(月) 15:32:31.22ID:lHGRbz7G
delphi10.4で下記のResultが使われてないって出るんだけど

function TForm1.Test:Boolean;
var
 s : string;
 iTest : Integer;
begin
 result := False;    // ←この代入が使われてないと出る
 iTest := 0;
 try
  s := IntToStr(10 div iTest); //ゼロ除算エラー発生
  result := True;
 finally
  ;
 end;
end;

昔からだっけ?
2023/03/27(月) 16:49:15.04ID:l3hexUPO
C++Builder5と2009の段階で出る
721デフォルトの名無しさん
垢版 |
2023/03/27(月) 17:03:41.28ID:lHGRbz7G?PLT(15000)

>>720
ありがとう
最新のフリー(community edition)のdelphi入れてみたら色々変わってて戸惑ったわ
delphi5まではよく使ってたんだけどね
exceptに変えてその中でResult=Falseにすればいけるけど、
finally使う場合にいい方法ある?
2023/03/27(月) 17:08:11.88ID:wRG46vdP
>>721
ワーニングの出る Result := False; という行は削除して
単純に Result := IntToStr(10 div iTest); じゃダメか?
723デフォルトの名無しさん
垢版 |
2023/03/27(月) 17:20:11.48ID:lHGRbz7G?PLT(15000)

>>722
>>719のファンクションはテスト用で
実際は予想されるエラーが複数あるのです

しかも>>719を実際動かしてみると
if test() then
 showMessage('True')
else
 showMessage('False'); // ←このメッセージが表示されない
2023/03/27(月) 20:10:14.39ID:l3hexUPO
>>721
そもそもその警告自体がお節介だから、わかっているところは警告無効にすればいいのでは?

それか、そういう目的のコード書くなら
try
try
except
finally
な感じで囲うべきじゃないかと思うけど
2023/03/27(月) 20:15:48.92ID:l3hexUPO
>>723
except で受けてないんだから例外はTApplication::Runまで出るでしょ
TForm1.Test で例外出したくないならなおさら
try
except
で捕捉するべきでは?
726デフォルトの名無しさん
垢版 |
2023/03/27(月) 21:30:18.32ID:R4WH7nZY
例外をプログラムで受け取るみたいな設定なかったっけ
2023/03/28(火) 12:31:38.19ID:nRcyGTje
例外発生時に関数の中でキャッチしなければ
Resultを受け取る相手がいないんだから
そもそもどういう動作を期待してるのか分からない
728デフォルトの名無しさん
垢版 |
2023/03/28(火) 13:21:42.43ID:pfcXS9yM?PLT(15000)

単純に関数の中でエラーが出たか出なかったかを判定してるんだろ
729デフォルトの名無しさん
垢版 |
2023/03/28(火) 13:42:22.64ID:pfcXS9yM?PLT(15000)

でも>>724が一番オーソドックスかな
面倒だけどネストするのが正解か
ありがとう
730デフォルトの名無しさん
垢版 |
2023/03/28(火) 14:22:50.22ID:pfcXS9yM?PLT(15000)

結局この形になったです
ヒントも出ないしヨシ

function test():boolean;
begin

 try

  メモリ確保など

  try
   処理1
  except
   result := False; // 失敗1
   exit;
  end;

  try
   処理2
  except
   result := False; // 失敗2
   exit;
  end;

 finally
  ; // メモリ解放など
 end;

 Result := True;//成功

 end;

end;
2023/03/28(火) 15:58:10.20ID:nRcyGTje
わざわざexceptを二つに分ける意図はそのコードでは分からないけど
本来キャッチする例外の種類は限定すべきできっと実コードでは想定される例外の違いでexceptを分けたりするんだろうと読み解けば
それで所望の動作にはなる

例外が生成される前提で>>728がしたいなら端からtry exceptしかなく
最初のコードはdelphi5でもコンパイルヒントが出ないだけで思い通りの動作はしない
分からないならtry文について十分な理解ができてないと思うぞ
finallyはブロックの外から見て例外がなかったことにならない

try except finally endという構文が欲しいという話は時々見るな
732デフォルトの名無しさん
垢版 |
2023/03/28(火) 19:45:55.45ID:HlgMyhRA
そーいやDelphi7の頃だったと思うけど、

// ここでリソースの確保
try
 raise Exception.Create;
finally
 // 確保したリソースの解放
end;

って書くと、例外がfinallyに吸い込まれてメソッドの外に送出されないの思い出した。
解決策は一枚関数を挟むことで、例外やtryブロック内をローカル関数に移動させてたなー。
XE5までくると、ちゃんと外に例外を送出してくれるようになってたけど。
733デフォルトの名無しさん
垢版 |
2023/03/29(水) 14:00:17.48ID:rf+zIJy2?PLT(15000)

>>731さんの仰る通り、サンプル用のコードだったので実際は
エラーの種類で処理を分けるので本来Resultの型はIntegerです
それと10何年ぶりかにコード書いたのでfinallyで例外解除されると勘違いしてましたね
ありがとうございます
2023/03/30(木) 21:44:53.65ID:gI699tUo
CEのFMXだけどフォームを最小化してもWindowStateが変化しないな
ヘルプの記述がまったく当てにならん

WindowsのWndProcをフックする方法が出てたけど
タスクバー上のアイコンのクリックで最小化/復元するとメッセージが飛んでこない

VCLのソース見たけど複雑過ぎる
2023/04/06(木) 18:37:19.28ID:bzWI0X3N
スタイルってみんなどうやって作ってんの?
2023/04/06(木) 22:14:21.59ID:5uosoNme
健康な食事と適度な運動かな
2023/04/07(金) 16:37:19.90ID:sWhUbXYB
twitter apiのv1が5月から使えなくなるから
v2対応してるんだけど何か面倒になってきた

v2自体は簡単なんだけど
画像アップロードのv2化がまだみたいで
その部分はv1使えとか言ってる

急に言い出して、これだけ急がせて
twitter側の準備はできてないとか
なんだかなあ。。。
738デフォルトの名無しさん
垢版 |
2023/04/07(金) 17:50:41.43ID:zF6B5iAZ
1年前くらいにtwitter apiを触ったときもそうだった気がした…
作ってないのか
2023/04/07(金) 19:23:24.06ID:XNPFXzxl
>>736
あんまり面白くないな…
740デフォルトの名無しさん
垢版 |
2023/04/22(土) 15:28:26.49ID:Syso8+Jr
だれかこれ↓をdelphi用の関数にしてほしい

平面直角座標と緯度経度の相互変換をするライブラリ。
https://gist.github.com/yubeneko/cbde0e3bae30eac4fab5457dc5b1f0a2
2023/04/22(土) 16:53:43.27ID:4ZYj+JBx
>>740
誰でもできそうじゃん
自分でするかChatGPTに頼めよ
2023/04/22(土) 17:06:31.56ID:2HOdFmaC
ChatGPT使ったら教えてくれたぞ
合ってるかは知らないけど
2023/04/22(土) 17:57:10.82ID:jtV+f451
ChatGPTは文章適当に生成するだけで内容の保証なんてないよう
744デフォルトの名無しさん
垢版 |
2023/04/22(土) 20:21:42.49ID:nEsR46ZQ
ChatGPT、ジェネレート中に途中で止まるんだが
745デフォルトの名無しさん
垢版 |
2023/04/22(土) 21:07:32.39ID:D/SQuGiX
続き書いてとかで再開してくれないっけ
2023/04/22(土) 21:50:42.41ID:2HOdFmaC
俺はnotionで試したな
2023/04/22(土) 21:57:20.56ID:nEsR46ZQ
偉そうな>>41がきっとやってくれる
74841
垢版 |
2023/04/23(日) 15:19:00.47ID:MZUm2W1c
なんか俺に流れ弾飛んできたんだけど
2023/04/23(日) 17:41:38.36ID:3JPMceGI
胸ににいつでも刺さってる
750デフォルトの名無しさん
垢版 |
2023/04/24(月) 17:13:27.37ID:6cFqbxjy
何度も何度もChatGPT3.5にダメ出ししてたら↓こんなん返ってきたw

申し訳ありませんが、私はプログラミング言語Delphiの専門家ではありません。
ただし、国土地理院が提供する座標変換ツールを使用して、
座標値から緯度経度を計算する方法を説明することができます。
2023/04/24(月) 17:22:21.18ID:k3IXMJMF
>>750
脅迫かな?
752デフォルトの名無しさん
垢版 |
2023/04/24(月) 18:47:43.23ID:Jqcfl2Lg
>>748
まだぁ?
2023/04/24(月) 19:13:49.32ID:k3IXMJMF
>>740
これ自分でできないやつがコーディングしてんのマジ?
今更Delphiを勉強しようというやつはいないだろうしベテランがどこで引っかってるのか気になる
754デフォルトの名無しさん
垢版 |
2023/04/24(月) 19:46:39.68ID:55bD6W6J
似たような文法のだらだら書いてるだけだし自分でできるんじゃねとは思うわ
755740
垢版 |
2023/04/25(火) 11:38:48.44ID:pNuHJxpn
結局自分でやりました
横着してなんかすいませんでした
2023/04/25(火) 11:41:15.71ID:Xlw1eETD
横着かい
「なんか」というところから
世の中を舐めてる雰囲気がビシビシ伝わってきて不幸になれと呪っちゃいそうだ
2023/04/28(金) 12:16:08.78ID:fLDAt0FW
昨日、CEが11.3になった模様

https://www.embarcadero.com/jp/products/delphi/starter

CEユーザーの自分には朗報
2023/04/28(金) 12:32:45.45ID:fLDAt0FW
これでdelphiで開発したandroid アプリをGoogle play store に登録できるかな?
登録要件はAPI level 33 (android 13) だったよね

Sydneyで作ったのはターゲットバージョンが古すぎて
登録できなかったんだよ。。。
759デフォルトの名無しさん
垢版 |
2023/04/28(金) 18:07:57.46ID:0D7LGBQC
とりあえず11.3入れてみるか
2023/04/28(金) 21:26:51.52ID:vEb9B3Y9
あいかわらずCEじゃlinuxアプリ作れないのか……
761デフォルトの名無しさん
垢版 |
2023/04/29(土) 17:44:21.06ID:QdoWjYgK
記事見て
デルファイって?あ、あのデルファイか。。
忘れてたわ
2023/04/30(日) 16:43:34.97ID:GR6wSOXk
Δελφοι
2023/05/01(月) 01:40:29.01ID:Cw39p3yF
CE 10系が11系になって、何か画期的に進化したところある?
2023/05/01(月) 12:28:44.81ID:gfw7kW16
>>763
俺もそれ知りたい!
2023/05/01(月) 23:55:27.22ID:HfsGPutG
ローカル変数に自動でLつけてくれるか色分けしてくれるプラグインはよ
2023/05/02(火) 08:51:20.82ID:FTGD6VMo
>>763
ない
767デフォルトの名無しさん
垢版 |
2023/05/02(火) 10:08:32.81ID:V30afgjZ
ないのか…
2023/05/02(火) 13:12:28.97ID:iA+XQtbS
>>767
ない
2023/05/02(火) 16:52:43.48ID:8oWX7iaF
FMX.MEMOで、メモ帳アプリを作って、AndroidでIME入力した時
文字に着く色(変換中の文字の色分けや破線)が、まともに表示出来ない
問題は解消されてるのだろうか? そこが気になる
2023/05/02(火) 23:59:10.38ID:Wzw4wWG9
>>769
数日前に11で再ビルトしてインストールした
自作のアプリで調べてみたら
黒い文字のまま実線の下線だった

てか今までこれが普通だと思ってた

話は変わるが、まだSDKをLevel 33に上手くアップデートできなてない
Delphi でGoogleストアに公開してる人っているのかなぁ
2023/05/03(水) 00:35:00.79ID:2Z4E3eph
>>770
レスありがとう
まだ解消されてないってことか

ネイティブなAndroidアプリ(最初からAndroid用に作られたアプリ)の
文字入力だと、変換中に色分け表示されて文節の区切りなどが確認しやすいので
FMX.MEMOみたいに色が付かないと漢字変換がやりにくいんだよなあ
2023/05/03(水) 08:43:16.82ID:Mdt1tvSg
Markdownサポートは便利だぞ
document.dprojに.mdファイル突っ込んでおいて
^.で検索かけてぱっと呼び出せるようになる
2023/05/09(火) 13:52:24.44ID:MSsX5TwP
CEが11.3になってやっとgoogle play storeにアプリを登録できた

それにしてもSDKの更新をコマンドラインでって。。。
以前はUIでできなかったっけ?
面倒だからAndroid StudioのSDKを利用したけど
2023/05/09(火) 14:08:38.87ID:MSsX5TwP
あとgoogleへのアプリ申請でaccessibility(ユーザー補助?)の警告が出るなぁ

delphiはネーティブなコントロールほとんど使ってないから
文字が描かれてても OSから見たら ただの図形ってところが問題なんだろうな
とにかくTalkBack なんかで読み上げされないのは何とかならないもんか

今のところ審査結果への直接的な影響はないけど
いつ変わるか分からない
2023/05/09(火) 19:17:52.01ID:rdVc+dAl
もうDelphiでWinアプリ作るやつはいないのか…
2023/05/12(金) 11:36:33.85ID:KmLSHtKf
>>775
Winアプリ作成は、問題なさすぎなのでわ
2023/05/12(金) 17:02:56.81ID:B337kqau
まあモバイルで問題なければデスクトップでも動く
逆は問題が多い
2023/05/12(金) 17:46:05.07ID:BJivcmvz
しかしモバイルをDelphiで、と言われてもなー
うんこ流すアプリが関の山でわ?w
2023/05/12(金) 20:41:18.64ID:i3O6Mkoh
VLC media player の VCLって無いですよね
780デフォルトの名無しさん
垢版 |
2023/05/12(金) 21:24:24.07ID:+K+oHi9i
>>779
PasLibVlcってのがある
2023/05/12(金) 22:18:33.77ID:i3O6Mkoh
感謝です
調べてみます
2023/05/14(日) 14:03:55.95ID:OY7Ptsev
エンバカデロにログインできないんだけれど
https://my.embarcadero.com/
https://members.embarcadero.com/
https://quality.embarcadero.com/
できますか?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況