Translate

2013年10月7日月曜日

Lightning2.6とGoogleカレンダーの同期

 以前公開したThunderbird+LightningとGoogleカレンダーの同期の方法ですが、GoogleのCalDAVアドレスの仕様が変更されているようです。
 ある日突然カレンダーの同期ができなくなり、たまに同期がとれなくなることがあったのでまたそれだろうと思い4、5日放置していたのですが一向に改善される様子もないので、いろいろと調べてみると、どうもGoogleのCalDAVの仕様が変更されたらしいということがMozillaのブログに公開されていました。
 ここの説明では、新しいCalDAVのURLに変更する方法が紹介されています。

■対象

  • Thunderbird バージョン24以降
  • Lightning バージョン2.6以降

■新しいCalDAVのURL

 新しいCalDAVのURLは次の通りです。
https://apidata.googleusercontent.com/caldav/v2/[カレンダーID]/events
 カレンダーIDにはデフォルトのカレンダーではGmailのアドレスと同一「<アカウント>@gmail.com」のものが利用されます。新たに追加したカレンダーに関しては 「<長い英数字>@group.calendar.google.com」となります。
 カレンダーIDはGoogleカレンダーの設定を開くと下図の位置に表示されています。
カレンダーIDの場所
 Gmailアドレスが「abc@gmail.com」だった場合、CalDAVのURLは次のようなアドレスになります。
https://apidata.googleusercontent.com/caldav/v2/abc@gmail.com/events

■問題点

 この記事の執筆時(2013年10月7日)の状態では、Lightningに問題があるためCalDAVによる同期が実質的に利用できない状態になっています。
 このことについてはMozillaZine.jpのフォーラムで取り上げられており、一応修正パッチもリリースされているようです。
 とりあえずパッチの当て方が面倒そうだったので手動でパッチを当てたところ、現時点では正常にカレンダーが見れる状態になっています。親切な方がすでにパッチを当てたソースも公開されていますが最悪動作しなくなりますので、パッチを当てたりソースを置き換えたりするのが難しい方は無理せずバージョンアップを待ったほうが無難だと思われます。

■参考

Mozilla Calendar Project Blog
Google Developper's

2013年5月22日水曜日

Thunderbirdのアカウントが破損したときの対処法

 Thunderbirdのアカウント情報が破損すると、送受信メールや設定内容がすべて削除されたような状態になります。
 ここでは破損したプロファイル情報の復旧方法の一つを説明します。

■症状

 起動したときにアカウントの作成を求められ、送受信したメールの履歴やアカウントの設定が初期化されたような状態になります。
起動すると初期状態に戻っている

■原因

 アカウント情報が保存されている"prefs.js"ファイルが何らかの事象によって破損することで発生するようです。"prefs.js"ファイル内を見ると、アカウントに関する情報が欠落していることがわかります。
 ファイルが破損する原因については不明です。

■条件

  • ”%AppData%\Thunderbird\Profiles"以下にある破損したアカウント設定ファイル"prefs.js"のバックアップがあること
  • 初期化された原因が"prefs.js"の破損であること
    "prefs.js"ファイルを開いて次の行があるかどうかで程度判断できると思います。
    user_pref("mail.server.server〇.name", "〇〇〇〇");
    ※ "prefs.js"を開いた際に内容を変更しないよう注意してください。

■対処法

  1. Thunderbirdを終了させます。
  2. 次のフォルダにある"prefs.js"ファイルを、正常に動作していた時のバックアップファイルと置き換えるます。
  3. %AppData%\Thunderbird\Profiles\<プロファイルフォルダ>
  4. Thunderbirdを起動させます。

■注意

 ここでの対処法はThunderbirdのアカウント設定情報が保存されている、"prefs.js"ファイルを正常な時にバックアップしたファイルに置き換えるという方法をとります。
 必ず成功するということでもないようですので事前にバックアップを取ってから作業するようにしてください。

2013年5月9日木曜日

Windows7のショートカットの名前が~(2)になる

 スタートメニューやタスクバーにショートカットを登録する機能は、常に使うアプリケーションが同じ場所に表示されるので非常に便利で使いやすいです。
 筆者もシステム管理をする関係で非常に多くの種類のアプリケーションを使うので、タスクバーに15個程、スタートメニューに10個程を登録しています。 非常に便利な機能なのですがごくまれに問題を起こします。

 それが今回紹介するショートカットの名前になぜか「(2)」が追加されます。中の数字は3以上になることもあるようです。

■症状

 ユーザーが登録したスタートメニューやタスクメニューのショートカット名に「(2)」が追記される。たとえば「メモ帳」の場合、「メモ帳(2)」となる。

■原因

 同じ名前のショートカットが2つ以上登録されると、名前が重複しないようにショートカット名の後ろに自動的に「(2)」「(3)」…といった具合で数字が追記されるようになっています。
 何らかの原因でショートカットが表示されなくなり、さらにショートカットを登録すると上記のルールにのっとって「(2)」が追記されます。
 ちなみに、ショートカットが表示されなくなる原因については不明です。自宅のPCでは発生したことがないことから、ドメインがらみのリダイレクションなどが関係している可能性があります。

■解決方法

 解決方法は次の場所から表示されなくなったショートカットを削除して、ショートカットを再登録することで解決します。
 登録されている場所は、WindowsXPでクイックメニューのショートカットが登録されていたところに近いですが、また仕様が変更されているようです。

スタートメニューのショートカットの場所

%AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu

タスクバーのショートカット場所

%AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar
  1. ショートカットが保存されている場所をエクスプローラで開く
    上記の場所をエクスプローラにコピー・ペーストすると簡単です
  2. スタートメニューやタスクバーに表示されないショートカットを選択して削除する
  3. スタートメニューからショートカットを再作成する

2013年3月17日日曜日

WiXでODBCのデータソースを登録する

 ODBCを使用するアプリケーションをインストールするとODBCのデータソース(DSN)をPCに1台ずつ登録していく必要があります。社内のコンピュータであればグループポリシーなどを使って登録することも可能なのですが、社外のPCとなるとそういうわけにもいきません。
 そこでWiXを使ってODBCのデータソースを登録する方法について説明します。

■ソース

 次の例では、システムデータソースにSQL NativeClientのドライバを使って、”datasource_name”という名前データソースを登録します。接続するサーバおよびデータベースなどは次のようになります。
サーバ: primary_server
データベース: database_name
ミラー: secondary_server
<Component Id="component_id">
    <ODBCDataSource Id="odbc_id" Name="datasource_name" Registration="machine" DriverName="SQL Native Client">
        <Property Id="Server" Value="primary_server" />
        <Property Id="Database" Value="database_name" />
        <Property Id="Failover_Partner" Value="secondary_server" />
        <Property Id="Trusted_Connection" Value="yes" />
</ODBCDataSource>

■参考文献

SQL Server の設定一覧です。
SQL Server Native Client での接続文字列キーワードの使用

2013年2月25日月曜日

Adobe Readerをグループポリシーを使ってクライアントに一斉配布する方法

 社内のシステム管理をしているとクライアントのアプリケーションの更新に頭を悩ませることが多くなります。特にPCの台数が10台未満であればそれほど問題にならないのですが、ある程度まとまった台数になってくると特に更新頻度の高いソフトウェアでは非常に多くの時間が浪費されてしまいます。

 そこでWindows Serverを利用しているとグループポリシーを使って、インストーラ(MSIファイル)を自動的にすべてのクライアントに割り当てる方法について説明します。
 また、Adobe Readerの更新のようにmspファイルで配布される場合、グループポリシーのソフトウェア インストールでは更新できません。そこでスタートアップスクリプトを使用して更新する方法についても説明します。

■手順

  1. 再配布可能なAdobe Readerのインストーラを入手する
  2. インストーラからMSIファイルを抽出する
  3. グループポリシー「ソフトウェア インストール」に登録する
  4. グループポリシー「シャットダウン スクリプト」に登録する
  5. Windows XPの対策

■説明

設定手順は次の通りです。

1. 再配布可能なAdobe Readerのインストーラを入手する

 Adobe Readerを一斉配布するには、次のサイトから申し込みをして再配布可能なAdobe Readerを取得手に入れる必要があります。

2. インストーラからMSIファイルを抽出する

 AdobeのサイトからダウンロードしたインストーラファイルはEXE形式のため、そのままではグループポリシーで利用することができません。
 Adobe ReaderのインストーラからMSIファイルを取り出す必要があります。
  • インストーラファイルに”-nos_ne”のオプションをつけて実行する
  • 実行後、WindowsVista/7の場合「%ProgramData%\Adobe\Setup」に、WindowsXPの場合「%ALLUSERSPROFILE%\Application Data\Adobe\Setup」に保存されている、「AcroRead.msi」ファイルと「Data1.cab」ファイルを取り出す。
詳しい説明は次のサイトを確認してください。
Adobe Reader のMSI インストーラーを企業内配布用に抽出する

3. グループポリシー「ソフトウェア インストール」に登録する

 ドメインに参加しているクライアントのシステムがアクセスできる共有フォルダ(たとえば「\\ドメイン名\SYSVOL\...」など)に抽出したファイルを保存する。
 ドメインポリシーの「コンピュータの構成 → ポリシー → ソフトウェアの設定 → ソフトウェア インストール」を開き、メニューの「操作 → 新規作成 → パッケージ」から登録を行います。

4. グループポリシー「シャットダウン スクリプト」に登録する

 mspファイルに関してはソフトウェア インストール ポリシーが利用できないため、グループポリシーのスクリプトを利用します。
 また、スタートアップ スクリプトを使用しても同じことが実現できますが、PCが使用できるまでに時間がかかるため、ここではシャットダウン スクリプトを利用した例を説明します。
 ドメインポリシーの「コンピュータの構成 → ポリシー → Windowsの設定 → スクリプト → シャットダウン」を開きスクリプトを追加する。
 実行するファイルは「msiexec.exe」でパラメータには「/p "ファイル名.msp" /qn」という形で入力します。
 今回の例では次のようになります。
スクリプト名: msiexec.exe
パラメータ: /p "\\domain\SYSVOL\domain\scripts\Acrobat\AdbeRdrUpd11001.msp" /qn
スクリプト名: msiexec.exe
パラメータ: /p "\\domain\SYSVOL\domain\scripts\Acrobat\AdbeRdrSecUpd11002.msp" /qn

 5. Windows XPの対策

 これらのポリシーをWindows XPに適用しようとすると、インストールが実行されないことがあります。この場合Windows XPにパッチを適用する必要があります。
WindowsXPにWindowsServer2008のグループポリシーを適用する

2013/5/28 次の内容を修正しました

  • スクリプトを「スタートアップ」から「シャットダウン」に変更し、合わせて挿絵を変更しました。
  • 手順4のスクリプトのパラメータから「reinstall=all reinstallmode=vomus」を削除しました。

Windows XPにWindows Server 2008のグループポリシーを適用する

 Windows Server 2008以降のドメイン環境でWindows XPクライアントを使用していると、一部のグループポリシーが適用されないことがあります。
 適用されないポリシーの中には次のようなものがあり、ほかにもいろいろとあるとは思いますが利用するとかなり便利なものも含まれています。

適用されないものの例

  • ネットワークドライブの割り当て
  • ソフトウェア インストールの割り当て
  • など

■説明

  これらのグループポリシーはWindows Server 2008になってから追加されたもので、Windows XP発売時点では含まれていなかったポリシーです。これらのポリシーをWindows XP上ででも正しく機能させるためのパッチがMicrosoftから提供されています。
 このパッチをWindows XPに適用することでWindows Vista以降と同じようにポリシーを適用することができます。

 WindowsXPのサポート終了が1年ちょっとという時期になって今更ではありますが・・・