ラベル Delphi 12 Athens の投稿を表示しています。 すべての投稿を表示
ラベル Delphi 12 Athens の投稿を表示しています。 すべての投稿を表示

2025年5月20日

RAD Studio/Delphi/C++Builder 12.3 Athens May Patch

RAD Studio/Delphi/C++Builder 12.3 AthensのMay Patchがリリースされています(ネーミングルールが変わったようでPatch 1、Patch 2ではなくApril Patch、May Patchと呼ぶみたい)。April Patchで更新されたソースファイルが含まれていなかった問題、April Patch適用後のWin64デバッグ式評価機能の問題(RSS-3416)、64ビットIDEのバージョン情報の問題(RSS-3173)を修正します。現時点(2025/05/20)ではGetItからのみインストールできます。GetItおよびポータルサイトからダウンロード、インストールできます

RAD Studio 12.3 May Patch

RAD Studio 12.3 May パッチのリリース (en)

2025年4月29日

RAD Studio/Delphi/C++Builder 12.3 Athens Patch 1 (April Patch)

RAD Studio/Delphi/C++Builder 12.3 AthensのPatch 1(April Patch)がリリースされています。コンパイル速度が低下する問題やジェネリクスのレコード制約の互換性の問題などを修正します。またPAServerの更新についても注意が必要です。GetItおよびポータルサイトからダウンロード、インストールできます。

RAD Studio 12.3 Patch 1

RAD Studio 12.3 April パッチのリリース (en)

Delphi 12.3 April Patch Released

2025年3月13日

RAD Studio/Delphi/C++Builder 12 Athens Release 3 (12.3)

RAD Studio/Delphi/C++Builder 12 AthensのRelease 3 (12.3)がリリースされています。インストールには有効なUpdate Subscriptionが必要です。ポータルサイトからダウンロードできます。

RAD Studio, Delphi, C++Builder 12.3 Inline Web Install
RAD Studio, Delphi, C++Builder 12.3 Inline ISO

12 Athens - Release 3 - RAD Studio
New features and customer reported issues fixed in RAD Studio 12.3 - RAD Studio
List of publicly reported bugs fixed in 12.3 - RAD Studio

RAD Studio 12.3 Athens提供開始のお知らせ (en)

コマンドライン不要で便利に管理: RAD Studio 12ユーザー向けAndroid SDK Manager(GUI版)の提供
RAD Studio 12.3 の AI 搭載 Smart CodeInsight (en)
RAD Studio 12.3 の新機能: 64-bit IDE の初期リリース! (en)
The Android SDK Manager GUI in RAD Studio 12.3
C++Builder 12.3で安全性を確保: サニタイザーの導入 ( en)
RAD Studio 12.3におけるVCL ImageCollectionエディタと画像サポートの改善 (en)
RAD Studio 12.3 で RAD Server が強化されました (en)
12.3 の新機能: InterBase Express から FireDAC への移行用スクリプト (en)
C++Builder 12.3: 新しい命令セットによるパフォーマンス向上の実現 (en)
64bit IDE × 64bitドライバ:RAD StudioとMySQLの接続がもっとシンプルに!
Delphi 12.3でアップデートされたAndroid開発環境
Delphi 12.3 向け FMX Linux が利用可能になりました (en)

2024年11月12日

RAD Studio/Delphi/C++Builder 12.2 Athens Patch 2

RAD Studio/Delphi/C++Builder 12.2 AthensのPatch 2がリリースされています。C++Builderでプロジェクトグループを開いたときにエラーが報告される問題とVTK(Visualization Toolkit)ライブラリがC++Win64Xコンパイラでコンパイルエラーになる問題、macOSのRTLソースファイルが不足している問題を解決します。現時点(2024/11/12)でGetItからのみGetItおよびポータルサイトからダウンロード、インストールすることができます。

RAD Stduion 12.2 Patch 2

RAD Studio 12.2 Athens Patch 2 のリリース (en)

2024年10月18日

RAD Studio/Delphi/C++Builder 12.2 Athens Patch 1

RAD Studio/Delphi/C++Builder 12.2 AthensのPatch 1がリリースされています。不具合対応の他に、12.2でバイナリ互換性が失われた問題を修正しますが、すべてのプラットフォームのDCUとランタイムパッケージが更新されるため、現状のインストールに対するパッチではなく、アンインストールからの再インストールになります。GetItおよびポータルサイトからダウンロード、インストールできます(GetItからの場合も再インストールになります)。

RAD Studio, Delphi, C++Builder 12.2 Inline Web Install
RAD Studio, Delphi, C++Builder 12.2 Inline ISO

RAD Studio 12.2 Athens Inline Patch 1 リリース (en)

2024年9月12日

RAD Studio/Delphi/C++Builder 12 Athens Release 2 (12.2)

RAD Studio/Delphi/C++Builder 12 AthensのRelease 2 (12.2)がリリースされています。インストールには有効なUpdate Subscriptionが必要です。ポータルサイトからダウンロードできます。

RAD Studio, Delphi, C++Builder 12.2 Web Install
RAD Studio, Delphi, C++Builder 12.2 ISO

12 Athens - Release 2 - RAD Studio (en)
New features and customer reported issues fixed in RAD Studio 12.2 - RAD Studio
List of publicly reported bugs fixed in 12.2 - RAD Studio

RAD Studio 12.2 Athensの提供開始 (en)
Visual Assist in C++Builderによるリファクタリングの強化: クリーンコードとレガシーコード向けの新機能 (en)
RAD Studio 12.2の新機能および機能強化一覧 (en)
RAD StudioのWeb開発をWebStencilsテンプレートエンジンで刷新 (en)
C++Builder 12.2 の動的パッケージ ! (en)
RAD Studio IDEで「AI LLM」と「Smart CodeInsight」を使用する (en)
Delphi LSP: 大規模プロジェクト向けの 64-bit パワーと改良された CodeInsight (en)
RAD Studio 12.2の新機能: コーディングに集中するためのフォーカス モード (en)
並列配列と順番付きディクショナリによるDelphi RTLの高速化 (en)
C++Builder 12.2 の優れた CMake サポート (en)
C++Builder 12.2のパッケージに関する実用的な情報 (en)
C++Builder 12.2で高速な並列コンパイルを行うためのポイント (en)
Upgrading C++Builder 12.2: Tip #1, the Patch
C++Builder 12.2での古いRTLへの対応 (en)
C++Builder 12.2で 4GB以上のファイルを iostreamsで処理する (en)
C++Builder 12.2でコンパイラオプションを活用する (安全性、正確性、64-bitコードへの移行) (en)
Upgrading C++Builder 12.2: Tip #4 1/2: Check out compiler safety options
Upgrading C++Builder 12.2: Tip #4 ¾, Help When Moving from 32 to 64 Bit
C++Builder 12.2でC++のEHとSEHの例外処理を分割する (en)
C++Builder12.2: 自動リンクによってライブラリを処理する (en)
C++Builder 12.2: bcc64xに関するワンポイントアドバイス (en)

2024年4月18日

RAD Studio/Delphi/C++Builder 12.1 Athens Patch 1

RAD Studio/Delphi/C++Builder 12.1 AthensのPatch 1がリリースされています。現時点(2024/04/18)ではGetItからのみダウンロード、インストールすることができます。IDEとコンパイラの不具合修正のようです。

RAD Studio 12 Athens Patch 1 のリリース (en)

2024年2月7日

RAD Studio/Delphi/C++Builder 12 Athens Patch 1

RAD Studio/Delphi/C++Builder 12 AthensのPatch 1がリリースされています。多数の不具合修正が含まれています。現時点(2024/02/08)では(やっと復旧した)GetItからのみダウンロード、インストールすることができます。2024/02/10現在でGetItまたはポータルサイトからダウンロード、インストールすることができます。またwebインストーラもPatch 1適用済のみものがダウンロードできるようになっています。

RAD Studio 12.0 Patch 1
RAD Studio, Delphi, C++Builder 12.0 Inline with Patch 1 Web Install

なおオリジナルのwebインストーラからインストールした場合はPatch 1がインストールされているかどうかにかかわらず、IDEのツール→機能の管理で言語やターゲットプラットフォームなどを追加することはできず、一旦アンインストール後にPatch 1適用済のwebインストーラからインストールし直す必要があるため注意が必要です。

RAD Studio 12 Athens Patch 1 のリリース (en)
GetIt アップデート: RAD Studio 12 向けのGetItパッケージインストールが利用可能に! (en)
GetItアップデート: RAD Studio 12 GetIt オンラインインストールが利用可能に! (en)

2024/02/10追記: Patch 1がポータルサイトからダウンロードできるようになったこととオリジナルのwebインストーラからインストールした場合の注意事項を追記しました。

2023年12月13日

TSqidsEncodingで文字列を難読化する

このアーティクルはDelphi Advent Calendar 2023の12日目の記事です(2日ぶり10回目)。

前回はDelphi 12 Athensで導入されたTSqidsEncodingを普通に使ってみましたが、TSqidsEncodingにはTArray<Integer>を扱うoverloadがあり、今回はそれを使って文字列を難読化してみます。
とはいっても、単にDelphiの文字列(UTF-16)の1文字を単純にUInt16(=Word)として扱うだけです。
uses
  ..., System.NetEncoding.Sqids;

type
  TSqidsEncodingHelper = class helper for TSqidsEncoding
  public
    function EncodeFromString(const AStr: String): String;
    function DecodeToString(const AHash: String): String;
  end;

function TSqidsEncodingHelper.EncodeFromString(const AStr: String): String;
var
  Values: TArray;
  I: Integer;
begin
  SetLength(Values,Length(AStr));
  for I := 0 to Length(AStr) - 1 do
  begin
    Values[I] := UInt16(AStr[I + 1]);
  end;
  Result := Encode(Values);
end;

function TSqidsEncodingHelper.DecodeToString(const AHash: String): String;
var
  Values: TArray;
  I: Integer;
begin
  Values := Decode(AHash);

  SetLength(Result,Length(Values));
  for I := 0 to Length(Result) - 1 do
  begin
    Result[I + 1] := Char(Values[I]);
  end;
end;
文字列の難読化としてXORやROT13などがよく使われますが、このほうがまだましな気がしますね。

2023年12月10日

TSqidsEncodingで数値と短縮IDを相互変換する

このアーティクルはDelphi Advent Calendar 2023の10日目の記事です(1年ぶり9回目)。

Delphi 12 Athensで数値と短縮IDを相互変換するSqidsを実装したTSqidsEncodingが追加されました。
Sqidsはあくまで難読化であって暗号化ではないので、内容を隠すことはできませんが、ID番号などをそのまま見せるよりはまし、というような場合に有効です。Sqidsの公式サイトでは、適しているケースとして
  • 短縮リンク
    • URLで安全に使用できる
  • イベントID
    • 衝突しないエンコード/デコード
  • ワンタイムパスワード
    • 短く問題のあるワードを含まない
適していないケースとして
  • 機密データ
    • 暗号化されるわけではない
  • ユーザID
    • デコードすることでユーザ数が漏洩する
を挙げています。

使用方法は簡単で、エンコードするには
uses
  ..., System.NetEncoding.Sqids;

var
  Sqids: TSqidsEncoding;
begin
  Sqids := TSqidsEncoding.Create;
  try
    Edit2.Text := Sqids.Encode(Edit1.Text);

  finally
    Sqids.Free;
  end;
end;
デコードするには
var
  Sqids: TSqidsEncoding;
begin
  Sqids := TSqidsEncoding.Create;
  try
    Edit3.Text := Sqids.DecodeToStr(Edit2.Text);

  finally
    Sqids.Free;
  end;
end;
とするだけです。Sqidsのソースは数値ですが、エンコードではInreger、TArray<Integer>、Stringを受け取るoverloadが用意されています(Stringは単独またはカンマ区切りの数値表現)。
またデコードはTArray<Integer>を返すもの(Decode)、Integerを返すもの(DecodeSingle/TryDecodeSingle)、Stringを返すもの(DecodeToStr)が用意されています。
さらにコンストラクタにエンコード用の文字列を渡すことで生成される文字列をカスタマイズすることもできます。

2023/12/22追記: 公式のblogにもSqidsの使いかたの記事が出ました。
Sqids: RAD Serverとの統合およびスタンドアロンライブラリ (en)

2023年11月8日

RAD Studio/Delphi/C++Builder 12 Athensリリース

RAD Studio/Delphi/C++Builder 12 Athensがリリースされています。

RAD Studio 12 Athens ヘルプ (en)
リリース ノート (en)
インストール ノート (en)
新機能 (en)
New features and customer reported issues fixed in RAD Studio 12.0
Platform Status

ポータルサイトからダウンロード可能です
RAD Studio, Delphi, C++Builder 12.0 Web Install
RAD Studio, Delphi, C++Builder 12.0 Inline with Patch 1 Web Install
RAD Studio, Delphi, C++Builder 12.0 ISO
BDE for RAD Studio 12.0
Embarcadero General Packages Download for RAD Studio 12.0

『RAD Studio 12 Athens』の提供開始 (en)

Delphi/C++Builderライブラリに関する今後の展望 (en)
Android API 33サポートはRAD Studio 12ベータ(Yukon)で実施 (en)
Delphi言語: 文字列リテラルのモダナイゼーション (en)
Clang v15 compiler support coming to C++Builder 12
RAD Studio 12ベータ情報: マルチデバイスに対応したアイコンジェネレータ (en)
RAD Studio 12ベータ情報: 弱いエイリアスの導入による「NativeInt」の対応 (en)
RAD Studio 12のWin64 Clangツールチェーン (en)
[Yukon Beta Blog] C++ and Visual Assist in RAD Studio 12.0
Delphi 12における3 x 12 VCLの機能強化 (en)
Delphi 12における3 x 12 FireMonkeyとAndroidの機能強化 (en)
Delphi 12における3 x 12 データ、インターネット、RTLの機能強化 (en)
Delphi 12における 3 x 12 IDE、インストーラー、Delphi 言語の機能強化 (en)
Delphi 12向けに更新されたZXingデモアプリ(Android 13と iOS 17で動作済み)を公開 (en)
ウェビナーへ寄せられたRAD Studio 12 に関するQ&A (en)
Sqids: RAD Serverとの統合およびスタンドアロンライブラリ (en)
RAD Studio 12向けに新しいプレミアムスタイルを提供 (en)
Delphi / C++Builder 12のSkiaサポートで表現力豊かなUIを構築

GitHub - Embarcadero/RADStudio12Demos: Delphi and C++Builder Demos for Embarcadero RAD Studio version 12

2024/02/10追記: インストーラがPatch 1を含むものに差し替えられています。またBDEおよびEmbarcaderoが提供する主要なパッケージのローカルGetItパッケージもポータルサイトからダウンロードできるようになっています。