2008 Winter Scripting Games

初級イベント 2: True Type (TrueType フォントを調べる)

重要 : このイベントの期限が過ぎると、VBScript、Windows PowerShell、および Perl による解答がスクリプト センターで公開されます。

「True Type (TrueType フォントを調べる)」イベントの競技参加者は、Microsoft Windows システム レジストリから一連のキーを読み出すスクリプトを作成する必要があります。

*
On This Page
このイベントについてこのイベントについて
イベントのシナリオイベントのシナリオ
エントリの提出方法エントリの提出方法

このイベントについて

部門

初級

期限

2008 年 2 月 20 日 (水曜日) (8:00 AM PST)

獲得ポイント

10

Top of pageTop of page

イベントのシナリオ

このイベントに取り掛かる前に、思い出していただきたいことがあります。レジストリを操作するとシステムが正しく動作しなくなる危険性があることはご存知ですね? では、このイベントではいったい何をしようとしているのでしょうか。実は、レジストリを操作しようとしているのです。でも心配は無用です。レジストリに書き込み操作を行う必要はなく、レジストリの値をいくつか読み出すだけのことです。値を読み取るだけなので、システムが変更されることも、何らかの悪影響が生じることもありません。もちろん、このイベントに関する指示事項に正しく従っていただくことが大前提となりますが。

このイベントでは、どのフォントがコンピュータにインストールされているかを調べることになります。ヒントをお教えするなら、インストールされているフォントは、レジストリ内の HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion キーの下層に格納されています。ただし、あらゆるフォントの名前を読み出そうとしているわけではありません。このイベントで名前を読み出すのは、TrueType フォントだけです。では、TrueType フォントをそれ以外のフォントと区別するには、どうすればよいでしょうか。答えは簡単です。レジストリ内では、TrueType フォントの名前の直後にかっこで囲まれた TrueType のラベルが付いています。つまり、TrueType フォントはレジストリ内で次のように示されています。

Bauhaus 93 (TrueType)

このイベントでポイントを獲得するには、以下の情報を出力するスクリプトを作成する必要があります。

コンピュータにインストールされているすべての TrueType フォントの名前

コンピュータにインストールされている TrueType フォントの数

コンピュータにインストールされているフォントの総数

これらの情報は、以下のような形式で出力する必要があります。

Lucida Bright (TrueType)
Lucida Bright Demibold (TrueType)
Lucida Bright Demibold Italic (TrueType)
Lucida Bright Italic (TrueType)
Lucida Calligraphy Italic (TrueType)
Lucida Fax Regular (TrueType)

TrueType: 419
Total: 451
Top of pageTop of page

エントリの提出方法

スクリプトを完成したら、適切なリンクをクリックしてエントリを提出してください。

初級 VBScript

初級 Windows PowerShell

初級 Perl

リンクをクリックしてもアドレス入力済みのメッセージが自動的に表示されない場合は、scripter@microsoft.com 宛てに電子メールを送信してください。このメールの件名は、「Beginner VBScript: Event 2」、「Beginner Windows PowerShell: Event 2」、「Beginner Perl: Event 2」のいずれかにしてください。

後は、メッセージの本文部分にコードを貼り付けて、電子メールを送信するだけで提出が完了します。以下の情報も、任意に含めることができます。

Scripting Games ポイント リーダーに投稿するときに使用する自分の名前またはニックネーム。

自分が代表する国の名前。一般には、自分の出身国や自分が現在居住している国を意味しますが、そうでなくてもかまいません。自分が代表したい任意の国の名前を示すことができます。

自分が所属しているユーザー グループの名前。ユーザー グループで User Group Challenge に参加している場合は、グループ名を示す必要があります。

これらの項目は、電子メール本文の先頭に入力するだけでかまいません。これらの項目を電子メールの本文部分に入力した例を次に示します (この例では、VBScript 部門のエントリを提出する場合を想定しています)。

Ken Myer
USA
Northern Iowa User Group

For i = 1 to 100
 Wscript.Echo i
Next

Top of pageTop of page