【MS】2010年01月セキュリティ情報-追加-

2010 年 1 月 22 日に定例外でセキュリティ更新プログラムが公開されました。

【MS10-002】Internet Explorer 用の累積的なセキュリティ更新プログラム (978207)

dxdiag.exeがDirectX11をDirectX10.1と表示する

Windows7及びWindows Server 2008 R2にて、DirectXの診断プログラムであるdxdiag.exeがDirectX11をDirectX10.1と表示するバグがあるようです。
dxdiagの表示は以下の通り

Windowsのパッチを適用することで解消するようです。
Microsoft社の情報は以下の通り。

http://support.microsoft.com/kb/975243/ja

パッチ適用後は以下の通り、解消されました。

【MS】2010年01月セキュリティ情報

2010年01月のマイクロソフトセキュリティ情報です。

【MS10-001】Embedded OpenType フォント エンジンの脆弱性により、リモートでコードが実行される (972270)

謹賀新年

あけましておめでとうございます。
皆さまにとって2010年が良い年になりますように。

【WSH】Outlook Expressのメールルールをバックアップする

vbscriptを利用してOutlook Expressのメールルールをバックアップする例です。
このスクリプトはバックアップファイル(レジストリファイル)の保存先、ファイル名を引数で渡します。

例:
(script名) c:\test.reg

バックアップしたファイルは、ダブルクリックすることでインポートが可能です。
ここでの注意点として、OSを再インストールする度にGUIDが変わってしまいます。
バックアップした時とインポートする時の状況が違う時は、バックアップしたファイルをメモ帳などで開き、
GUIDを置き換える必要があります。

例:
バックアップ元のGUID {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
インポート先のGUID  {zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz}
1.インポート先のGUIDを調べる。
2.バックアップ元のファイルを開き、{xxx~}を置き換える。
メモ帳の場合は「検索する文字列」にバックアップ元のGUIDを、「置換後の文字列」にインポート先のGUIDを入れましょう。

また、このスクリプトでは、reg.exeというファイルを利用しています。Windows XPから標準でインストールされているものになります。
Windows 2000ではreg.exeが入っていないため、使えません…

Option Explicit

'#######################################################
'#                 Global-Configration                 #
'#######################################################

  Const OpenTextFileForReading     = 1
  Const OpenTextFileForWriting     = 2
  Const OpenTextFileForAppending   = 8

  Const REG_SZ        = 1
  Const REG_EXPAND_SZ = 2
  Const REG_BINARY    = 3
  Const REG_DWORD     = 4
  Const REG_MULTI_SZ  = 7 

'*************************
'    Call Main Program
'*************************
  Main()

'*************************
'   Start Main Program
'*************************

Sub Main()

'#######################################################
'#                 Local-Configration                  #
'#######################################################

  Dim OBJ_WshShell    'WSH Shell Object
  Dim OBJ_FSO         'File System Object
  Dim OBJ_Folders     'Folder Object
  Dim OBJ_Args        'Argument Object

  Dim COL_Folders     'Collection Object

  Dim STR_FileName    'String Object
  Dim STR_StoreOwner  'String Object
  Dim STR_RulePath    'String Object
  Dim STR_LogFolder   'String Object
  Dim STR_LogFile     'String Object
  Dim STR_Temp        'String Object
  Dim i

  Set OBJ_WshShell = WScript.CreateObject("WScript.Shell")
  Set OBJ_FSO      = WScript.CreateObject("Scripting.FileSystemObject")
  Set OBJ_Args     = WScript.Arguments

'引数チェック
  If OBJ_Args.Count = 1 Then

    STR_FileName = OBJ_Args(0)

    If Right(LCase(STR_FileName), 4) = ".reg" Then

    Else

      STR_FileName = STR_FileName & ".reg"

    End If

    If OBJ_FSO.FileExists(STR_FileName) Then

      WScript.Echo "エラー:出力先に同名のファイルが存在します。処理を続行出来ません。"
      WScript.Quit 1

    End If

  Else

    WScript.Echo "エラー:引数の数が不正です。処理を続行出来ません。プログラムを中止します。"
    WScript.Quit 1

  End If

'【Get Mail Store Owner & Mail Store Path】
  STR_StoreOwner = OBJ_WshShell.RegRead("HKEY_CURRENT_USER\Identities\Last User ID")
  If Err.Number <> 0 Then

    WScript.Echo "エラー:処理実行中にエラーが発生しました。処理を続行出来ません。プログラムを中止します。"
    Err.Clear
    Set OBJ_FSO = Nothing
    WScript.Quit 1

  End If

  STR_RulePath  = """HKEY_CURRENT_USER" & "\Identities\" & STR_StoreOwner & "\Software\Microsoft\Outlook Express\5.0\Rules"""
  If Err.Number <> 0 Then

    WScript.Echo "エラー:処理実行中にエラーが発生しました。処理を続行出来ません。プログラムを中止します。"
    Err.Clear
    Set OBJ_FSO = Nothing
    WScript.Quit 1

  End If

'レジストリのExport
  OBJ_WshShell.Run "reg.exe export " & STR_RulePath & " " & STR_FileName, 0, True
  If Err.Number = 0 Then

    WScript.Echo "レジストリのバックアップは正常に完了しました。出力したファイルは " & STR_FileName & " です。"
    WScript.Quit 0

  Else

    WScript.Echo "エラー:レジストリのバックアップに失敗しました。"
    WScript.Quit 1

  End If

End Sub

【メモ】マイクロソフト製品 ライフサイクル

マイクロソフト製品 ライフサイクル情報
http://support.microsoft.com/gp/lifeselect

Radeon5770を買いました…そしてドライバ入らず

Windows 7 64bitを導入したPCでデュアルディスプレイを使用するため、
ビデオカードを買い替えました。安心のGigabyteです(笑)

カードを挿し、いざドライバの導入を!
と、思ったらドライバのセットアップが起動しない!?
…解決するのに、3時間くらいかかりましたorz

原因は、Mfc80.dll のようです。
マイクロソフトのサイトにKBがありました。
http://support.microsoft.com/kb/961894

対策としては、↓のサイトにあるパッチをダウンロードして実行しました。
http://code.msdn.microsoft.com/KB961894/Release/ProjectReleases.aspx?ReleaseId=2067

Radeonのドライバは噂通り、○○でした(笑)

【MS】2009年12月セキュリティ情報

【WSH】Outlook Expressのメールファイルのサイズを出力する

vbscriptにてOutlook Exressのメールファイル(.dbx)の一覧とサイズを出力する例です。

Option Explicit
'On Error Resume Next

'#######################################################
'#                 Global-Configration                 #
'#######################################################

  Const OpenTextFileForReading     = 1
  Const OpenTextFileForWriting     = 2
  Const OpenTextFileForAppending   = 8

  Const HKEY_CURRENT_USER   = &H80000001

'*************************
'    Call Main Program
'*************************
  Main()

'*************************
'   Start Main Program
'*************************

Sub Main()

'#######################################################
'#                 Local-Configration                  #
'#######################################################

  Dim OBJ_WshShell    'WSH Shell Object
  Dim OBJ_FSO         'File System Object
  Dim OBJ_Folders     'Folder Object

  Dim COL_Folders     'Collection Object

  Dim STR_FileName    'String Object
  Dim STR_StoreOwner  'String Object
  Dim STR_StorePath   'String Object
  Dim STR_LogFolder   'String Object
  Dim STR_LogFile     'String Object
  Dim STR_Temp        'String Object
  Dim i

  Set OBJ_WshShell = WScript.CreateObject("WScript.Shell")
  Set OBJ_FSO      = WScript.CreateObject("Scripting.FileSystemObject")

'【Get Mail Store Owner & Mail Store Path】
  STR_StoreOwner = OBJ_WshShell.RegRead("HKEY_CURRENT_USER\Identities\Last User ID")
  If Err.Number <> 0 Then

    STR_Work = MsgBox("処理実行中にエラーが発生しました。処理を続行出来ません。プログラムを中止します。" & vbCrLf & "Error Code: RegRead Error-001" ,vbOkOnly + vbCritical,"エラーが発生しました")
    Err.Clear
    Set OBJ_FSO = Nothing
    WScript.Quit 1

  End If

  STR_StorePath  = OBJ_WshShell.RegRead("HKEY_CURRENT_USER\Identities\" & STR_StoreOwner & "\Software\Microsoft\Outlook Express\5.0\Store root")
  If Err.Number <> 0 Then

    STR_Work = MsgBox("処理実行中にエラーが発生しました。処理を続行出来ません。プログラムを中止します。" & vbCrLf & "Error Code: RegRead Error-002" ,vbOkOnly + vbCritical,"エラーが発生しました")
    Err.Clear
    Set OBJ_FSO = Nothing
    WScript.Quit 1

  End If

  WScript.Echo "No,ファイル名,ファイルサイズ(MB)"

'【Get MailBox Folder & File-Size】
  Set OBJ_Folders = OBJ_FSO.GetFolder(STR_StorePath)
  Set COL_Folders = OBJ_Folders.Files
  i = 1

  For Each STR_FileName In COL_Folders

    If LCase(Right(STR_FileName,4)) = ".dbx" Then

      WScript.Echo i & "," & STR_FileName & "," & Round(STR_FileName.Size / 1000000,1)
      i = i + 1

    End If

  Next

End Sub

Flash Playerのインストーラ

以下のURLからインストーラをダウンロードすることが可能です。

■Adobe Flash Player ActiveX Installer

http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player_ax.exe

■Adobe Flash Player Plugin Installer

http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player.exe

通常Flash Playerは、以下のフォルダに展開されます。

C:\Windows\system32\Macromed\Flash
※OSにより、”Windows”の部分が”winnt”になります。