2026年2月26日

2026年2月13日

Windows 11のWindowsサンドボックスでフォントリンクを有効にする

Windows上でプログラムを作っていて、検証、特にインストーラ関係の検証をしようとすると、開発用のPC以外の環境が欲しくなることがあります。検証用のPCを別途用意する、というのが一番簡単ですが、お金もかかりますし、そのPCを適切にメンテナンスする必要もあり、あまりお手軽ではありません。
またVMware WorkstationVirtualBoxHyper-Vなどの仮想マシン環境を使う、という方法もありますが、これらはゲストOSに別途ライセンスを用意するか、評価版を使用する必要があります。MSDNに入っていれば検証用のライセンスが含まれていますが、そうでなければリテール版のライセンスを購入するか、評価版(サーバOSは180日、クライアントOSは90日有効)ということになります。ところが現時点(2026年2月)で評価版のVM(VHD)がダウンロードできるのはWindows Server 2025(英語版)のみで、クライアントOSはISOのみとなっています。このため評価期間が過ぎるとISOからインストールし直すことになり、これもあまりお手軽とは言えません。
そこでもう一つの選択肢として考えられるのがWindowsのPro/Ent/Edu SKUで使用できるWindowsサンドボックスです。これはホストのWindowsのOSファイルを使用するため軽量で、OSのインストールも不要です。その代わり再起動、シャットダウンで全ての変更が破棄されるため、インストール後に再起動が必要なケースには使用できません。Windows 11 22H2以降でWindowsサンドボックスは再起動にも対応するようになりました(シャットダウンで全ての変更が破棄されることに変わりはありません)。とはいえPro版であれば追加のライセンスも不要で、必要なときにすぐ起動して使える、というのはなかなか便利です。

と、ここまでは前置きで、Windows 10では特に問題ないのですが、Windows 11では起動したWindowsサンドボックスのゲストOSのレジストリ上にフォントリンクが"SimSun-ExtG"(宋体拡張G)に対してしか登録されておらず、日本語をTahomaやSegoe UIで表示するGDIアプリケーション(DelphiのVCLアプリケーションなど)では正しく表示されなくなってしまっています。上に書いたようにWindowsサンドボックスではシステムファイルはホストOSのものをそのまま使用するため、フォントファイルもホストOSにあるものは全てゲストOSにも存在しています。つまりフォントリンクに関するレジストリをゲストOSに登録すればよい、ということになります。そこでカスタムWindowsサンドボックスでこれを解決してみます。

まずホストOSのフォントリンクのレジストリ設定をエクスポートします。レジストリエディタで HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink を開き、右クリック→エクスポートでファイルに保存します(ここでは"SystemFontLink.reg"とします)。

次に.wsbファイルを作成します。ここでは現在のユーザのドキュメントの下にWindowsSandboxというフォルダを作成し、その下にエクスポートしたファイルと、エディタで以下のようなXML形式のファイルを作成して置きます。.wsbファイルの文字コードはUTF-8(BOM付)かASCIIにしてください。
<Configuration>
  <VGpu>Enable</VGpu>
  <Networking>Enable</Networking>
  <AudioInput>Disable</AudioInput>
  <VideoInput>Disable</VideoInput>
  <ProtectedClient>Enable</ProtectedClient>
  <PrinterRedirection>Disable</PrinterRedirection>
  <ClipboardRedirection>Enable</ClipboardRedirection>
  <MemoryInMB>4096</MemoryInMB>

  <MappedFolders>
    <MappedFolder>
      <HostFolder>%USERPROFILE%\Documents\WindowsSandbox</HostFolder>
      <SandboxFolder>C:\Users\WDAGUtilityAccount\Documents\WindowsSandbox</SandboxFolder>
      <ReadOnly>true</ReadOnly>
    </MappedFolder>
  </MappedFolders>

  <LogonCommand>
    <Command>reg import C:\Users\WDAGUtilityAccount\Documents\WindowsSandbox\SystemFontLink.reg</Command>
  </LogonCommand>
</Configuration>
作成した.wsbファイルをダブルクリックすることで、ホストOSと同じフォントリンクが設定されたWindowsサンドボックスが起動します。Windowsサンドボックスが起動し、フォントリンクがレジストリに登録されますが、これを反映するためにWindowsサンドボックスを再起動します。

ポイントは2つあります。1つ目は<MappedFolders>でホストOS上のフォルダをゲストOSにマッピングすることで、ホストOS上のファイルを参照できるようにしています(ここではホストOSの現在のユーザのドキュメントフォルダの下のWindowsSandboxフォルダを、Windowsサンドボックス上の既定のユーザ("WDAGUtilityAccount")のドキュメントフォルダの下のWindowsSandboxフォルダにマッピングしていますが、ホストOS、ゲストOSとも、どこに配置しても構いません)。
2つめは<LogonCommand>でゲストOSのログオン後にレジストリをインポートすることでフォントリンクの情報を登録しています。

これ以外の設定(特にメモリの割り当て)についてはWindows サンドボックスを使用して構成する | Microsoft Learnで確認してください。

注: Windows 11 22H2以降でWindowsサンドボックスが再起動にも対応していることがわかったため、一部の記述を修正しました。

2026/02/16追記: レジストリに登録したフォントリンクを反映するにはWindowsサンドボックスの再起動が必要という記述を追加しました。

2025年12月25日

RAD Studio/Delphi/C++Builder 13 Florence Smart CodeInsight Claude Patch

RAD Studio/Delphi/C++Builder 13 FlorenceのSmart CodeInsight Claude Patchがリリースされています。Anthropic Claudeのモデルの変更に対応するとのことです。現時点(2025/12/25)でGetItからのみインストールできます。

RAD Studio 13 Smart CodeInsight Claude パッチ のリリース (en)

2025年12月11日

Skia4Delphiでリソースとして埋め込まれたフォントを使用する

このアーティクルはDelphi Advent Calendar 2025の11日目の記事です。

ここまでリソースとして埋め込まれたフォントをVCL(GDI)で使用する方法を見てきました。ところで埋め込んだフォントをSkia4DelphiTSkLabelISkCanvasでも使用したいときは、少し違う方法が必要になります。
Skia4Delphiで描画に使用するフォントはTSkDefaultProviders.RegisterTypeface(かIFMXFontManagerService.AddCustomFontFromFile)で登録するのですが、このときのリソースタイプは(FONTではなく)RCDATAになっている必要があります。しかしフォント以外のリソースもリソースタイプRCDATAとして登録されるため、Win32APIのEnumResourceNames関数でプログラムに含まれるRT_RCDATAのリソースを列挙し、コールバック関数でリソースを読み出したら先頭4バイトでフォントデータかどうかを判別してからWin32APIのAddFontMemResourceEx関数とTSkDefaultProviders.RegisterTypefaceに渡すようにします。

まずプロジェクトにフォントをリソースとして追加します。Delphi IDEの"メインメニュー"→"プロジェクト"→"リソースと画像"で"<プロジェクト名>のリソース"ダイアログで、フォントをリソースとして追加します。このときリソースタイプを"RCDATA"に変更しておきます。
次にプログラムのなるべく早い時点でこのフォントを読み出して登録します。
unit LoadResFontsForSkia;

{$IFNDEF SKIA}
{$MESSAGE ERROR 'Enable Skia4Delphi.'}
{$ENDIF}

interface

uses
  Winapi.Windows,
  System.SysUtils, System.Classes,
  Vcl.Skia;

implementation

type
  TFontType = (ftNotFont, ftGDIFont, ftWebFont);

function CheckFontData(Stream: TStream): TFontType;
var
  Signature: DWORD;
begin
  Result := TFontType.ftNotFont;

  Stream.Position := 0;
  try
    if Stream.Read(Signature,SizeOf(Signature)) <> SizeOf(Signature) then
    begin
      Exit;
    end;

    case Signature of
      $00000100,  // TrueType
      $4F45454F,  // 'OTTO' OpenType
      $66637474:  // 'ttcf' TrueType Collection
      begin
        Result := TFontType.ftGDIFont;
      end;

      $46464F77,  // 'wOFF' Web Open Font
      $32464F77:  // 'wOF2' Web Open Font 2
      begin
        Result := TFontType.ftWebFont;
      end;
    end;

  finally
    Stream.Position := 0;
  end;
end;

function EnumResNameProc(hModule: HMODULE; lpszType: PChar; lpszName: PChar; lParam: LONG_PTR): BOOL; stdcall;
var
  RS: TResourceStream;
  NumFonts: DWORD;
  FontType: TFontType;
begin
  { Load resource }
  if Is_IntResource(lpszName) = False then
  begin
    { By name }
    RS := TResourceStream.Create(HInstance,String(lpszName),RT_RCDATA);
  end
  else
  begin
    { By index }
    RS := TResourceStream.CreateFromID(HInstance,NativeUInt(lpszName),RT_RCDATA);
  end;

  try
    FontType := CheckFontData(RS);
    if FontType in [TFontType.ftGDIFont] then
    begin
      { Regsiter font to GDI }
      if AddFontMemResourceEx(RS.Memory,RS.Size,nil,@NumFonts) = 0 then
      begin
        RaiseLastOSError;
      end;
    end;

    if FontType in [TFontType.ftGDIFont, TFontType.ftWebFont] then
    begin
      { Register font to Skia4Delphi }
      TSkDefaultProviders.RegisterTypeface(RS);
    end;

  finally
    RS.Free;
  end;

  Result := True;
end;

procedure LoadResourceFonts;
begin
  if EnumResourceNames(HInstance,RT_RCDATA,@EnumResNameProc,0) = False then
  begin
    RaiseLastOSError;
  end;
end;

initialization
  LoadResourceFonts;

end.
ユニットのinitialization部で呼び出しているLoadResourceFonts関数では、Win32APIのEnumResourceNames関数でプログラムに含まれるRT_RCDATAのリソースを列挙します。コールバック関数EnumResNameProcではコンストラクタTResourceStream.Createを呼び出してフォントをストリームに読み出し、フォントデータかどうかの判定関数CheckFontDataを呼び出します。CheckFontData関数ではストリームから先頭4バイトを読み出し、TrueType(.ttf)、TrueType Collection(.ttc)OpenType(.otf)、OpenType Collection(.otc)WOFF(.woff)、WOFF2(.woff2)のそれぞれのシグネチャに一致するかどうかでフォントデータかどうかの判定を行います。GDIでは使用できないWOFF/WOFF2形式のフォントもSkia4Delphiでは使用できるので、WOFF/WOFF2形式のときはAddFontMemResourceEx関数に加えてTSkDefaultProviders.RegisterTypefaceも呼び出すようにしています。
これで登録したフォントはSkia4DelphiのFont.Familiesにそのフォント名を指定することで使用できます。TSkLabelならTSkLabel.TextSettings.Font.Families、ISkCanvasに対する描画ならTSkTypeface.MakeFromNameの第1パラメータです。

ん?リソースタイプFONTではなくRCDATAで埋め込んだフォントデータをAddFontMemResourceEx関数に渡せる?じゃあ前回のアーティクルのようにリソースコンパイラを差し替えたりせず、RCDATAでやればいいのでは?と思うかもしれません。その通りで、今回の方法(フォントをRCDATAで埋め込む)を使えば、Delphi 12.3およびそれ以前でもビルド前イベントでresinatorを使って処理する必要はありません。しかしプログラムにフォント以外のRCDATAのリソースが埋め込まれていた場合は、それらもすべて読み出してフォントデータかどうかの判別をする必要があります。このオーバヘッドを許容できるのであれば、今回の方法でも問題ありません。

2025年12月10日

Microsoft Monthly Update 2025/12

今日はMicrosoftのセキュリティアップデートの日です。
2025 年 12 月のセキュリティ更新プログラム - リリース ノート - セキュリティ更新プログラム ガイド - Microsoft
2025 年 12 月のセキュリティ更新プログラム (月例)

Delphi 12.3までの環境でフォントをリソースとして埋め込むとコンパイル時にエラーになる場合の対策

このアーティクルはDelphi Advent Calendar 2025の10日目の記事です。

前回のアーティクルでプログラムにフォントをリソースとして埋め込んで使用する方法を見てきましたが、Delphi 12.3 Athensおよびそれ以前の環境ではコンパイルしようとすると、埋め込もうとしたフォントによっては
[BRCC32 エラー] "brcc32" はコード 1 を伴って終了しました。
とリソースコンパイラでエラーになることがあります。

Delphiのリソースのコンパイルはデフォルトではbrcc32.execgrc.exerc.exeと、最終的にMicrosoftのリソースコンパイラが使われるのですが、このrc.exeに多数の不具合と未定義動作があり、フォントを解析するときの処理の不具合でこのような状況になるようです(下記記事参照)。
一方Delphi 13 Florenceでは新機能ページのIDEツールの改善のリソース コンパイラの項にあるように、Ryan Liptakさんによるrc.exe互換のオープンソース実装であるresinatorをデフォルトで使用するように変更されています。
そこでこのresinatorをDelphi 12.3までの環境で使用する手順を確認していきます。

同じ環境にDelphi 13 Florence(またはそれ以降のバージョン)がインストールされている場合はパスが通った場所に既にresinatorが配置されているため、別途インストールする必要はありません。そうでない場合は、まずGitHubのリポジトリにアクセスし、最新版のWindows x64のバイナリ(2025/10/23現在ではv0.1.0にあるwindows-x86_64-resinator.zip)をダウンロードし、resinator.exeを(できればパスが通った)適切な場所に展開します(簡単なのはDelphiのインストール先のbinフォルダの下あたりかも)。
次にDelphiのIDEでエラーになるプロジェクトを開き、"メインメニュー"→"プロジェクト"→"リソースと画像"で"<プロジェクト名>のリソース"ダイアログを開いてすべての項目を削除して"OK"で閉じます(<プロジェクト名>Resource.rcファイルは削除されませんので、これをresinatorでコンパイルします)。
"メインメニュー"→"プロジェクト"→"オプション"で"プロジェクトオプション"ダイアログを開き、"ビルド"→"ビルドイベント"のターゲットで"全ての構成 - Windows 32 ビットプラットフォーム"(または"全ての構成 - Windows 64 ビットプラットフォーム")を選択し、"ビルド前イベント"の"コマンド"に
resinator.exe -v $(PROJECTNAME)Resource.rc $(PROJECTNAME).dres
と設定します(もしパスが通っていない場所にresinator.exeを配置した場合は"resinator.exe"を絶対パスで指定してください)。
最後にプロジェクトファイル(*.dpr)の "program プロジェクト名;" の次に "{$R *.dres}" の行を追加します(リソースダイアログで全項目削除すると自動的に削除されてしまうので)。
program Project1;

{$R *.dres}

uses
  Vcl.Forms,
  ...
こんな感じです。これでコンパイルするとビルド前イベントで"(プロジェクト名)を信頼しますか?"という警告ダイアログが表示されるので、"このプロジェクトを常に信頼する"にチェックを入れて"はい"をクリックします。
これによって、プロジェクトをコンパイルするときのビルド前イベントでリソーススクリプトファイル(.rc)をresinatorでコンパイルしてリソースファイル(.dres)を生成しておき、リンカでこのリソースファイルをリンクする、という動作になります。

Skia4Delphiの描画(TSkLabelやISkCanvas)でもリソースとして埋め込んだフォントを使用する方法については次のアーティクルで説明します。

なおMicrosoftのリソースコンパイラrc.exeにどのような不具合があり、resinatorではどのような動作に修正されているのかについてはRyan LiptakさんのblogのEvery bug/quirk of the Windows resource compiler (rc.exe), probably - ryanliptak.comというアーティクルにまとめられています。

2025年12月9日

プログラムにフォントをリソースとして埋め込んで使用する

プログラムにフォントをリソースとして埋め込んで使用する このアーティクルはDelphi Advent Calendar 2025の9日目の記事です。

プログラムのUIや印刷などで、標準でWindowsに含まれないフォントを使用したいようなことがあります。もちろんインストーラなどを使って実行環境に(ライセンスに従って)フォントをインストールすることができればそれでよいのですが、状況によってはフォントのインストールが難しい、ということもあります。このような場合にプログラムにフォントをリソースとして埋め込み、これを実行時にWindowsに登録して使用する、という方法があります。

まずプロジェクトにフォントをリソースとして追加します。Delphi IDEの"メインメニュー"→"プロジェクト"→"リソースと画像"→"<プロジェクト名>のリソース"ダイアログで、フォント(.ttfなど)をリソースとして追加します。このときリソースタイプはFONT、リソース識別子は(デフォルトの)1からの整数とします(一意であれば整数値でも文字列でも構いません)。これでリソーススクリプトファイル <プロジェクト名>Resource.rc が用意されて、コンパイル時にリソースコンパイラでリソースファイル <プロジェクト名>.dres が作られます。またプロジェクトソースの "program <プロジェクト名>;" の次に "{$R *.dres}" の行が自動的に追加されることでこのリソースファイルが実行ファイルにリンクされる、ということになります。

プログラム側の対応ですが、プログラムのなるべく早い時点でこのフォントを読み出して登録します。
unit LoadResFontsForGDI;

interface

uses
  Winapi.Windows,
  System.SysUtils, System.Classes;

implementation

function EnumResNameProc(hModule: HMODULE; lpszType: PChar; lpszName: PChar; lParam: LONG_PTR): BOOL; stdcall;
var
  RS: TResourceStream;
  NumFonts: DWORD;
begin
  { Load font }
  if Is_IntResource(lpszName) = False then
  begin
    { By name }
    RS := TResourceStream.Create(HInstance,String(lpszName),RT_FONT);
  end
  else
  begin
    { By index }
    RS := TResourceStream.CreateFromID(HInstance,NativeUInt(lpszName),RT_FONT);
  end;

  try
    { Regsiter font to GDI }
    if AddFontMemResourceEx(RS.Memory,RS.Size,nil,@NumFonts) = 0 then
    begin
      RaiseLastOSError;
    end;

  finally
    RS.Free;
  end;

  Result := True;
end;

procedure LoadResourceFonts;
begin
  if EnumResourceNames(HInstance,RT_FONT,@EnumResNameProc,0) = False then
  begin
    RaiseLastOSError;
  end;
end;

initialization
  LoadResourceFonts;

end.
ユニットのinitialization部で呼び出しているLoadResourceFonts関数では、Win32APIのEnumResourceNames関数でプログラムに含まれるRT_FONTのリソースを列挙します。コールバック関数EnumResNameProcではパラメータlpszNameに格納されているリソース名が名前かインデックスかをIs_IntResource関数で判定し、名前であればコンストラクタTResourceStream.Createの文字列を取るオーバロードを、インデックスであればインデックスを取るオーバロードを呼び出してフォントをリソースストリームに読み出し、Memoryプロパティの示すアドレスとSizeプロパティの示すサイズ(バイト数)をWin32APIのAddFontMemResourceEx関数に渡して登録します。
このようなユニットをプロジェクトに追加することで、プログラムの開始時に埋め込まれているフォントリソースをWindowsに登録して使用することができるようになります。

え?Delphi 12 Athensやそれ以前の環境でコンパイルしようとするとBRCC32 エラーになる?それはMicrosoftのリソースコンパイラ(rc.exe)の不具合が原因です。次のアーティクルではこの問題を解決します。

2025年11月12日

Microsoft Monthly Update 2025/11

今日はMicrosoftのセキュリティアップデートの日です。
2025 年 11 月のセキュリティ更新プログラム - リリース ノート - セキュリティ更新プログラム ガイド - Microsoft
2025 年 11 月のセキュリティ更新プログラム (月例) | MSRC Blog | Microsoft Security Response Center
またESU未適用のWindows 10 22H2にもOOBで更新プログラム(KB5071959)がリリースされています。これはESUの登録でエラーになる問題を修正するとのことです。

2025年10月29日

RAD Studio/Delphi/C++Builder 13 Florence October Patch

RAD Studio/Delphi/C++Builder 13 FlorenceのOctober Patchがリリースされています。GetItおよびポータルサイトからダウンロード、インストールできます。

RAD Studio 13 October Patch

RAD Studio 13 Florence : October パッチをリリース (en)

2025年10月20日

[書籍]改訂新版 SQL実践入門

紀伊國屋書店新宿本店SQL実践入門の改訂版になる

改訂新版 SQL実践入門 (Amazon)/ミック著/技術評論社/ISBN 978-4-297-15190-4/3,080円

を購入。

2025年9月27日

RAD Studio/Delphi/C++Builder 13 Florence September Patch

RAD Studio/Delphi/C++Builder 13 FlorenceのSeptember Patchがリリースされています。GetItおよびポータルサイトからダウンロード、インストールできます

RAD Studio 13 September Patch

RAD Studio 13 Florence : 9月パッチがリリースされました (en)

2025年9月11日

RAD Studio/Delphi/C++Builder 13 Florenceリリース

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

RAD Studio 13 Florence ヘルプ (en)
リリース ノート (en)
インストール ノート (en)
新機能 (en)
RAD Studio 13.0 における新機能と修正された顧客から報告された問題 (en)
プラットフォームの状況 (en)

ポータルサイトからダウンロード可能です
RAD Studio, Delphi, C++Builder 13.0 Inline Web Install
RAD Studio, Delphi, C++Builder 13.0 Inline ISO
BDE for RAD Studio 13

RAD Studio 13 Florence 提供開始のお知らせ (en)

RAD Studio 13 で導入予定の新機能:Delphi 言語の条件演算子(三項演算子) (en)
RAD Studio 13 Update: What We Know So Far, And What’s Coming
RAD Studio 13で導入予定の新機能:WebStencils はさらに強力になります (en)
RAD Studio 13で導入予定の新機能:Clang-20ベースのC++Builderコンパイラは、C++23をサポートします (en)
RAD Studio 13で導入予定の新機能:VCL のタイトルバーのスタイルとスクロール可能なアクションメニュー (en)
WebStencils: RAD Studio 13.0 Florence の新機能 (en)
RAD Studio 13: Every New And Enhanced Feature
Watch The Replay: RAD Studio 13 Florence Launch Webinar With Q & A
古い Delphi プロジェクトを診断! Delphiプロジェクトアップグレードアドバイザの登場 (en)
RAD Studio 13 Florence : SmartCore AIコンポーネントパックのご紹介 (en)
RAD Studio 13 Florence で iOS 26とXCode 26 を利用する方法 (en)
RAD Studio 13 FireMonkey の新機能トップ 13 (en)
RAD Studio 13 VCL の新機能トップ 13 (en)
RAD Studio における C++23 対応の背景 (en)

2025年8月12日

[書籍]Web API開発実践ガイド

紀伊國屋書店新宿本店

Web API開発実践ガイド (Amazon)/杉本和也、津郷晶也、太⽥佳敬、武田大輝、宮崎将太、福岡秀一郎、武上将樹、渋川よしき、真野隼記、小谷優空、和田祐汰、浦優太、金井祐樹、内山高広、上原拓也、sumiren、川崎庸市、こたうちさんさん、石川朝久、徳丸浩、松本隆則、川村修平著/技術評論社/ISBN 978-4-297-15062-4/2,420円

を購入。

2025年7月24日

2025年7月14日

[書籍]SQLアンチパターン 第2版

紀伊國屋書店新宿本店SQLアンチパターンの改訂版で、SQL Antipatterns, Volume 1 (Amazon US)の日本語訳である

SQLアンチパターン 第2版 (Amazon)/Bill Karwin著/児島修訳/和田卓人監訳/オライリージャパン/ISBN 978-4-8144-0074-4/4,290円

を購入。

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年4月22日

2025年4月2日

[書籍]人が壊れるマネジメント

紀伊國屋書店新宿本店

人が壊れるマネジメント (Amazon)/橋本将功著/ソシム/ISBN 978-4-8026-1505-1/2,200円

を購入。

2025年4月1日

2025/04開催のセミナー

  • Web Seminar
  • Live Seminar
  • Community Event

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)

2025年2月13日

2025年1月20日

[書籍]クリーンコードクックブック

紀伊國屋書店新宿本店Clean Code Cookbook (Amazon US)の翻訳である

クリーンコードクックブック (Amazon)/Maximiliano Contieri著/田中裕一訳/オライリー・ジャパン/ISBN 978-4-8144-0097-3/4,180円

を購入。

2025年1月9日

[書籍]マネジメントは嫌いですけど

紀伊國屋書店新宿本店

マネジメントは嫌いですけど (Amazon)/関谷雅宏著/技術評論社/ISBN 978-4-297-14581-1/1,760円

を購入。この本、分類が『マネジメント・経営』(Amazonだと『ビジネス・経済>実践経営・リーダーシップ』)になってて見逃すところだった。紀伊國屋さん、5階にも置いたほうが売れると思いますけど…。

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月28日

[書籍]ものづくり現場からのソフトウェア発注

紀伊國屋書店新宿本店

ものづくり現場からのソフトウェア発注 (Amazon)/高木太郎著/日本能率協会マネジメントセンター/ISBN 9784800592712/2,200円

を購入。高木さんはJapan RAD Studio User Groupでもおなじみですね。

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月17日

[書籍]SQL緊急救命室

紀伊國屋書店新宿本店

SQL緊急救命室 (Amazon)/ミック著/技術評論社/ISBN 978-4-297-14405-0/3,520円

を購入。

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年8月3日

2024年8月1日

2024/08開催のセミナー

  • Web Seminar
    • 2024/08/13 02:00(JST)- Dev Days of Summer 2024 Day 1 (Week 1)
      • Replay (1/1)
        • Writing an NT Service: A (Basic) Guide to ...
        • Empowering your apps with AWS
        • Introduction to FireDAC: Fundamentals of Data Access
    • 2024/08/14 03:00(JST)- Dev Days of Summer 2024 Day 2 (Week 1)
      • Replay (1/1)
        • Delphi WebMocks
        • Using Clang with Windows
        • Why you should leave Delphi 7, once and for all
        • FireDAC Secret Weapons
    • 2024/08/15 02:00(JST)- Dev Days of Summer 2024 Day 3 (Week 1)
      • Replay (1/1)
        • Empowering your apps with AWS (repeated)
        • Product demo and showcase of Delphi app - Font Creator
        • GenAI Apps in Delphi!
        • Program the Rainbow: Working with Colors
        • From VCL to WEB: a giant leap for software developers, a small step for Delphi developers
    • 2024/08/16 01:30(JST)- Dev Days of Summer 2024 Day 4 (Week 1)
      • Replay (1/1)
        • Sempare Template Engine
        • Mastering RTTI: From Basics to Advanced Techniques
        • Using SVG Images in Delphi
    • 2024/08/17 01:00(JST)- Dev Days of Summer 2024 Day 5 (Week 1)
      • Replay (1/1)
        • Firestore Cloud Database
        • Make games in Delphi (2024 edition)
        • Boosting Development in Delphi with GitHub Actions and ChatGPT!
        • Add logging to your application in 5 minutes
    • 2024/08/20 02:00(JST)- Dev Days of Summer 2024 Day 6 (Week 2)
      • Replay (1/1)
        • Simplifying Cloud with Delphi
        • Chat about the UK Dev group
    • 2024/08/21 01:00(JST)- Dev Days of Summer 2024 Day 7 (Week 2)
      • Replay (1/1)
        • Handling Exceptions in Delphi
        • Implementing “try - finally” code blocks in C++
    • 2024/08/22 01:00(JST)- Dev Days of Summer 2024 Day 8 (Week 2)
      • Replay (1/1)
        • Coding games using Castle Game Engine and Delphi
        • Advanced usage of jachLog: Performance, filtering, multithreading support and more
        • Resource allocation is initialization for Delphi (RAII) !!
    • 2024/08/23 02:00(JST)- Dev Days of Summer 2024 Day 9 (Week 2)
      • Replay (1/1)
        • A Simpler Approach to Dynamic Web Applications
        • A smart backpack controlled from a mobile application with FGX Native
        • 5 Essential Steps to Modernize Your Analytics Application
        • EasyDBMigrator
        • Maximising Customer Value with Embedded Analytics and Yellowfin
    • 2024/08/24 02:00(JST)- Dev Days of Summer 2024 Day 10 (Week 2)
      • Replay (1/1)
        • About UltraEdit
        • Functional programming
        • Coroutines. What the Heck Are They?
        • OpenAPIWizard
        • Delphi Tips and Tricks – A Personal Selection
    • 2024/08/27 17:00-17:45(JST) 「Community Editionを使おう!」 - エンバカデロ・デベロッパーTV(2024年8月27日)
  • Live Seminar
  • Community Event

2024年7月4日

[書籍]SQLポケットガイド 第4版

紀伊國屋書店新宿本店SQL Pocket Guide, 4th Edition (Amazon US)の翻訳である

O'Reilly Japan - SQLポケットガイド 第4版 (Amazon)/Alice Zhao著/原隆文訳/オライリー・ジャパン/ISBN 978-4-8144-0080-5/2,860円

を購入。

2024年6月20日

2024年6月1日

2024年5月30日

IDE Fix Pack 6.5

Andreas HausladenさんIDE Fix Packが約5年ぶりにアップデートされてVersion 6.5となっています。メモリマネージャの拡張機能に関する修正とのことです。またDelphi 10.4 Sydney/11 Alexandria/12 AthensについてはIDE Fix Packの修正が一部バックポートされた関係で、分析からやり直しになるため対応していないということです。

IDE Fix Pack 6.5 released (Delphi 2009 – 10.3) – Andy's Blog and Tools

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年3月21日

Firebirdロードマップ(2024/03)

Firebird 6の開発が正式に決まったとのことで、ロードマップが更新されています。

Firebird: Roadmap v6

適当な要約
  • Firebird 3.0 - 安定版。最新版は2023年08月の3.0.11で、次回(3.0.12)は2024年第2四半期内を予定。
  • Firebird 4.0 - 安定版。最新版は2023年11月の4.0.4で、次回(4.0.5)は2024年第2四半期内を予定。
  • Firebird 5.0 - 安定版。最新版は2024年01月の5.0で、次回(5.0.1)は2024年第2四半期内を予定。
  • Firebird 6.0 - 2024年03月に開発開始、2025年第1四半期に最初のアルファ版を、ベータ版を2025年第3四半期に、正式版を2026年第1四半期にリリース予定。
現時点で予定されているFirebird 6.0の主な新機能はとのこと。

2024年3月4日

[書籍]Expert Delphi - Second Edition

Amazon(JP)で注文した

Expert Delphi - Second Edition (Amazon US, Amazon JP)/Marco CantùPaweł Głowacki著/Packt Publishing/ISBN 9781805121107/7,596JPY(printed)

が配送されてきました。2024/03/02に注文して2日目の到着でした(日本国内でのプリントオンデマンドでした)。