2013年10月17日木曜日

IE11のインストールをブロックする

10月17日のWindows8.1と合わせてリリースされるInternet Explorer 11(IE11)ですが,システムの動作確認が取れるまではアップデートしたくないという状況も多いと思います。弊社でもオンラインバンキングの動作が不安定になるということで,IE11にアップデートしないよう取引先から連絡がありました。

Windowsアップデートで自動的にアップデートされないようにするには,以下の方法があるようです。
  • レジストリを変更する
  • Internet Explorer 11 Blocker Toolkit (IE11 Blocker)を使用
  • グループポリシーで設定する

レジストリの変更

以下のレジストリキーを作成
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Setup\11.0

DoNotAllowIE11 という名前でDWORD値を追加し,値は1とする。




Internet Explorer 11 Blocker Toolkit (IE11 Blocker)

Microsoftから IE11 Blocker (日本語)が提供されています。にせよダウンロードできるのは英語のファイルです。


ダウンロードした IE11_BlockerToolkit.EXE は自己解凍型のファイルです。


実行すると3つのファイルになります。




  • IE11_Blocker.adm :ドメイン環境下でグループポリシーに取り込んで使用します。
  • IE11_Blocker.cmd :コマンドプロンプトで実行します。
  • IE11_BlockerHelp.htm :ヘルプファイル

コマンドプロンプトを管理者モードで起動し,以下の様にコマンドを実行すれば完了です。

IE11_Blocker.cmd /B

実行すると,前述のレジストリが追加されているのを確認できます。
解除するには,以下のコマンドとなります。

IE11_Blocker.cmd /U

ヘルプファイルの中にはリモートで別のPCの設定を行う方法も書かれています。

グループポリシーで設定する

IE11 Blockerに含まれる IE11_Blocker.adm を使用します。複数のPCをまとめて設定できるので,ブロックするにも解除するにも便利です。ここでは Windows Server 2008 (R2ではない) で設定します。

設定したいグループポリシーの編集画面で,[コンピュータの構成] > [ポリシー] の下にある[管理用テンプレート]の上で右クリックしてメニューを表示します。次に[テンプレートの追加と削除]をクリックします。


[追加]をクリックし, IE11_Blocker.adm を選択すると,テンプレートが表示されます。


テンプレートは[従来の管理用テンプレート(ADM)]の下に入っています。


[Do not allow delivery of Internet Explorer 11 through Automatic Updates]をダブルクリックし,[有効]に設定します。



以上で完了です。


2013年9月30日月曜日

サイボウズOffice9 のメールをeml形式からOutlookにインポートする

最近 Office365 を導入し,メールもExchange Onlineを使うことになりました。そこで,今まで使っていたサイボウズOffice9(パッケージ版)からメールデータを移行することになりました。
ありがたいことに,Office9ではメールをエクスポートする方法が備わっています。

メールデータを退避する

エクスポートしたデータはOffice9から削除される点に注意です。「退避」というだけあって,データを削減することによるパフォーマンス向上の目的もあるようです。
エクスポートすると,1メールごとにemlファイルとして保存されますので,これを他のアプリケーションに移す形となります。

操作はインストールされているサーバー(もしくはPC)のコマンドプロンプトで行ないます。以下のコマンドを実行すると処理が始まります。

ag.exe -x mailsave -path (保存フォルダの絶対パス) -date (yyyy/mm/dd) -uid (対象ユーザーID) -e (実行時間(秒))

今回は以下のコマンドを実行しました。

ag.exe -x mailsave -date (2010/12/31) -uid 156

保存フォルダの絶対パスは省略するので既定の場所に保存されます。
実行時間も省略しました。
対象ユーザーIDはログイン名とは異なります。Office9の「ユーザーの設定」画面で「ユーザーをCSVで書き出す」を実行すると,出力項目にユーザーIDが含まれていますので,ここで確認できます。

実行すると,以下のように処理が進みます。


メールの件数に応じて時間がかかります。


保存されているのが分かります。
メールは年月日でフォルダー分けされるようです。


ここから移行先のアプリケーションにインポートしていくことになります。
Windows Live メールであれば簡単に取り込むことができました。移行先がOutlookであれば,Outlook2010まではWindows Live メール経由で取り込むことができます。
弊社が使用するOutlook2013ではその機能が無くなってしまってますので,別の方法でインポートしなくてはならないのですが,それはまた別の話となります。

2013年9月19日木曜日

iPad(3rd) SIMフリー(docomo-mopera) で iOS7を試してみた

本日より利用できるようになったiOS7ですが,iPad(3rd) [MD370LL/A] をさっそくアップデートしてみました。
気になるのはdocomoのmoperaで問題なく通信できるかどうかというところでしたが,私の環境ではうまく通信できていました。(2013/09/19 11:17現在)

APNに"mopera.net"と入力されているかどうか確認

3rdなので3Gしか使えないのは当然ながら変わりませんが,モバイルデータ通信,インターネット共有,両方とも使用できました。
4th以降でLTEだと,どうなるのかは分かりません。
最近はauからもiPadが出ていますし,docomoからも出る可能性がありそうです。いろいろ選択肢もあるので,そろそろ新型に変えたい気持ちもありますが,とりあえずはきちんと動いてくれて嬉しいです。

2013年7月12日金曜日

DataTableからLINQを使ってデータを取り出す

久しぶりにDataTableに対してLINQを使いました。
いまさらな感じは否めませんが,記録として残します。

    

    Public Sub DataTableLinqSelectTest()

        'テスト用テーブル作成
        Dim dt As New DataTable("TestTable")
        With dt.Columns
            .Add("Code")
            .Add("Name")
            .Add("Type")
            .Add("Value", Type.GetType("System.Int32"))
        End With

        Dim nr As DataRow

        nr = dt.NewRow
        nr("Code") = "001"
        nr("Name") = "株式会社テスト工業"
        nr("Type") = "製造"
        nr("Value") = 100000
        dt.Rows.Add(nr)

        nr = dt.NewRow
        nr("Code") = "002"
        nr("Name") = "株式会社テストマテリアルズ"
        nr("Type") = "製造"
        nr("Value") = 200000
        dt.Rows.Add(nr)

        nr = dt.NewRow
        nr("Code") = "003"
        nr("Name") = "株式会社テストシステム"
        nr("Type") = "ソフトウェア"
        nr("Value") = 150000
        dt.Rows.Add(nr)

        nr = dt.NewRow
        nr("Code") = "004"
        nr("Name") = "株式会社テストストア"
        nr("Type") = "小売"
        nr("Value") = 150000
        dt.Rows.Add(nr)

        nr = dt.NewRow
        nr("Code") = "005"
        nr("Name") = "株式会社手須戸インダストリー"
        nr("Type") = "製造"
        nr("Value") = 250000
        dt.Rows.Add(nr)

        'Typeが「製造」でNameに「テスト」を含むデータを取得
        Dim query = From el In dt.AsEnumerable
                    Where el("Type") = "製造"
                    Where el("Name") Like "*テスト*"
                    Order By el("Code") Ascending
                    Select el

        'データの書き出し
        For Each r As DataRow In query
            Debug.WriteLine(r("Code") & ": " & r("Name"))
        Next

        'Valueの合計を取得
        Dim valuesum = query.Sum(Function(el) el("Value"))
        Debug.WriteLine("Sum: " & valuesum)

    End Sub

    

2013年7月3日水曜日

弥生会計13のインストール中に発生したエラー

弊社の環境が悪いのか,よく問題が発生する弥生会計(ネットワーク版)のインストールですが,今回は弥生会計12からの移行のため,弥生会計13をインストールしました。3台インストールしましたが,うち2台で問題が発生しまたので記録として残します。

1台目

問題なくインストール完了

2台目

 "所得税確定申告モジュール(平成24年分)" --> エラーメッセージ:終了コード(-1073741819)で、インストール処理を終了しました。
インストールは順調に進んでいましたが,最後のモジュールでエラーが発生しました。試しにもう一度最初からインストールをやり直すと,今度はうまくいきました。

3台目

"Microsoft Windows(KB2784152)の修正プログラム" --> エラーメッセージ:終了コード(-939523085)で、インストール処理を終了しました。
こちらはなかなか手間取りました。いろいろ試した経緯を記録します。

直接KB2784152をインストール


インストールメディア(DVD)の中に \Runtime\KB2784152 というフォルダにKB2784152のセットアップファイルがあるので,これを直接起動しましたが,うまくいきませんでした。

インストーラーはエラーを検出しました: 0xc80003f3


Windows Update ダウンロードの一時フォルダーの名前を変更


マイクロソフトのサポートに該当する問題が記載されているので,これを試しました。

Windows Update または Microsoft Update を使用して更新プログラムをインストールしようとすると、エラー コード 0X80248007 が表示される

「方法 1: Windows Update ダウンロードの一時フォルダーの名前を変更します。」とあるので,記載通りに作業します。

以下のテキストに rename.bat と名前を付けて保存し,「管理者として実行」するだけです。今回の環境はWindows7なので,「Windows Vista および Windows Server 2008 は、以下の手順を実行します。」の項にあるテキストを使用します。

Net stop wuauserv
cd %systemroot%\SoftwareDistribution
ren Download Download.old
Net start wuauserv

コマンドプロンプトが開いて作業が完了するので,先程のKB2784152を試してみますが,またエラーとなりました。

Windows Update SoftwareDistribution フォルダー名前を変更


続いて「方法 2: Windows Update SoftwareDistribution フォルダー名前を変更します。」の作業を行ないます。
「方法1」と同じで,テキストが異なるだけです。

Net stop wuauserv
cd %systemroot%
ren SoftwareDistribution SoftwareDistribution.old
Net start wuauserv

再度KB2784152のセットアップファイルを実行します。
今度はうまくいきました!

KB2784152について


KB2784152については弥生のサイトにも説明があります。参考までに。

弥生サイト:日本マイクロソフト株式会社の修正プログラム(KB2784152)

弥生サイト:日本マイクロソフト株式会社の修正プログラムの入手方法



2013年4月30日火曜日

メールワイズのデータ退避にかかる時間

サイボウズメールワイズの受注メール件数が10万件を超え,このままだと使えなくなってしまうようなのでデータ退避で古いデータを読み取り専用にする処理を行なう事になりました。

http://manual.cybozu.co.jp/mailwise4/system/save.html

操作自体は簡単で,システム管理メニューで退避期間を設定するだけです。その後,インストールサーバーのデスクトップ(Windows版)から mwsave.bat というファイルを実行します。
すると,コマンドプロンプトのコンソールが開き,実行の最終決定を迫られます。


"Y"キーを押すと処理が始まります。思わず頭文字である"S"キーを押したくなるのは私だけでしょうか。メールワイズ自体はメンテナンスモード状態になり,この間はメールワイズを使用できません。
ここから,プロンプト上に進捗記録を残しつつ処理が進んでいきます。
マニュアルには40GBのデータで2時間とありますから,せいぜい3GBである環境ならすぐに終わるかと期待もしたのですが,結局4時間ほどかかりました。





"Dividing data" というプロセスがなかなか終わらず,これだけで2時間以上かかりました。その後も "Optimizing data" とか "Cutting old data" とか時間のかかる処理が続きます。
データ容量の大小にかかわらず,データ退避処理には十分な時間を確保したほうがよさそうです。

2013年4月25日木曜日

Evernote Windows版 4.6.5.8275(268783) Prerelease 同期失敗(ユーザー名が不正)について

Evernoteのアップデート通知(4.6.5.8275(268783) Prerelease)が来たのでさっそくインストールしました。すると,「同期失敗 ユーザー名が不正」とかいった感じのエラーが発生してしまいました。アクティビティログを見ると Missing password と記録されています。

とりあえずサインアウトし,改めてサインインすると同期できるようになりました。
他のPCでも同じようになっているので,またエラーなのでしょうか。プレリリース版なので,正式リリースの時には直っているといいのですが。