RAD Studio/Delphi/C++Builder 2010のHelp Update 2がリリースされています。
27623 Help Update 2 for RAD Studio, Delphi & C++Builder 2010
リリース ノート: Delphi 2010 および C++Builder 2010 Help Update 2
Readme: Help Update 2 for Delphi and C++Builder 2010
Known Problems in the Help - RAD Studio
2010年3月2日
2010年3月1日
[書籍]プログラマのための文字コード技術入門
ジュンク堂書店の新宿店で
WEB+DB PRESS plusシリーズ プログラマのための文字コード技術入門/矢野啓介著/技術評論社/ISBN 978-4-7741-4164-0/2,709円
を見かけたので購入。
WEB+DB PRESS plusシリーズ プログラマのための文字コード技術入門/矢野啓介著/技術評論社/ISBN 978-4-7741-4164-0/2,709円
を見かけたので購入。
2010年2月23日
Delphi 2010 Handbook (PDF版)出版
Marco CantuさんのDelphi 2010 Handbookが完成してPDF版(28.00USD/2,474JPY)が発売されました。書籍版(43.50USD/約3,970JPY)は来週くらいにCreateSpaceから、その後数週間でAmazonなどでも入手可能になるようです。
またPDF版をDelphi 2010登録ユーザ向にEmbarcaderoから無償でダウンロードできるように交渉中とのことです。
元ねたはDelphi 2010 Handbook Released。
2010/03/01追記: Delphi 2010 Handbook In Printによると書籍版(print on demand)がCreateSpaceで発売になっています。
またPDF版をDelphi 2010登録ユーザ向にEmbarcaderoから無償でダウンロードできるように交渉中とのことです。
元ねたはDelphi 2010 Handbook Released。
2010/03/01追記: Delphi 2010 Handbook In Printによると書籍版(print on demand)がCreateSpaceで発売になっています。
2010年2月17日
第16回エンバカデロ・デベロッパーキャンプ開催決定
第16回 エンバカデロ・デベロッパーキャンプは前回予告されたとおりにウェブセミナー形式(Mircosoft Live Meeting)で2010年03月11日-12日の2日間で開催されます。今回は中継が可能になったということでDavid Intershimoneさん(エンバカデロ・テクノロジーズ チーフエヴァンジェリスト)、Jason Vokesさん(エンバカデロ・テクノロジーズ テクノロジー&インターナショナルマーケティング シニアディレクタ)、富永英明さん(有限会社エイブル)といった豪華布陣です(あっいつものみなさんが豪華じゃない、という意味ではありません)。
再放送が可能になれば時間や日付が合わない人も見られるようになっていいと思います。
2010/03/05追記: ライブ会場に行きます。仕事はいいのか…?
再放送が可能になれば時間や日付が合わない人も見られるようになっていいと思います。
2010/03/05追記: ライブ会場に行きます。仕事はいいのか…?
2010年2月10日
Delphi 2010におけるREST
Marco CantuさんによるDelphi 2010を使用したRESTの扱いに関するホワイトペーパが翻訳、公開されています。また解説ビデオ(英語)も公開されています。
Rad Studio 2010 in Action JP Marco
「Delphi 2010におけるREST」ホワイトペーパーダウンロード
元ねたはMarco CantuさんのDelphi REST White Paper in Japanese。
Rad Studio 2010 in Action JP Marco
「Delphi 2010におけるREST」ホワイトペーパーダウンロード
元ねたはMarco CantuさんのDelphi REST White Paper in Japanese。
2010年2月9日
Firebird 2.5 Release Candidate 2リリース
firebirdsql.orgのサーバクラッシュの影響で遅れていたFirebird 2.5のRelease Candidate 2ですが、やっとリリースされました。
Firebird File Repositories (download)
Firebird 2.5 Release Notes
Firebird File Repositories (download)
Firebird 2.5 Release Notes
2010年2月8日
一定時間ユーザ入力がないことを検知する
一定時間ユーザがPCの操作が行わなかったことを検知するにはGetLastInputInfo(ja)で最後に操作したタイミング(LASTINPUTINFO構造体のdwTime)と現在のGetTickCount(ja)の値(いずれもmsec単位)を比較します。注意点としてはGetLastInputInfoはシステム全体ではなく現在のセッションのユーザ入力のみを扱うというところでしょうか。
このサンプルではボタンをクリックしてポーリングを開始した後でユーザ入力(キーボード、マウス操作)が10秒間発生しなかったときにメッセージダイアログを表示します。またポーリング毎に前回からユーザ入力が発生していない場合はLabel1に表示しているGetTickCountの表示をclRedに変更しています。
このサンプルではボタンをクリックしてポーリングを開始した後でユーザ入力(キーボード、マウス操作)が10秒間発生しなかったときにメッセージダイアログを表示します。またポーリング毎に前回からユーザ入力が発生していない場合はLabel1に表示しているGetTickCountの表示をclRedに変更しています。
procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled := True;
Button1.Enabled := False;
FLastTick := 0;
Timer1Timer(Sender);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var
LII: TLastInputInfo;
begin
FillChar(LII,SizeOf(LII),0);
LII.cbSize := SizeOf(LII);
if GetLastInputInfo(LII) = False then
begin
Exit;
end;
Label1.Caption := 'Last user input: ' + IntToStr(LII.dwTime);
if FLastTick <> LII.dwTime then
begin
Label1.Font.Color := clWindowText;
FLastTick := LII.dwTime;
end
else
begin
Label1.Font.Color := clRed;
end;
if (GetTickCount - LII.dwTime) > (10 * MSecsPerSec) then
begin
Timer1.Enabled := False;
Button1.Enabled := True;
MessageDlg('Detect for input idle (10 seconds).',
mtInformation,[mbOk],0);
Label1.Caption := '';
end;
end;
別解としてSetWindowsHookEx(ja)にWH_KEYBOARD_LL(ja)/WH_MOUSE_LL(ja)を指定して低レベルフックをかけ、フック関数内でGetTickCountの値を取得、というものも考えられますが、- DelphiのIDEから実行するとデバッガでブレークしたときにやたらに時間がかかる。
- Windows XPのVisual Style(Luna)とマウスの低レベルフックの相性が悪く(どちらかというとLunaの不具合)、フォームの最小化、最大化ボタンをクリックしたときに極端に反応が悪くなる。
2010/03開催のウェブセミナー
2010/03/03 18:00-19:00(JST) 3/3 - Webセミナー「DB Optimizerによるデータベース パフォーマンスチューニングの概要と評価方法」
2010/03/24 18:00-19:00(JST) 3/24 - Webセミナー「DBArtisan チュートリアル」
2010/03/24 18:00-19:00(JST) 3/24 - Webセミナー「DBArtisan チュートリアル」
2010年1月28日
RAD Studio/C++Builder 2010 Hotfix 1
RAD Studio/C++Builder 2010のHotfix 1がリリースされています。QC79954のCコマンドラインプリプロセッサの不具合を修正するものです。
RAD Studio 2010 (C++Builder 2010) 用 Hotfix1
27567 Hotfix 1 for RAD Studio 2010 (C++Builder 2010)
2010/02/02追記: EDNの日本語の記事が出たのでリンクを差し替えました。
RAD Studio 2010 (C++Builder 2010) 用 Hotfix1
27567 Hotfix 1 for RAD Studio 2010 (C++Builder 2010)
2010/02/02追記: EDNの日本語の記事が出たのでリンクを差し替えました。
2010年1月27日
Fulcrum
Allen BauerさんのThe Oracle at Delphi » Requiem for the {$STRINGCHECKS xx} directive…によれば、従来"Project X"と呼ばれていた(現在開発中のMac/Linuxクロス対応)次期RAD Studioのコードネームは"Fulcrum"だそうです(さっそく"Fulcrumだって?Mig-29かよ"というツッコミが入っていますが)。それにしてもCommodoreはいずこへ…。
ちなみに本題である$STRINGCHECKSコンパイラディレクティブ(日本語ページはない)というのは、Delphi 2009/2010でUnicodeStringがデフォルトになった一方でC++Builderでは(Stringではなく)明示的にAnsiStringが使用されてきたため、この間を取り持つ変換処理を挿入するかどうかを指定するためもの(プロジェクトオプションのコンパイラオプションでデフォルトを指定可能)。Fulcrumではこれが廃止される(無視されるようになる)、というお話みたいです。
ちなみに本題である$STRINGCHECKSコンパイラディレクティブ(日本語ページはない)というのは、Delphi 2009/2010でUnicodeStringがデフォルトになった一方でC++Builderでは(Stringではなく)明示的にAnsiStringが使用されてきたため、この間を取り持つ変換処理を挿入するかどうかを指定するためもの(プロジェクトオプションのコンパイラオプションでデフォルトを指定可能)。Fulcrumではこれが廃止される(無視されるようになる)、というお話みたいです。
2010年1月26日
Delphi Spring Framework
Java上でIoC/DIなどを実現するフレームワークであるSpring Framework(SpringSource.org)をDelphi 2010で実現しようという野心的なプロジェクト(ライセンスはApache License V2.0)。興味深い。とりあえずメモ。
delphi-spring-framework - Project Hosting on Google Code
GettingStarted - delphi-spring-framework - Getting Started with Delphi Spring Framework - Project Hosting on Google Code
元ねたはNick HodgesさんのRandom Thoughts on the Passing Scene #141。
delphi-spring-framework - Project Hosting on Google Code
GettingStarted - delphi-spring-framework - Getting Started with Delphi Spring Framework - Project Hosting on Google Code
元ねたはNick HodgesさんのRandom Thoughts on the Passing Scene #141。
2010/02開催のウェブセミナー
2010/02/03 18:00-19:00(JST) 2/3 - Webセミナー「C++でコンポーネントを作成しよう」
2010/02/24 18:00-19:00(JST) 2/24 - Webセミナー「データモデリングツール ER/Studio Developer 概要と活用法」
2010/02/24 18:00-19:00(JST) 2/24 - Webセミナー「データモデリングツール ER/Studio Developer 概要と活用法」
2010年1月22日
WindowsのサービスからGUIを持つプロセスを起動
Windows Vista/7ではセッション0の分離が行われたため、単純にサービスからGUIプロセスを起動できなくなりました。そこで
From Zero To One » Blog Archive » How to start a GUI process from service, under Windows Vista/7
- Win32APIのWtsGetActiveConsoleSessionID関数で現在ログオンしているユーザのセッショントークンを取得。
- サービス(SYSTEMアカウント上で動作している)のプロセスのユーザトークンを取得。
- ユーザトークンを複製。
- ログオンユーザのセッションを複製したトークンに設定。
- 複製したトークンを使用してWin32APIのCreateProcessAsUser(ja)関数でプロセスを起動。
From Zero To One » Blog Archive » How to start a GUI process from service, under Windows Vista/7
2010年1月21日
RAD Studio/Delphi/C++Builder 2010 Update 4/5適用後のTTimerの振る舞いについて
Team Japanの高橋さんの
Team Japan » TTimerコンポーネント
によれば、TTimerのSetEnabled(True)の実装がRAD Studio/Delphi/C++Builder 2010 Update 4/5適用で変更され、これに伴なってメインスレッド以外のスレッドからTTimerをスタートしようとするとうまくいかないという報告があるようです。
QC81256: Changing TTimer.Enabled from thread does not work anymore since Update 4 for Delphi 2010
QC80376: RAD Studio 2010 IdTCPServer1Execute Error (After latest updates)
Team Japan » TTimerコンポーネント
によれば、TTimerのSetEnabled(True)の実装がRAD Studio/Delphi/C++Builder 2010 Update 4/5適用で変更され、これに伴なってメインスレッド以外のスレッドからTTimerをスタートしようとするとうまくいかないという報告があるようです。
QC81256: Changing TTimer.Enabled from thread does not work anymore since Update 4 for Delphi 2010
QC80376: RAD Studio 2010 IdTCPServer1Execute Error (After latest updates)
2010年1月19日
RAD Studio/Delphi/C++Builder 2009 Hotfix 3
RAD Studio/Delphi/C++Builder 2009のHotfix 3がリリースされています。IntraWebでUTF-8のWebRequestの内容を解析するTUTF8ContentParserの中国語(繁字体)マルチバイト文字の処理の問題を解決するようです(高橋さんによれば従来サポートでのみ配布していたものが正式公開になったようです)。IntraWebを10.0.21に更新した上でUTF8ContentParser.pasをプロジェクトフォルダに配置してリンク対象にし、かつ実行時パッケージを使用しないようにする、という変則的なものです。
Delphi/C++Builder/RAD Studio 2009用 Hotfix 3
27563 Hotfix 3 for Delphi 2009 and C++Builder 2009
Team Japan » Delphi/C++Builder 2009向けHotfix 3 for IntraWeb 10
なおこの問題は最新のRAD Studio/Delphi/C++Builder 2010では発生しない(
2010/01/20追記: IntraWeb 10.0.21についてはTeam Japanのこちらの記事も参考になります。
Team Japan » IntraWeb Ver10.0.21 がリリースされました
2010/01/25追記: EDNの日本語の記事が出たのでリンクを差し替えました。
Delphi/C++Builder/RAD Studio 2009用 Hotfix 3
27563 Hotfix 3 for Delphi 2009 and C++Builder 2009
Team Japan » Delphi/C++Builder 2009向けHotfix 3 for IntraWeb 10
なおこの問題は最新のRAD Studio/Delphi/C++Builder 2010では発生しない(
The problem does not occur in the latest 2010 version.)とのことです。
2010/01/20追記: IntraWeb 10.0.21についてはTeam Japanのこちらの記事も参考になります。
Team Japan » IntraWeb Ver10.0.21 がリリースされました
2010/01/25追記: EDNの日本語の記事が出たのでリンクを差し替えました。
2010年1月13日
2010年1月7日
2010/01開催のウェブセミナー
2010/01/14 18:00-19:00(JST) 1/14 - Webセミナー「詳細!DataSnap」
2010/01/21 17:00-18:00(JST) 1/21 - Webセミナー「エンバカデロ・テクノロジーズによるツール・クラウド All-Access」 →Replay download
2010/01/27 18:00-19:00(JST) 1/27 - Webセミナー「DB Optimizerによるデータベース パフォーマンスチューニングの概要と評価方法」
時間があれば…。
2010/01/14追記: 「詳細!DataSnap」は気がついたら終わっていた。だめじゃん…。
2010/01/26追記: うぅむ、時間がない…。
2010/02/25追記: 2010/01/21分のリプレイのリンクを追加しました。
2010/01/21 17:00-18:00(JST) 1/21 - Webセミナー「エンバカデロ・テクノロジーズによるツール・クラウド All-Access」 →Replay download
2010/01/27 18:00-19:00(JST) 1/27 - Webセミナー「DB Optimizerによるデータベース パフォーマンスチューニングの概要と評価方法」
時間があれば…。
2010/01/14追記: 「詳細!DataSnap」は気がついたら終わっていた。だめじゃん…。
2010/01/26追記: うぅむ、時間がない…。
2010/02/25追記: 2010/01/21分のリプレイのリンクを追加しました。
2010年1月5日
[書籍].NETのクラスライブラリ設計
Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Editionの日本語訳である".NETのクラスライブラリ設計"が昨年末に発売になっていたのを紀伊國屋書店新宿本店でやっと購入。
.NETのクラスライブラリ設計 開発チーム直伝の設計原則、コーディング標準、パターン (amazon.co.jp)/Krzysztof Cwalina、Brad Abrams著/藤原 雄介訳/マイクロソフト株式会社協力/日経BPソフトプレス/ISBN 978-4-89100-676-1/4,725円
元ねたはNyaRuRuさんの書籍紹介: .NETのクラスライブリ設計 開発チーム直伝の設計原則、コーディング標準、パターン (Framework Design Guidelines 2nd Edition) - NyaRuRuの日記。
.NETのクラスライブラリ設計 開発チーム直伝の設計原則、コーディング標準、パターン (amazon.co.jp)/Krzysztof Cwalina、Brad Abrams著/藤原 雄介訳/マイクロソフト株式会社協力/日経BPソフトプレス/ISBN 978-4-89100-676-1/4,725円
元ねたはNyaRuRuさんの書籍紹介: .NETのクラスライブリ設計 開発チーム直伝の設計原則、コーディング標準、パターン (Framework Design Guidelines 2nd Edition) - NyaRuRuの日記。
登録:
投稿 (Atom)