« 2004年8月 | トップページ | 2004年10月 »

■Delphi8の本(サンプル発見)

Delphi8の本で、紹介した
Delphi8 for the Microsoft(R).NET Framework プログラミング Vol.3 基本データベース編
という本のサンプルプログラムを発見しました。
(書籍で、案内されていたのかな?今、手元にないのでわからないです。)
→本を見てみましたが、案内されていないようですね。

出版社、著者のページよりダウンロードできます。
カットシステム

著者のページは、検索すればすぐに見つけられますけど、一般向けなのかどうかわかりませんので、URLは公開しないでおこうと思います。

|

■Borland StarTeam

Borland より Borland StarTeam 6.0 Standardという製品の案内が届いていました。
ソフトウェア構成管理ツールというものらしいのですが、趣味でプログラムをしている私には、どれほどのメリットがあるのかよくわかりません。まあ、大規模なプログラムを作成することもないので、必要ないでしょうけどね。

詳しくはこちら
Borland StarTeam

|

■Delphi8 and .NET 1.1 SP1

Borland Developer Network にて Delphi 8 and .NET 1.1 SP1という記事が公開されています。
対応策ではなく、Delphi8の開発マシンに.NET SP1をインストールしないで下さいというコメントです。

|

★RichEdit と '×'

[Delphi 7]
フォームにTButtonとTRichEditを貼り付けて、次の処理を記述します。

procedure TForm1.Button1Click(Sender: TObject);
const
 S = '×';
begin
 RichEdit1.Lines.Add(S);
end;
これを実行すると次のメッセージのようなエラーになります。 RichEdit での行の挿入エラー

× の前か後ろに全角の文字を組み合わせるとエラーにならないのですが、エディターにそのような制限をするのは不適切でしょうし、具体的な解決方法を見つけられずにいます。

※Windows 2000 Pro(SP3) でもWindows XP Pro(SP2) でも同じ結果でした。
※Delphi8では、問題なく実行できます。(DLLが違うでしょうし、当たり前かな?)

|

☆DateToStr関数

[Delphi8 - VCLフォームアプリケーション]
TMonthCalendarで選択された日付を文字型に変更しようと次のような処理をしました。

procedure TForm1.Button1Click(Sender: TObject);
begin
 ShowMessage(DateToStr(MonthCalendar1.Date));
end;

これはDelphi7では、問題なかったコードですが、コンパイルすると次のようなメッセージが表示されてエラーになります。
[エラー] Unit1.pas(31): 指定された引数で呼び出すことのできるオーバーロード関数 'DateToStr' が定義されていません

次のように型キャストすることで解決しました。
procedure TForm1.Button1Click(Sender: TObject);
begin
 ShowMessage(DateToStr(TDateTime(MonthCalendar1.Date)));
end;

|

■Delphi8の本

BorlandのDelphi 関連書籍でも紹介されている
Delphi8 for the Microsoft(R).NET Framework プログラミング Vol.3 基本データベース編
という本を購入しました。データベース接続コンポーネントの使い方を重点として解説されていますので、Delphi8でデータベースの接続に戸惑っておられる方にはお奨めですね。サンプルも、基本データベース編というタイトル通り、基本的な使い方を解説するためのものとなっており、とてもわかりやすくなっています。反面、少し物足りない感じがしますが・・・。(当たり前かな?)
又、個人的に残念だったのは、電子掲示板というサンプルがあるのですが、書籍の注文時に目次を見て、勝手にWebアプリケーションだと期待していたのですが、そうではありませんでした。(もちろん私の思い込みが原因で、著者に責任があるわけではないです。)巻末には、SQLの解説が簡潔にまとめられており(30ページ程ある)、BDEしか使ったことのない方には、便利なのかも知れませんね。

|

■ .NET v1.1 SP1への回避策

Delphiメーリングリストで、 .NET v1.1 SP1への回避策(対応策?)というのを知りました。私のサイトを見て、SP1を削除する人が続出してもまずいので、そのURLをあげておきますね。(ちなみに私は試していません。)

 .NET v1.1 SP1の問題の回避策
 情報元はこちら(英語)だそうです

|

■Delphi 8 復活!!

前回、Windows XP Service Pack 2.NET Framework 1.1 Service Pack 1のインストールによりコンパイルできなくなったDelphi8ですが、その原因は、.NET Framework 1.1 Service Pack 1にあるようです。
ということで、次の手順を行うことにより修復できました。

(1) Delphi8 & .NET Frameworkをアンインストールします。
  ※.NETのアンインストールが、できない場合、
   Windows XP Service Pack2もアンインストールします。
(2) Windows XP Service Pack2をアンインストールした場合
   ここで、それを再インストールします。
(3) C:\Documents and Settings\ユーザー名\My Documents\
   Borland Studio Projects\にある次のファイルを削除します。

   System.Data.dcpil
   System.dcpil
   System.Drawing.dcpil
   System.XML.dcpil
   ※他のファイルも削除する必要があるかもしれません。
(4) Delphi8をインストールします。(.NET Framework共)

※Windows Updateでは、.NET Framework 1.1 Service Pack 1は、インストールすると、削除することはできませんと書いていますが、私の環境では削除できました。

|

■Windows XP Service Pack 2

昨日、Windows XP Service Pack 2 をインストールしました。その後、Windows Updateを行うと.NET関係の更新が2つあったので、それも更新しました。SP2については、仕事で使っているなら、今すぐにはインストールしない方がよいとまで言われていますが、私の感想もその通りで、起動は少し遅くなるし、ログイン後使える状態になるまで、とても時間がかかりますし、何よりも更新が必要なプログラムやドライバーをインストールしなくてはいけないし、という具合で最悪でした。セキュリティーが大幅に向上しているらしいので、インターネットやメールをメインに使っておられる方にはお奨めですが、そうでない方は、すぐに更新しない方がいいように思えます。

Delphiは問題ないかなと思いつつ、アプリケーションを新規作成して、そのままコンパイルしてみることにしました。
まず、Delphi7 Update1は、問題なく起動して、そのままコンパイルできました。
次にDelphi8 Update2は、問題なく起動するのですが、VCLフォームアプリケーション、Windowsフォームアプリケーション共に次のようなエラーが表示されて、コンパイルできませんでした。

[致命的エラー] Project1.dpr(1): 要求したパッケージ 'Borland$' が見つかりません。

環境変数とかレジストリとかが壊れたのかなと思い、修復セットアップをしましたが、同じ結果でした。
仕方がないので、一度Delphi8をアンインストールして、再度インストールして試してみましたが、同じ結果でした。

コンパイルできない原因が、Windows XP Service Pack 2にあるのか、その後にWindows Updateで更新した.NET関係にあるのか、それとももっと他のところにあるのかよくわからないのですが、現在、Delphi8が使えなくなってしまいました。

|

« 2004年8月 | トップページ | 2004年10月 »