FSMOを別な物理サーバーへ移動したところ、ドメインに参加しているPCの時刻が頻繁にずれるようになってしまい悩んでいた。
昨日もHyper-V環境下で動作するDCの時刻を確認したら2分も遅れていた。先週の金曜日は殆ど合っていたのに。DCのW32TIMEサービスの設定も正しくしてあるはずなのに。
今日もネットでいろいろと調べていたら、Microsoft サポートに「Windows Server で権限のあるタイム サーバーを構成する方法」というのが掲載されていた。
http://support.microsoft.com/kb/816042/ja
ここには、「権限のあるタイム サーバーの時刻は、ハードウェアから収集するように構成することを強くお勧めします。権限のあるタイム サーバーをインターネット上のタイム ソースと同期するように構成した場合、認証は行われません。」と記載されていた。
これだ、と思い、早速その通りに設定してみたらドンピシャ(FSMOだけは物理サーバーにしてある)。
Hyper-Vの環境下で動作するDCの時刻が±1秒程度の精度で動き出した。この前までは、精度が上がっても数秒のずれがあったのに(Hyper-Vの環境下で動作するゲストOSの時刻は、その仕組み上、時刻が遅れ気味になる)。
ネット上では、NTPサーバーを使用することを推奨するような記事が多いが、FSMOの場合は自分自身のCMOSクロックを使用することが正しそうだ。と言うことは、Active Directry環境下ではNTPサーバーを使用することは無い???
Hyper-Vの環境で動作するDCの場合、統合サービスの時刻の同期はチェックを外さないといけないので、これも忘れないようにしないとね。因みにマイクロソフトでは時刻の同期について「物理システムである Hyper-V ホストが持つ時刻に、仮想システムであるゲスト OS の時刻を同期させるためのものですが、ホストとゲストの時刻を常に同じにすることを目的とはしていません。」と言い切っているので注意が必要だ。
当部がコンピューターについて経験した中で有益と思われる情報を発信しています。誰か一人にでも有益と思ってもらえれば幸いです。かなりマニアックな情報もありますが by 間中 猛(MANAKA Takeshi)
関東農機株式会社のホームページ
2011年11月29日火曜日
2011年11月18日金曜日
SQL SERVERのインスタンスをコマンドで再起動する
SQL SERVERのインスタンスをコマンドで再起動したくてネットで調べたら、参考になるものが少なかったのでここに記しておく。
私の環境は、
Windows Server 2008 R2 SP1、SQL SERVER 2005 SP3で、SQL Server AgentとSQL Serverはサービスとして起動している。SQL Server AgentとSQL Serverをサービスとして起動していないとこの手順は有効ではないので注意。
手順は、
1) SQL Server Agentを停止
2) SQL Server インスタンスを一時停止。この一時停止がポイントだ。一時停止をせずにいきなり停止すると、実行中のアプリケーションがあった場合、インスタンスとの接続を切られて異常終了してしまう。これを防ぐために一時停止を行う。しかし一時停止でも、アプリケーション側で接続が切られた時に再接続するようなロジックを書いてないと異常終了してしまうのは一緒。
3) SQL Server インスタンスを停止。
4) SQL Server インスタンスを起動
5) SQL Server Agentを起動
コマンドにすると
net stop "SQL Server Agent (MSSQLSERVER)"
net pause "SQL Server (MSSQLSERVER)"
net stop "SQL Server (MSSQLSERVER)"
net start "SQL Server (MSSQLSERVER)"
net start "SQL Server Agent (MSSQLSERVER)"
ここではインスタンス名をデフォルトの名称にしているが、異なるインスタンスを再起動したければ、MSSQLSERVERの所をそのインスタンス名に置き替えれば良い。
私が試した環境のWindows Server 2008 R2 SP1では、管理者権限がないとコマンドが拒否されて正常に機能しないので注意が必要だ。
参考までに
msdnではインスタンスを停止する際のメモとして以下を記している。
「シャットダウンを正常に行うには、SQL Server インスタンスを停止する前に、SQL Server を一時停止して SQL Server エージェント サービスを停止してください。いずれの操作も net コマンドまたは SQL Server 構成マネージャを使用して実行できます。」
また、サービスの一時停止と再開については
「Microsoft SQL Server のインスタンスを一時停止した場合、サーバーに接続されているユーザーはタスクを終了できますが、新しい接続は許可されません。たとえば、SQL Server のインスタンスを数分間にわたって一時停止し、SQL Server をシャットダウンする前に、接続されているユーザーにシャットダウン メッセージを送ることができます。また、一時停止した SQL Server サービスを再開することもできます。 」と解説している。
http://msdn.microsoft.com/ja-jp/library/ms187463(SQL.90).aspx
私の環境は、
Windows Server 2008 R2 SP1、SQL SERVER 2005 SP3で、SQL Server AgentとSQL Serverはサービスとして起動している。SQL Server AgentとSQL Serverをサービスとして起動していないとこの手順は有効ではないので注意。
手順は、
1) SQL Server Agentを停止
2) SQL Server インスタンスを一時停止。この一時停止がポイントだ。一時停止をせずにいきなり停止すると、実行中のアプリケーションがあった場合、インスタンスとの接続を切られて異常終了してしまう。これを防ぐために一時停止を行う。しかし一時停止でも、アプリケーション側で接続が切られた時に再接続するようなロジックを書いてないと異常終了してしまうのは一緒。
3) SQL Server インスタンスを停止。
4) SQL Server インスタンスを起動
5) SQL Server Agentを起動
コマンドにすると
net stop "SQL Server Agent (MSSQLSERVER)"
net pause "SQL Server (MSSQLSERVER)"
net stop "SQL Server (MSSQLSERVER)"
net start "SQL Server (MSSQLSERVER)"
net start "SQL Server Agent (MSSQLSERVER)"
ここではインスタンス名をデフォルトの名称にしているが、異なるインスタンスを再起動したければ、MSSQLSERVERの所をそのインスタンス名に置き替えれば良い。
私が試した環境のWindows Server 2008 R2 SP1では、管理者権限がないとコマンドが拒否されて正常に機能しないので注意が必要だ。
参考までに
msdnではインスタンスを停止する際のメモとして以下を記している。
「シャットダウンを正常に行うには、SQL Server インスタンスを停止する前に、SQL Server を一時停止して SQL Server エージェント サービスを停止してください。いずれの操作も net コマンドまたは SQL Server 構成マネージャを使用して実行できます。」
また、サービスの一時停止と再開については
「Microsoft SQL Server のインスタンスを一時停止した場合、サーバーに接続されているユーザーはタスクを終了できますが、新しい接続は許可されません。たとえば、SQL Server のインスタンスを数分間にわたって一時停止し、SQL Server をシャットダウンする前に、接続されているユーザーにシャットダウン メッセージを送ることができます。また、一時停止した SQL Server サービスを再開することもできます。 」と解説している。
http://msdn.microsoft.com/ja-jp/library/ms187463(SQL.90).aspx
2011年11月16日水曜日
SQL BPA command lineは動作を停止しました
SQL SERVER 2000を2005へアップグレードする為に、SQL SERVER 2005 アップグレード アドバイザー使用した。アップグレード アドバイザー分析ウィザードの開始をクリックして、各種条件を設定し、最後に実行ボタンをクリックすると
「SQL BPA command lineは動作を停止しました」
と表示され異常終了してしまう。
解決方法をネットで調べたら、どうやらBPAClient.dllを複写してあげると解決する場合があることが分かった。
私の場合は、OSがWindows Server 2008 R2 STD SP1だが、
"C:\Program Files (x86)\Microsoft SQL Server 2005 Upgrade Advisor\BPA\bin\BPAClient.dll"
を
"C:\Program Files (x86)\Microsoft SQL Server 2005 Upgrade Advisor\BPA\"
へコピーして解決できた。
この後、アップグレードを実施したら、また同様のエラーメッセージ。
この時は、
"C:\Program Files (x86)\Microsoft SQL Server\90\Setup Bootstrap\BPA\bin\BPAClient.dll"
を
"C:\Program Files (x86)\Microsoft SQL Server\90\Setup Bootstrap\BPA\"
へコピーして解決できた。
「SQL BPA command lineは動作を停止しました」
と表示され異常終了してしまう。
解決方法をネットで調べたら、どうやらBPAClient.dllを複写してあげると解決する場合があることが分かった。
私の場合は、OSがWindows Server 2008 R2 STD SP1だが、
"C:\Program Files (x86)\Microsoft SQL Server 2005 Upgrade Advisor\BPA\bin\BPAClient.dll"
を
"C:\Program Files (x86)\Microsoft SQL Server 2005 Upgrade Advisor\BPA\"
へコピーして解決できた。
この後、アップグレードを実施したら、また同様のエラーメッセージ。
この時は、
"C:\Program Files (x86)\Microsoft SQL Server\90\Setup Bootstrap\BPA\bin\BPAClient.dll"
を
"C:\Program Files (x86)\Microsoft SQL Server\90\Setup Bootstrap\BPA\"
へコピーして解決できた。
2011年11月9日水曜日
DiffPDFとBrava Desktop
今回あるサーバーを入れ替える事になった。古いサーバーではSQL SERVER 2000が動作しており、新サーバーではSQL SERVER 2005を使用する予定だ。サーバー入れ替え時にはプログラムが正常に動作するのか検証が必要だ。データベースのテーブルの照合だったらSQL文をで比較してしまえば簡単なのだが、問題は紙に出力する帳票類だ。今回、テストするページ数はA4とA5を合わせて6,000ページ以上!!これを一文字も見逃さずに新旧で照合するのは並大抵の努力ではないし、また、それに要する時間も半端じゃないと思う。2人でやったら1カ月くらいかかるんじゃないの?その後、誤りが判明したらまた照合。これを何回かやったらいい加減イヤになってくると思う。
これを何とかプログラムでできないかと思い、インターネットでPDFを照合するソフトが在るかなと思って検索してみると、Brava DesktopとDiffPDFの2つが見つかった。
早速使い比べてみた。
Brava Desktopは有償のソフト、対するDiffPDFはフリーソフト。どちらが良いかな。
完全に一致しているPDF同士を比較するならば、DiffPDFの圧勝!! DiffPDFは差分があったページだけを抽出して表示してくれるから、完全に一致している場合は結果画面に「2つの文書は一致していると思われる」と少々自信なさげなメッセージを表示してくれる。1,000ページ位あっても所要時間は2分程度。それに対してBrava Desktopは不一致のページだけを抽出表示する機能がないので、1ページずつ黙視で確認していくしかない。これはかなり手間もかかるし、ミスも誘発すると思う。
しかし、帳票にはタイムスタンプがついている事が多い。その場合はどちらのソフトを使用しても全部のページがエラーページとなってしまうので、今度はどこがエラーしているかを正確に把握できる事が重要だ。その場合は、帳票の種類によってBrava DesktopとDiffPDFの両方に軍配が上がる。
照合するPDFによって2つのソフトを使い分けるとより早く照合作業を完了させられる。今回、6,000ページ以上を照合したが、要した時間は1人で8時間程度だった。やはりタイムスタンプの部分やSQL SERVERの返してくる値の順番によって値の印字位置が違う場合に時間を費やしてしまったので、使いながらどちらがより使いやすいかを考えた方が良いと思う。
それにしても、DiffPDFには大いに感謝!!
これを何とかプログラムでできないかと思い、インターネットでPDFを照合するソフトが在るかなと思って検索してみると、Brava DesktopとDiffPDFの2つが見つかった。
早速使い比べてみた。
Brava Desktopは有償のソフト、対するDiffPDFはフリーソフト。どちらが良いかな。
完全に一致しているPDF同士を比較するならば、DiffPDFの圧勝!! DiffPDFは差分があったページだけを抽出して表示してくれるから、完全に一致している場合は結果画面に「2つの文書は一致していると思われる」と少々自信なさげなメッセージを表示してくれる。1,000ページ位あっても所要時間は2分程度。それに対してBrava Desktopは不一致のページだけを抽出表示する機能がないので、1ページずつ黙視で確認していくしかない。これはかなり手間もかかるし、ミスも誘発すると思う。
しかし、帳票にはタイムスタンプがついている事が多い。その場合はどちらのソフトを使用しても全部のページがエラーページとなってしまうので、今度はどこがエラーしているかを正確に把握できる事が重要だ。その場合は、帳票の種類によってBrava DesktopとDiffPDFの両方に軍配が上がる。
照合するPDFによって2つのソフトを使い分けるとより早く照合作業を完了させられる。今回、6,000ページ以上を照合したが、要した時間は1人で8時間程度だった。やはりタイムスタンプの部分やSQL SERVERの返してくる値の順番によって値の印字位置が違う場合に時間を費やしてしまったので、使いながらどちらがより使いやすいかを考えた方が良いと思う。
それにしても、DiffPDFには大いに感謝!!
2011年8月22日月曜日
Windows7 デスクトップから一部のショートカットが消えた
先日、ユーザーからデスクトップのショートカットをダブルクリックしても何も開かなくなってしまったと連絡が有り、調査したらLANのL2SWが故障していた。取り敢えず、予備の機器と交換して対処した。
すると、本日、そのユーザーからデスクトップの一部のショートカットが消えていると連絡があった。どうせ、自分で消してしまったんだろと思って適当に対応したが、何となく気になりネットで調べてみた。すると、Windws7 にはコンピューター保守という機能があり、デスクトップのショートカットが消えてしまうことが有ることが判明。
マイクロソフト サポート オンラインの回答
(一部名称が異なっていたのでWindows7 SP1に合わせて変更してあります。)
●現象
Windows 7 を実行しているコンピューターで、デスクトップ上に作成したショートカットが消えます。
●原因
これらのショートカットは、システム保守のトラブルシューティング ツールにより破損していると見なされ、削除されます。
システム保守のトラブルシューティング ツールは、オペレーティング システムの保守を毎週実行します。システム保守のトラブルシューティング ツールは問題を自動的に解決するか、アクション センターを通じて問題を報告します。デスクトップ上で 4 つを超える破損したショートカットが存在する場合、システム保守のトラブルシューティング ツールはデスクトップから破損したショートカットを自動的にすべて削除します。
●回避策
この問題を回避するには、以下のいずれかの方法を使用します。
・方法 1
デスクトップ上の破損したショートカットの数を 4 つ以下に維持します。
・方法 2
デスクトップ上に 4 つを超える破損したショートカットが必要である場合、システム保守のトラブルシューティング ツールを無効にする方法があります。
注: システム保守のトラブルシューティング ツールを無効にすると、これにより実行されるすべての保守タスクが無効になります。そのため、方法 1 を使用することをお勧めします。
システム保守のトラブルシューティング ツールを無効にするには、次の手順を実行します。
[スタート] ボタン元に戻す画像を拡大するをクリックし、[コントロール パネル] をクリックします。
[システムとセキュリティ] で [コンピューターの一般的な問題のトラブルシューティング] をクリックします。
左側のナビゲーション ウィンドウで [設定の変更] をクリックします。
[コンピューター保守] を [無効] に設定します。
XPにはデスクトップのクリーンアップという無用の長物があり、PCをセットアップする度に解除する手間がかかっていたが、Windows7にはそれが無くなって良かったと思っていたら、こんな所に伏兵が潜んでいた。プログラムへのショートカットはリンクが切れることはあまり無いだろうけど、サーバーへのショートカットなんて、ネットワークを経由しているので切れることが有るのは当然なのに(マイクロソフトもそれは認識している)、マイクロソフトは何でこんな面倒な機能を追加したんだろう。
すると、本日、そのユーザーからデスクトップの一部のショートカットが消えていると連絡があった。どうせ、自分で消してしまったんだろと思って適当に対応したが、何となく気になりネットで調べてみた。すると、Windws7 にはコンピューター保守という機能があり、デスクトップのショートカットが消えてしまうことが有ることが判明。
マイクロソフト サポート オンラインの回答
(一部名称が異なっていたのでWindows7 SP1に合わせて変更してあります。)
●現象
Windows 7 を実行しているコンピューターで、デスクトップ上に作成したショートカットが消えます。
●原因
これらのショートカットは、システム保守のトラブルシューティング ツールにより破損していると見なされ、削除されます。
システム保守のトラブルシューティング ツールは、オペレーティング システムの保守を毎週実行します。システム保守のトラブルシューティング ツールは問題を自動的に解決するか、アクション センターを通じて問題を報告します。デスクトップ上で 4 つを超える破損したショートカットが存在する場合、システム保守のトラブルシューティング ツールはデスクトップから破損したショートカットを自動的にすべて削除します。
●回避策
この問題を回避するには、以下のいずれかの方法を使用します。
・方法 1
デスクトップ上の破損したショートカットの数を 4 つ以下に維持します。
・方法 2
デスクトップ上に 4 つを超える破損したショートカットが必要である場合、システム保守のトラブルシューティング ツールを無効にする方法があります。
注: システム保守のトラブルシューティング ツールを無効にすると、これにより実行されるすべての保守タスクが無効になります。そのため、方法 1 を使用することをお勧めします。
システム保守のトラブルシューティング ツールを無効にするには、次の手順を実行します。
[スタート] ボタン元に戻す画像を拡大するをクリックし、[コントロール パネル] をクリックします。
[システムとセキュリティ] で [コンピューターの一般的な問題のトラブルシューティング] をクリックします。
左側のナビゲーション ウィンドウで [設定の変更] をクリックします。
[コンピューター保守] を [無効] に設定します。
XPにはデスクトップのクリーンアップという無用の長物があり、PCをセットアップする度に解除する手間がかかっていたが、Windows7にはそれが無くなって良かったと思っていたら、こんな所に伏兵が潜んでいた。プログラムへのショートカットはリンクが切れることはあまり無いだろうけど、サーバーへのショートカットなんて、ネットワークを経由しているので切れることが有るのは当然なのに(マイクロソフトもそれは認識している)、マイクロソフトは何でこんな面倒な機能を追加したんだろう。
2011年7月18日月曜日
Office File Validation (OFV) アドインがインストールされた Excel 2003 でネットワーク上のファイル共有から XLS ファイルを開く時に時間がかかる
以下は、Excel2003のBookのファイル名、ファイルサイズとそのファイルが開くまでの所要時間の一覧だ。計測は同じファイルを3度試行している。計測は手元にあったストップウォッチで計測したので、アバウトだ。ファイルはLAN上のサーバーに保存されている。
book名 ファイルサイズ(Byte) 計測1回目、2回目、3回目
book1.xls 92,160Byte 8秒、8秒、8秒
book2.xls 95,232Byte 8秒、8秒、8秒
book3.xls 920,064Byte 48秒、48秒、48秒
book4.xls 2,285,056Byte 147秒、135秒、131秒
book1.xlsを開くまでに8秒かかっている。ファイルサイズは僅か90KBなのに。驚くのはbook4の時間だ。なんと2分以上かかっている。
実はこれ、office file validation add-inをインストール後の時間。
さて、office file validation add-inをアンインストールして計測すると、全部がほぼ瞬時に開く。ストップウォッチでは計測しようがない。 刹那。
つまり、マイクロソフトが Office ファイル検証機能としてWindows Updateで配付した重要な更新プログラム(office file validation add-in)を適用すると、この様にネットワーク上のBookを開く時間が大幅に増える。Book4.xlsなんて仕事にならない。
これに対して、マイクロソフトはブログで次のように回答している。
「Office ファイル検証機能 (OFV) の効果について考える」
http://blogs.technet.com/b/jpsecurity/archive/2011/07/06/3439785.aspx
故に、我が社ではoffice file validation add-inは適用しないこととする。我が社ではWSUS(Windows Server Update Services)で一括管理しているから、ユーザーがやることは何もないから安心して。
P.S マイクロソフトがこれの対策を3つ公開しているが、腹が立つのは「Excel 2007 または Excel 2010 を使用する 」だってさ。Excel2003なんて古いものをつかっていないでさっさと新しいExcelを使えと言われてるような気がする。
book名 ファイルサイズ(Byte) 計測1回目、2回目、3回目
book1.xls 92,160Byte 8秒、8秒、8秒
book2.xls 95,232Byte 8秒、8秒、8秒
book3.xls 920,064Byte 48秒、48秒、48秒
book4.xls 2,285,056Byte 147秒、135秒、131秒
book1.xlsを開くまでに8秒かかっている。ファイルサイズは僅か90KBなのに。驚くのはbook4の時間だ。なんと2分以上かかっている。
実はこれ、office file validation add-inをインストール後の時間。
さて、office file validation add-inをアンインストールして計測すると、全部がほぼ瞬時に開く。ストップウォッチでは計測しようがない。 刹那。
つまり、マイクロソフトが Office ファイル検証機能としてWindows Updateで配付した重要な更新プログラム(office file validation add-in)を適用すると、この様にネットワーク上のBookを開く時間が大幅に増える。Book4.xlsなんて仕事にならない。
これに対して、マイクロソフトはブログで次のように回答している。
「Office ファイル検証機能 (OFV) の効果について考える」
http://blogs.technet.com/b/jpsecurity/archive/2011/07/06/3439785.aspx
故に、我が社ではoffice file validation add-inは適用しないこととする。我が社ではWSUS(Windows Server Update Services)で一括管理しているから、ユーザーがやることは何もないから安心して。
P.S マイクロソフトがこれの対策を3つ公開しているが、腹が立つのは「Excel 2007 または Excel 2010 を使用する 」だってさ。Excel2003なんて古いものをつかっていないでさっさと新しいExcelを使えと言われてるような気がする。
2011年6月15日水曜日
パソコンがスリープ状態にならないときのチェック方法(Windows 7)
弊社も東電管轄内なので、15%の節電をせざるを得ないので、会社のパソコンを未使用時にスリープに移行するように設定を始めた。その中で、パソコンがスリープにならなかったり、また、スリープになっても直ぐに復帰してしまう現象が見受けられた。
マイクロソフトのWEBサイトにその原因を特定する為の調査コマンドが掲載されていたのでそのコマンドを記しておく。
powercfg /energy -output %USERPROFILE%\Desktop\energy.html
これを実行すると、1分間のシステム監視を行ってデスクトップにログを出力するので、「エラー」項目にスリープ移行を妨げているデバイスドライバなどがないか確認する。幾つもエラー項目が出るが、通常はそれでも問題なくスリープに入れるみたい。
自分のパソコンで実行してみたら、確かに原因が特定できた。
マイクロソフトのWEBサイトにその原因を特定する為の調査コマンドが掲載されていたのでそのコマンドを記しておく。
powercfg /energy -output %USERPROFILE%\Desktop\energy.html
これを実行すると、1分間のシステム監視を行ってデスクトップにログを出力するので、「エラー」項目にスリープ移行を妨げているデバイスドライバなどがないか確認する。幾つもエラー項目が出るが、通常はそれでも問題なくスリープに入れるみたい。
自分のパソコンで実行してみたら、確かに原因が特定できた。
2011年6月9日木曜日
最近のウイルス
ある日、厚生労働省からあなた宛にメールが届きました。
「厚生労働省からのメールか、珍しいな。お!?、添付ファイルが有る。なになに。」
放射線被ばくに関する基礎知識.exe.doc
普段からウイルスに感染しないように注意を払っているあなたは、メールの添付ファイルは直接開かず、一旦自分のパソコンにダウンロードし確認してから開きます。
さて、今回のファイルは、プロパティをみても放射線被ばく・・・、会社名は厚生労働省となっており、
アイコンもワードのアイコンになっており、ファイルの拡張子もdocとなっています。
これは間違いなく厚生労働省から送られてきたワード文書だと思い安心してファイルを開きました。
ファイルを開く前にあれだけ注意をしていたのに、何故分からなかったのでしょう。
実は、最近こういったウイルスが増えてきているそうです。ファイルの名前の途中に文字を右から左に表示する制御コードを埋め込むと、この様な事が可能になってしまいます。本当のファイル名は 放射線被ばくに関する基礎知識.cod.exeなのですが、RLOを使いファイル名を放射線被ばくに関する基礎知識.exe.docに見せかけています。
実際のウイルスはこんな画面は一切表示せず、見えない所で活動します。
従って、今回のような方法でウイルスに感染した場合は、感染したことに気付かない可能性が高いです。
それでは我々利用者はどのような点に気をつければ良いのでしょうか。
原則は、普段メールのやり取りをしていない人からのメールは、どんなに信用できる法人であっても団体、国の機関であっても、疑ってかかり、添付ファイルは開かない。どうしても開く必要が有る場合は、次の点を確認します。
一つは種類です。下に、本当のワード文書と今回のウイルスを比較の為に2つ並べて表示しました。本当のワード文書は種類に「Microsoft Word 文書」と表示されており、一方、ウイルスは「アプリケーション」と表示されています。従って、ここを確認すればこのファイルはワード文書ではなくプログラムだと言うことが分かります。
もう一つは、ファイル名の中に.exeやexe.と言う文字が入っていたら絶対に開かない。exeの前または後ろに.(ピリオド)が無ければ問題有りません。普通、ファイル名の中に.exeやexe.という文字は使いませんから。この2つの点に気をつけてもらえれば、こういった方法で侵入しようとするウイルスは防げると思います。
その他、セキュリティー対策ソフトのウイルス定義ファイルは常に最新の状態にしておくことは肝要です。
「厚生労働省からのメールか、珍しいな。お!?、添付ファイルが有る。なになに。」
放射線被ばくに関する基礎知識.exe.doc
普段からウイルスに感染しないように注意を払っているあなたは、メールの添付ファイルは直接開かず、一旦自分のパソコンにダウンロードし確認してから開きます。
さて、今回のファイルは、プロパティをみても放射線被ばく・・・、会社名は厚生労働省となっており、
アイコンもワードのアイコンになっており、ファイルの拡張子もdocとなっています。
これは間違いなく厚生労働省から送られてきたワード文書だと思い安心してファイルを開きました。
すると、
ジャーン、何と、添付されていたファイルはワード文書ではなく、ウイルスでした。
ファイルを開く前にあれだけ注意をしていたのに、何故分からなかったのでしょう。
実は、最近こういったウイルスが増えてきているそうです。ファイルの名前の途中に文字を右から左に表示する制御コードを埋め込むと、この様な事が可能になってしまいます。本当のファイル名は 放射線被ばくに関する基礎知識.cod.exeなのですが、RLOを使いファイル名を放射線被ばくに関する基礎知識.exe.docに見せかけています。
実際のウイルスはこんな画面は一切表示せず、見えない所で活動します。
従って、今回のような方法でウイルスに感染した場合は、感染したことに気付かない可能性が高いです。
それでは我々利用者はどのような点に気をつければ良いのでしょうか。
原則は、普段メールのやり取りをしていない人からのメールは、どんなに信用できる法人であっても団体、国の機関であっても、疑ってかかり、添付ファイルは開かない。どうしても開く必要が有る場合は、次の点を確認します。
一つは種類です。下に、本当のワード文書と今回のウイルスを比較の為に2つ並べて表示しました。本当のワード文書は種類に「Microsoft Word 文書」と表示されており、一方、ウイルスは「アプリケーション」と表示されています。従って、ここを確認すればこのファイルはワード文書ではなくプログラムだと言うことが分かります。
もう一つは、ファイル名の中に.exeやexe.と言う文字が入っていたら絶対に開かない。exeの前または後ろに.(ピリオド)が無ければ問題有りません。普通、ファイル名の中に.exeやexe.という文字は使いませんから。この2つの点に気をつけてもらえれば、こういった方法で侵入しようとするウイルスは防げると思います。
その他、セキュリティー対策ソフトのウイルス定義ファイルは常に最新の状態にしておくことは肝要です。
2011年6月3日金曜日
VB.NET CSVファイルをデータテーブルに読み込む方法について検証
業務上必要に迫られて今回3つの方法を検証したが、結果的にはMicrosoft.VisualBasic.FileIO.TextFieldParserに軍配が上がった。
方法1)
System.IO.StreamReaderクラスでレコードを1行ずつ読み込み、読み込んだレコードをSystem.String.Splitメソッドを使ってカンマでセパレートし、データテーブルに格納する。
結果)
ダブルクォーテーション中に在るカンマを区切り文字として認識してしまい、一つの文字列が2つの文字列に分けられてしまう現象が発生。でも、実数は正しく読み込まれた。また、コードが多く可読性が低い。
方法2)
OleDbConnectionクラスとOleDbDataAdapterクラスを使い、データテーブルに格納する。
結果)
文字列は正しく読み込まれたが、実数の小数点以下が読み込まれない現象が発生。予めデータテーブルにフィールドを追加しておき、そのフィールドのデータ型にDECIMALを指定しておいても変わらなかった。コードは少なく可読性が高い。
方法3)Microsoft.VisualBasic.FileIO.TextFieldParserクラスと同クラスReadFieldsメソッドを使い、データテーブルに格納する。
結果)
文字列も実数も正しく読み込まれた。コードは少なく可読性が高い。
番外編)
この他にもネットには方法が存在していた。スピードを求めるならば、既存のクラスを使用するのではなく、自力で解析コードを書くことみたいだ。
方法1)
System.IO.StreamReaderクラスでレコードを1行ずつ読み込み、読み込んだレコードをSystem.String.Splitメソッドを使ってカンマでセパレートし、データテーブルに格納する。
結果)
ダブルクォーテーション中に在るカンマを区切り文字として認識してしまい、一つの文字列が2つの文字列に分けられてしまう現象が発生。でも、実数は正しく読み込まれた。また、コードが多く可読性が低い。
方法2)
OleDbConnectionクラスとOleDbDataAdapterクラスを使い、データテーブルに格納する。
結果)
文字列は正しく読み込まれたが、実数の小数点以下が読み込まれない現象が発生。予めデータテーブルにフィールドを追加しておき、そのフィールドのデータ型にDECIMALを指定しておいても変わらなかった。コードは少なく可読性が高い。
方法3)Microsoft.VisualBasic.FileIO.TextFieldParserクラスと同クラスReadFieldsメソッドを使い、データテーブルに格納する。
結果)
文字列も実数も正しく読み込まれた。コードは少なく可読性が高い。
番外編)
この他にもネットには方法が存在していた。スピードを求めるならば、既存のクラスを使用するのではなく、自力で解析コードを書くことみたいだ。
2011年6月2日木曜日
番外編 しゃべるねこ、しおちゃん
下手な説明は必要ありません。見てもらえば分かります。とても可愛い。可愛すぎる。最高だ!!
http://www.youtube.com/watch?v=hJYlXaFdp0o&hl=ja&gl=JP&warned=True&client=mv-google
http://www.youtube.com/watch?v=hJYlXaFdp0o&hl=ja&gl=JP&warned=True&client=mv-google
2011年5月24日火曜日
Windows7 x64 環境に於けるVB.NET WebBrowser PDFインライン表示
.NET FRAMEWORK 3.5で開発したアプリがWindows7 x64環境で正しく動作しなかった。
実装した機能
WebBrowserコントロールにpdfファイルをインライン表示する機能
現象
x64環境だと、インライン表示されず、別窓に開いてしまう。つまり、pdfファイルをダブルクリックした時と同じ画面。
解決方法
VSのコンパイラの詳細設定で、ターゲットCPUをAnyCPUからx86に変更(因みに、x64では駄目だった。adobe readerは32ビットだからね。)。
これだけで解決してしまった。
でも、この解決方法を見つけるまでは、実にまる1日かかった。
ネットで検索しても解決方法は見つからず、仕方がないのでadobe のSDKを使ってOLEでPDFを表示することにしたのだけど、WebBrowserよりも動作が遅い。何故か分からないけどpdfのページ数が多いと極端に遅い。しかし、仕方がないのでこれで我慢しようかと思っていた時、ふと気付いた。SDKのサンプルをx64環境で動作させる時、AnyCPUだと動作しなかったのでx86に変更してコンパイルして動作させた。ひょっとして、WebBrowserも同じかと思って試してみたところ、案の定、動作した。
あ~、今日はこれで仕事は終わりにしよう。気分上々。
実装した機能
WebBrowserコントロールにpdfファイルをインライン表示する機能
現象
x64環境だと、インライン表示されず、別窓に開いてしまう。つまり、pdfファイルをダブルクリックした時と同じ画面。
解決方法
VSのコンパイラの詳細設定で、ターゲットCPUをAnyCPUからx86に変更(因みに、x64では駄目だった。adobe readerは32ビットだからね。)。
これだけで解決してしまった。
でも、この解決方法を見つけるまでは、実にまる1日かかった。
ネットで検索しても解決方法は見つからず、仕方がないのでadobe のSDKを使ってOLEでPDFを表示することにしたのだけど、WebBrowserよりも動作が遅い。何故か分からないけどpdfのページ数が多いと極端に遅い。しかし、仕方がないのでこれで我慢しようかと思っていた時、ふと気付いた。SDKのサンプルをx64環境で動作させる時、AnyCPUだと動作しなかったのでx86に変更してコンパイルして動作させた。ひょっとして、WebBrowserも同じかと思って試してみたところ、案の定、動作した。
あ~、今日はこれで仕事は終わりにしよう。気分上々。
2011年5月18日水曜日
SQL文て意外と奥が深いんだな
業務用アプリでデータチェック処理が2分かかっていた。俺の感覚では数秒で終わらないといけない処理なので、早くなる様にアルゴリズムを変更したら逆に5分かかるようになってしまった。
そこで、今度はSQL文のWHEREを重点的に見直した。
今まで文字列を=で正確に比較していた部分を、LIKE %で曖昧検索にしたらそれで処理速度が向上。更に、いくつかの条件式を一つの条件式に纏めてみたら(単純に纏めたのではないよ。ほぼ同じ条件になる様に全く別な条件式に変えた。)これで劇的に向上。その他細かいチューニングをして、最終的には2秒で終わるようになった。
う~ん、まだまだ勉強が必要だな。
そこで、今度はSQL文のWHEREを重点的に見直した。
今まで文字列を=で正確に比較していた部分を、LIKE %で曖昧検索にしたらそれで処理速度が向上。更に、いくつかの条件式を一つの条件式に纏めてみたら(単純に纏めたのではないよ。ほぼ同じ条件になる様に全く別な条件式に変えた。)これで劇的に向上。その他細かいチューニングをして、最終的には2秒で終わるようになった。
う~ん、まだまだ勉強が必要だな。
2011年5月14日土曜日
ADO.NETでExcelブックのデータ取り込み
開発中の業務用アプリで、Excelブックからデータを取り込みたいのだが、JET OLE DB プロバイダーを使って読み込むと、取りこぼしが発生することが判明。
マイクロソフトの技術資料によると、「従来のデータベースとは異なり、Excel テーブルの列に直接データ型を指定する方法はありません。OLE DB プロバイダが列内の 8 行をスキャンして、そのフィールドのデータ型を推測します。」とある。
例えば、ある列でデータの先頭から8行目までは空白セルが続き、その後に数値が入っているセルが出現すると(例えば9行目)、その数値が無視されてしまう。つまり、空白セルと同じ扱いになってしまう。
試行錯誤した結果、書式に数値を指定しておけば、推測の結果が数値となり、そのデータは正しく取り込まれることが分かった。
推測に使用する行数は拡張プロパティのMAXSCANROWSを指定する事により、最大で16行まで指定できるが、1~16行目迄は空白で、17行目に1が入っていると17行目は空白になってしまう。
一番の解決策は、Excelテーブルの列に直接データ型を指定出来る事なのに、マイクロソフトは何故そう出来るようにしてくれないのだろう。
結局、VBA(Visual Basic for Applications)でマクロを作って、それをVB.NET側から起動する事にしたのだが、そのVBAマクロがアドインだと、VB.NET側から起動する事が出来ない。回避策はマイクロソフトが公開しているが、それについての動作は保証していない。これで業務ソフトを作らなければならないなんて。。。
まったく、何でこんな不便な仕組みを作っているんだろう、マイクロソフトは。
マイクロソフトの技術資料によると、「従来のデータベースとは異なり、Excel テーブルの列に直接データ型を指定する方法はありません。OLE DB プロバイダが列内の 8 行をスキャンして、そのフィールドのデータ型を推測します。」とある。
例えば、ある列でデータの先頭から8行目までは空白セルが続き、その後に数値が入っているセルが出現すると(例えば9行目)、その数値が無視されてしまう。つまり、空白セルと同じ扱いになってしまう。
試行錯誤した結果、書式に数値を指定しておけば、推測の結果が数値となり、そのデータは正しく取り込まれることが分かった。
推測に使用する行数は拡張プロパティのMAXSCANROWSを指定する事により、最大で16行まで指定できるが、1~16行目迄は空白で、17行目に1が入っていると17行目は空白になってしまう。
一番の解決策は、Excelテーブルの列に直接データ型を指定出来る事なのに、マイクロソフトは何故そう出来るようにしてくれないのだろう。
結局、VBA(Visual Basic for Applications)でマクロを作って、それをVB.NET側から起動する事にしたのだが、そのVBAマクロがアドインだと、VB.NET側から起動する事が出来ない。回避策はマイクロソフトが公開しているが、それについての動作は保証していない。これで業務ソフトを作らなければならないなんて。。。
まったく、何でこんな不便な仕組みを作っているんだろう、マイクロソフトは。
2011年4月12日火曜日
MS Removal Tool(詐欺プログラム)に注意!!
うちの会社の1台のPCがMS Removal Toolに感染した。ウイルスバスター・ビジネス・セキュリティ、利用ユーザーの権限はPowerUser、Windows Software Update Serviceで更新と対策はしっかりとしていたのにだ。
現象は、MS Removal Toolのウインドウが表示され続けて仕事にならないそうだ。消しても消してもこの画面が表示され続ける。
ネットで情報を収集してみたら詐欺プログラムであることが分かり少し安心した。OSがXPだったのでシステムの復元で感染前の状態に復元したらMS Removal Toolは消えた。
感染経路は不明。感染したPCをその日使用していた2人から事情を訊いたが、二人ともいつもと違う画面が出たり、変な画面が出た事は記憶に無いとのこと。二人が閲覧したのはYAHOOのホームページとWiKipedia、Q&Aのホームページだそうだ。
Internet Explorerの履歴を頼りに同じ行動をしてみたが再現しない(普通の人は再現確認をしないように)。どこから感染したのだろう。
今日になって感染したPCの使用者からウイルスバスター・ビジネス・セキュリティが動いていないと報告が有り、該当PCを調査したら、確かに動いていない。恐らく、MS Removal Toolがセキュリティソフトをアンインストールしたのだと思い、再度インストールしたら正常に動作した。
何ともやっかいな詐欺プログラムだった。
現象は、MS Removal Toolのウインドウが表示され続けて仕事にならないそうだ。消しても消してもこの画面が表示され続ける。
ネットで情報を収集してみたら詐欺プログラムであることが分かり少し安心した。OSがXPだったのでシステムの復元で感染前の状態に復元したらMS Removal Toolは消えた。
感染経路は不明。感染したPCをその日使用していた2人から事情を訊いたが、二人ともいつもと違う画面が出たり、変な画面が出た事は記憶に無いとのこと。二人が閲覧したのはYAHOOのホームページとWiKipedia、Q&Aのホームページだそうだ。
Internet Explorerの履歴を頼りに同じ行動をしてみたが再現しない(普通の人は再現確認をしないように)。どこから感染したのだろう。
今日になって感染したPCの使用者からウイルスバスター・ビジネス・セキュリティが動いていないと報告が有り、該当PCを調査したら、確かに動いていない。恐らく、MS Removal Toolがセキュリティソフトをアンインストールしたのだと思い、再度インストールしたら正常に動作した。
何ともやっかいな詐欺プログラムだった。
2011年3月29日火曜日
全社電話網再構築
昨日、KDDIの営業課長が来社し、我が社の電話網の事を褒めてくれた。
彼の話では、これだけ大規模な電話システム構築は栃木県内では我が社が初めてとのこと。ホンダや日産でもここまではやっていないと言われた。その為、大変貴重な経験をする事が出来て感謝していますと言われてしまった。今後は、我が社での経験を他社への提案時に生かしていきたいと言っていた。
確かに、電話システムの立ち上げなんて簡単だと思っていたら、意外や意外、決めることが多く、チェックの量も半端ではなかった。稼働後も問題点が50以上発生し、それをKDDI、日本通信工販と相談しながら妥協できる部分は妥協しながら、但し、譲れない部分は何とかしてとお願いして、ほぼ当初考えていた通りのシステムに近いものが完成した。いくつか要となる部分で業者からは出来ないと言われたけど、やってくれなきゃ困ると言ってお願いしたら、結局具現化出来たものな。業者は大変だったと思うよ。
今回の目的の一つ、電話の利便性は確実に向上したと思う。もう一つの目的の通信費の削減。これは、4月分の請求書を見てから判断したい。でも、まだ途中経過を見ただけだけど、通信費は確実にそして大幅に減少していた。
彼の話では、これだけ大規模な電話システム構築は栃木県内では我が社が初めてとのこと。ホンダや日産でもここまではやっていないと言われた。その為、大変貴重な経験をする事が出来て感謝していますと言われてしまった。今後は、我が社での経験を他社への提案時に生かしていきたいと言っていた。
確かに、電話システムの立ち上げなんて簡単だと思っていたら、意外や意外、決めることが多く、チェックの量も半端ではなかった。稼働後も問題点が50以上発生し、それをKDDI、日本通信工販と相談しながら妥協できる部分は妥協しながら、但し、譲れない部分は何とかしてとお願いして、ほぼ当初考えていた通りのシステムに近いものが完成した。いくつか要となる部分で業者からは出来ないと言われたけど、やってくれなきゃ困ると言ってお願いしたら、結局具現化出来たものな。業者は大変だったと思うよ。
今回の目的の一つ、電話の利便性は確実に向上したと思う。もう一つの目的の通信費の削減。これは、4月分の請求書を見てから判断したい。でも、まだ途中経過を見ただけだけど、通信費は確実にそして大幅に減少していた。
2011年3月21日月曜日
Adobe Reader Xのインストール時の注意
PDF閲覧ソフトの代名詞、ADOBE READERですが、バージョンXをインストールすると全く関係ないMcAfee Security Scan Plusがインストールされてしまいます。何でこんなことをするのか理解に苦しみます。
セキュリティーソフトをインストールしていないPCならば必要でしょうが、きちんとセキュリティ対策を実施しているPCにはMcAfee Security Scan Plusなんて百害あって一利なしです。
私は即時、アンインストールしました。
困ったものです。
セキュリティーソフトをインストールしていないPCならば必要でしょうが、きちんとセキュリティ対策を実施しているPCにはMcAfee Security Scan Plusなんて百害あって一利なしです。
私は即時、アンインストールしました。
困ったものです。
2011年3月12日土曜日
コンピューターは無事でした
昨日(3/11)の震度5強の地震で、会社のコンピューターは半壊状態かと思いながら出社し、7台のサーバーと29台のパソコンの調査しましたが、全部無事でした。あれだけ揺れたのに故障が一台も無いとは驚愕です。最近のハードディスクの性能は素晴らしいと思いました。現場やその他の部署に残っている20台位のパソコンは来週の月曜日に調査しますが、この分では故障は無さそうで一安心です。ただ、福島県と岩手県のコンピューターがどうなっているかが心配です。
2011年2月25日金曜日
開発者から見たiPhone端末とAndroid端末
結論から言えば、私はAndroid端末に軍配を上げるな。
普段から自分自身がiPod thuchを使っていてそれなりに満足はしているけど。でも、それは一ユーザーとしての立場だから。
開発者側となると話は別。
圧倒的にAndroid端末の方が良い。
何故って、アプリケーション・プログラムの開発環境が一般的だから。
iPhoneのアプリケーション・プログラムを開発するにはマックを買わなければならない。と言うことは、OSの動きから操作方法まであらゆることを一から勉強しなければならない。とてもそんなことやってられない。何しろ、我が社では開発者は私一人だから。
それに対して、Android端末は、アプリケーション・プログラムの開発環境は私のPCの中にも入っている。つまり、Windows系OSで可能だ。また、Mac OSやLinuxでも開発が可能。開発ツールは私も使い慣れているEclipse。開発言語はJAVA。我が社の作業票・移動票・注文書・納品三票などは全てこのJAVAで開発されている。
いずれは、我が社でもAndroid端末を営業や製造現場が使用するような時代が来ると思う。
普段から自分自身がiPod thuchを使っていてそれなりに満足はしているけど。でも、それは一ユーザーとしての立場だから。
開発者側となると話は別。
圧倒的にAndroid端末の方が良い。
何故って、アプリケーション・プログラムの開発環境が一般的だから。
iPhoneのアプリケーション・プログラムを開発するにはマックを買わなければならない。と言うことは、OSの動きから操作方法まであらゆることを一から勉強しなければならない。とてもそんなことやってられない。何しろ、我が社では開発者は私一人だから。
それに対して、Android端末は、アプリケーション・プログラムの開発環境は私のPCの中にも入っている。つまり、Windows系OSで可能だ。また、Mac OSやLinuxでも開発が可能。開発ツールは私も使い慣れているEclipse。開発言語はJAVA。我が社の作業票・移動票・注文書・納品三票などは全てこのJAVAで開発されている。
いずれは、我が社でもAndroid端末を営業や製造現場が使用するような時代が来ると思う。
2011年2月11日金曜日
EXCELのブックに定義してある名前を一括削除
ブックに定義してある名前を一括で削除する方法です。
塚原君が手作業で名前を数十個削除していて大変そうなのでネットでプログラムをみつけて手を加えたものです。
ネットで見つけたプログラムは、全部の名前が正しく定義されていれば問題なく動作するのですが、名前にセルの名前と同じ名前が定義されているとエラーが発生してしまい、プログラムが中断してしまいました。そこで、ON ERRORを追加して、回避するように追加しました。
Sub ClearAllNames()
On Error Resume Next 'この命令を追加し、エラーが発生したら次の命令を実行するようにした
Dim objName As Name
For Each objName In ActiveWorkbook.Names
objName.Delete
Next objName
End Sub
このプログラムの基本的な使い方はネットにありますので、私はここまでにしておきます。
例えば、こちら
http://questionbox.jp.msn.com/qa3028652.html
塚原君が手作業で名前を数十個削除していて大変そうなのでネットでプログラムをみつけて手を加えたものです。
ネットで見つけたプログラムは、全部の名前が正しく定義されていれば問題なく動作するのですが、名前にセルの名前と同じ名前が定義されているとエラーが発生してしまい、プログラムが中断してしまいました。そこで、ON ERRORを追加して、回避するように追加しました。
Sub ClearAllNames()
On Error Resume Next 'この命令を追加し、エラーが発生したら次の命令を実行するようにした
Dim objName As Name
For Each objName In ActiveWorkbook.Names
objName.Delete
Next objName
End Sub
このプログラムの基本的な使い方はネットにありますので、私はここまでにしておきます。
例えば、こちら
http://questionbox.jp.msn.com/qa3028652.html
2011年2月8日火曜日
確かにEXCELは超便利ツールではありますが。。。。。
この前、社長からEXCELを検証してくれと命ぜられた。
作成したのは以前のシステムの担当者。まぁ、コンピューターの事を知っている人間が作成したのだから検証するといっても大した手間でも無いと思っていたら大間違い。
最初に気付いたのがそのシート全体で数値の精度を決めていない。整数だけの計算ならば問題ないが、小数が入ってくる計算の場合、そのシート(システムと言うと堅苦しくなるが)全体で数値の精度を決めないと正確な計算結果が得られない。システムに携わっている人間とは思えないくらいひどい計算式だった。
また、時間を入力するようになっていたが、ユーザー独自の書式で値を入力させるようにしていたので、値がとんでもない値になっていた。これを普通に計算しようとすると、結果もとんでもない値が出てきてしまう。他にもいい加減な数式が多数有り、結局、検証ではなく、新規構築になってしまった。
でも、普通のユーザーはもっと何も考えていないかもしれない。EXCELはとても便利なツールだけど、一貫した考え方を持って作成しないと、とんでもない結果を引き出す可能性が大の諸刃の剣だ。実際、このEXCELを使っていた人からは、値を変えても結果が変わらないことが有り、これで良いのかなと思いながら使っていたと訊いたので、恐ろしいものだと思った。
これを読んでくれた人に対して、私からのアドバイス
小数を使うシートを作成する場合は、必ず数値の精度を決めてから作成に取りかかりましょう。例えば、○○の値は小数点第3位を四捨五入するとか、○○の値は小数点第2位を切り捨てとか、基本的な精度を決めましょう。EXCELは、1つのセルに値と書式の2つの情報を保持しています。例えば、1.2345という値を入れて、書式を数値にして、小数点以下の桁数を3桁に設定すると、1.235と表示されます。これはEXCELが自動的に値を小数点第4位を四捨五入してくれたからです。しかし、これは危険性をはらんでいます。表示の仕方次第で値の精度が変わってしまうからです。もし、誰かがセルの書式を標準に変えてしまったら、計算に使用される値は最初に入力した1.2345となってしまいます。こうならない為には、EXCELの関数を使って値の精度を決めましょう。四捨五入する場合はROUND関数、切り捨ての場合はROUNDDOWN、切り上げの場合はROUNDUPを使います。
書式
・四捨五入の場合、小数点第3位を四捨五入だったら、ROUND(値,2)、小数点第2位を四捨五入だったら、ROUND(値,1)
・切り捨ての場合、小数点第3位を切り捨てだったら、ROUNDDOWN(値,2)、小数点第2位を切り捨てだったらROUNDDOWN(値,1)
・切り上げの場合、小数点第3位を切り上げだったら、ROUNDUP(値,2)、小数点第2を切り上げだったらROUNDUP(値,1)
実際の値で説明すると
・1.2545を四捨五入の場合、小数点第3位を四捨五入だったら、ROUND(1.2545,2)=1.25、小数点第2位を四捨五入だったら、ROUND(1.2545,1)=1.3
・1.2545を切り捨ての場合、小数点第3位を切り捨てだったら、ROUNDDOWN(1.2545,2)=1.25、小数点第2位を切り捨てだったらROUNDDOWN(1.2545,1)=1.2
・1.2545を切り上げの場合、小数点第3位を切り上げだったら、ROUNDUP(1.2545,2)=1.26、小数点第2を切り上げだったらROUNDUP(1.2545,1)=1.3
知っておくと便利なのが、小数点以下を切り捨てのINT(値)。例えば、INT(1.23)=1、INT(1.9)=1。
時間の取り扱いも注意が必要です。ちょっと長文になるので時間についての解説は割愛します。
作成したのは以前のシステムの担当者。まぁ、コンピューターの事を知っている人間が作成したのだから検証するといっても大した手間でも無いと思っていたら大間違い。
最初に気付いたのがそのシート全体で数値の精度を決めていない。整数だけの計算ならば問題ないが、小数が入ってくる計算の場合、そのシート(システムと言うと堅苦しくなるが)全体で数値の精度を決めないと正確な計算結果が得られない。システムに携わっている人間とは思えないくらいひどい計算式だった。
また、時間を入力するようになっていたが、ユーザー独自の書式で値を入力させるようにしていたので、値がとんでもない値になっていた。これを普通に計算しようとすると、結果もとんでもない値が出てきてしまう。他にもいい加減な数式が多数有り、結局、検証ではなく、新規構築になってしまった。
でも、普通のユーザーはもっと何も考えていないかもしれない。EXCELはとても便利なツールだけど、一貫した考え方を持って作成しないと、とんでもない結果を引き出す可能性が大の諸刃の剣だ。実際、このEXCELを使っていた人からは、値を変えても結果が変わらないことが有り、これで良いのかなと思いながら使っていたと訊いたので、恐ろしいものだと思った。
これを読んでくれた人に対して、私からのアドバイス
小数を使うシートを作成する場合は、必ず数値の精度を決めてから作成に取りかかりましょう。例えば、○○の値は小数点第3位を四捨五入するとか、○○の値は小数点第2位を切り捨てとか、基本的な精度を決めましょう。EXCELは、1つのセルに値と書式の2つの情報を保持しています。例えば、1.2345という値を入れて、書式を数値にして、小数点以下の桁数を3桁に設定すると、1.235と表示されます。これはEXCELが自動的に値を小数点第4位を四捨五入してくれたからです。しかし、これは危険性をはらんでいます。表示の仕方次第で値の精度が変わってしまうからです。もし、誰かがセルの書式を標準に変えてしまったら、計算に使用される値は最初に入力した1.2345となってしまいます。こうならない為には、EXCELの関数を使って値の精度を決めましょう。四捨五入する場合はROUND関数、切り捨ての場合はROUNDDOWN、切り上げの場合はROUNDUPを使います。
書式
・四捨五入の場合、小数点第3位を四捨五入だったら、ROUND(値,2)、小数点第2位を四捨五入だったら、ROUND(値,1)
・切り捨ての場合、小数点第3位を切り捨てだったら、ROUNDDOWN(値,2)、小数点第2位を切り捨てだったらROUNDDOWN(値,1)
・切り上げの場合、小数点第3位を切り上げだったら、ROUNDUP(値,2)、小数点第2を切り上げだったらROUNDUP(値,1)
実際の値で説明すると
・1.2545を四捨五入の場合、小数点第3位を四捨五入だったら、ROUND(1.2545,2)=1.25、小数点第2位を四捨五入だったら、ROUND(1.2545,1)=1.3
・1.2545を切り捨ての場合、小数点第3位を切り捨てだったら、ROUNDDOWN(1.2545,2)=1.25、小数点第2位を切り捨てだったらROUNDDOWN(1.2545,1)=1.2
・1.2545を切り上げの場合、小数点第3位を切り上げだったら、ROUNDUP(1.2545,2)=1.26、小数点第2を切り上げだったらROUNDUP(1.2545,1)=1.3
知っておくと便利なのが、小数点以下を切り捨てのINT(値)。例えば、INT(1.23)=1、INT(1.9)=1。
時間の取り扱いも注意が必要です。ちょっと長文になるので時間についての解説は割愛します。
板金工場ネットワーク障害
2011/2/7 15時過ぎ 首藤君から板金工場でP-ViBaが見られないと第一報。
1) 事務所の私のPCから板金工場の全部のPCへexpingを使用してpingをしても応答が無い。個々の障害ではなく、基幹ネットワークの障害であることを確認。
2) 現場に駆けつけた首藤君からは板金工場のSW HUBの電源の再投入を行い、VDSLはLEDが点滅しているとの報告が有り、機器は正常に機能しているものと仮定。普通、異常な状態になったら、LEDが高速に点滅したり、点灯したままになる事が多い。
3) 首藤君にPCのIPアドレスを確認してもらったら、正規のIPアドレスではなく、169から始まる不正なIPアドレスだった。
4) SW HUBやVDSLのLEDが点滅していることから、一時的なネットワーク障害によりDHCPサーバーとの通信が長時間途切れ、IPアドレスのリリース期間が切れて、IPアドレスが不正なものになっているものと思い、IPアドレス再取得コマンドを実行してもらったが、それでも不正なIPアドレスのままだった。
5) 念の為、VDSLの電源を再投入してもらい、本館事務所のVDSLも電源を再投入したら正規のIPアドレスが割り振られ、PCが正常に機能した。
原因は、VDSLのどちらかの装置が異常な状態になったものと思われる。今までにこんな現象が発生したことはなかった。
本日、日本通信工販と打ち合わせをし、難航している資材事務所と板金工場間の無線LAN工事を一時保留し、代替方法として機械場のSW HUBから板金工場へSW HUBを使ってUTPケーブルを延長し、板金工場のSW HUB迄ネットワークを接続する方法をとることにした。工事は2月16日(水)に行う。ネットワークが開通後、無線LANの機器を初期化し、障害切り分け作業を実施することとした。無線LANが開通後、UTPケーブルは撤去する。
使用したコマンド
3) IPアドレス確認 ipconfig /all
4) DHCPサーパーよりIPアドレス再取得 ipconfig /renew
場合によってはIPアドレス解放 ipconfig /releaseを行った後の方が良い場合が有る。
1) 事務所の私のPCから板金工場の全部のPCへexpingを使用してpingをしても応答が無い。個々の障害ではなく、基幹ネットワークの障害であることを確認。
2) 現場に駆けつけた首藤君からは板金工場のSW HUBの電源の再投入を行い、VDSLはLEDが点滅しているとの報告が有り、機器は正常に機能しているものと仮定。普通、異常な状態になったら、LEDが高速に点滅したり、点灯したままになる事が多い。
3) 首藤君にPCのIPアドレスを確認してもらったら、正規のIPアドレスではなく、169から始まる不正なIPアドレスだった。
4) SW HUBやVDSLのLEDが点滅していることから、一時的なネットワーク障害によりDHCPサーバーとの通信が長時間途切れ、IPアドレスのリリース期間が切れて、IPアドレスが不正なものになっているものと思い、IPアドレス再取得コマンドを実行してもらったが、それでも不正なIPアドレスのままだった。
5) 念の為、VDSLの電源を再投入してもらい、本館事務所のVDSLも電源を再投入したら正規のIPアドレスが割り振られ、PCが正常に機能した。
原因は、VDSLのどちらかの装置が異常な状態になったものと思われる。今までにこんな現象が発生したことはなかった。
本日、日本通信工販と打ち合わせをし、難航している資材事務所と板金工場間の無線LAN工事を一時保留し、代替方法として機械場のSW HUBから板金工場へSW HUBを使ってUTPケーブルを延長し、板金工場のSW HUB迄ネットワークを接続する方法をとることにした。工事は2月16日(水)に行う。ネットワークが開通後、無線LANの機器を初期化し、障害切り分け作業を実施することとした。無線LANが開通後、UTPケーブルは撤去する。
使用したコマンド
3) IPアドレス確認 ipconfig /all
4) DHCPサーパーよりIPアドレス再取得 ipconfig /renew
場合によってはIPアドレス解放 ipconfig /releaseを行った後の方が良い場合が有る。
2011年2月6日日曜日
2011年1月25日火曜日
こんな画面に脅される!?自作自演のウイルス騒ぎに要注意
これらの画面は、全部偽物です。
こういった紛らわしい画面に騙されないように注意しましょうね。
騙されないためには、
・セキュリティ対策ソフトは、マイクロソフトの無料ソフトMicrosoft Security Essentialsを使いましょう。個人で使用する場合には無料です。購入する場合は、店で買うのが無難です。
・インストールしようとしているプログラムの世間での評判を自分で確かめましょう。
・悪意のあるプログラムではないと判断できた場合でも、プログラムをダウンロードする際は[保存]を選択してダウンロードし、ウイルス対策ソフトで検査してから開きましょう。
こういった紛らわしい画面に騙されないように注意しましょうね。
騙されないためには、
・セキュリティ対策ソフトは、マイクロソフトの無料ソフトMicrosoft Security Essentialsを使いましょう。個人で使用する場合には無料です。購入する場合は、店で買うのが無難です。
・インストールしようとしているプログラムの世間での評判を自分で確かめましょう。
・悪意のあるプログラムではないと判断できた場合でも、プログラムをダウンロードする際は[保存]を選択してダウンロードし、ウイルス対策ソフトで検査してから開きましょう。
2011年1月23日日曜日
2011年1月22日土曜日
あなたのパソコンのOSは何ですか?
ファイルを上書きした人から上書き前のファイルに戻したいと依頼を受けました。
WindowsXPだったらジ・エンドだったのですが、その人のパソコンのOSはWindows7だったのです。
Windows7には、「以前のバージョン」という機能が追加されています。この機能を使えば、誤って上書きしたファイルも上書き前のファイルに戻すことができます。
無事、上書き前のファイルに戻せて、めでたし、めでたしでした。
当社では、今後購入するパソコンに関しては、Windows7を導入して行きます。
あなたのパソコンのOSは何ですか?
WindowsXPだったらジ・エンドだったのですが、その人のパソコンのOSはWindows7だったのです。
Windows7には、「以前のバージョン」という機能が追加されています。この機能を使えば、誤って上書きしたファイルも上書き前のファイルに戻すことができます。
無事、上書き前のファイルに戻せて、めでたし、めでたしでした。
当社では、今後購入するパソコンに関しては、Windows7を導入して行きます。
あなたのパソコンのOSは何ですか?
2011年度期首棚卸し
もうじき、期首棚卸しの日がやってきます。
私が入社して今回で3回目(期中を含めると4回目)の棚卸しです。
今回は、棚卸しデータの精度を向上させるために1月から準備を始めています(工場だけですが)。
前回までの棚卸しを反省してみると、品番と実棚数の誤りが目立ちました。ひどいのは漏れていたものも有りました。
拠って、今回は品番の精度向上を図るため、棚に保管してある部品には、予め棚卸し荷札に品番付きバーコードを貼っておき、棚卸し時にはそこに実棚数を記入してもらう方法にする予定です。まだ、社長の許可をもらっていないので決定では有りませんが。
今日から、その作業を開始しました。材管の高山さんの所から始めましたが、2時間、部品の品番をバーコードハンディー機に入力し、エラーが有れば高山さんにチェックを依頼し、バーコードハンディー機に集まった品番は49点でした。2時間で49点なので、1日8時間やれば約200点。今年度の現場の棚卸し荷札の枚数は12,000点でしたから、1人でやって60日間。このままでは棚卸しには間に合いませんね。何か策を練らないといけませんね。
そうそう、部品の箱には図面を入れることにしました。今は図面を簡単に印刷できますし、なによりも部品と図面で照合できるので、品番の信頼度を向上させられますからね。
実際に現場に入ってみると色々と気付くことが有ります。
私が入社して今回で3回目(期中を含めると4回目)の棚卸しです。
今回は、棚卸しデータの精度を向上させるために1月から準備を始めています(工場だけですが)。
前回までの棚卸しを反省してみると、品番と実棚数の誤りが目立ちました。ひどいのは漏れていたものも有りました。
拠って、今回は品番の精度向上を図るため、棚に保管してある部品には、予め棚卸し荷札に品番付きバーコードを貼っておき、棚卸し時にはそこに実棚数を記入してもらう方法にする予定です。まだ、社長の許可をもらっていないので決定では有りませんが。
今日から、その作業を開始しました。材管の高山さんの所から始めましたが、2時間、部品の品番をバーコードハンディー機に入力し、エラーが有れば高山さんにチェックを依頼し、バーコードハンディー機に集まった品番は49点でした。2時間で49点なので、1日8時間やれば約200点。今年度の現場の棚卸し荷札の枚数は12,000点でしたから、1人でやって60日間。このままでは棚卸しには間に合いませんね。何か策を練らないといけませんね。
そうそう、部品の箱には図面を入れることにしました。今は図面を簡単に印刷できますし、なによりも部品と図面で照合できるので、品番の信頼度を向上させられますからね。
実際に現場に入ってみると色々と気付くことが有ります。
インターネットでFMを楽しむ
我が家にはFMのアンテナがありません。TVのアンテナもありません。なぜならばケーブルテレビだからです。でも、ケーブルテレビで放送されるFMは放送局が限られていて私が聴きたいFM東京が聴けないのです。(T_T)
しかし、今年からは聴けるようになりました。
radiko.jpの開局です。o(^o^)o!
http://radiko.jp/
これを聴くのに私が愛用しているのが、Radikool
タイマー録音も出来て便利。
http://www.ez-design.net/radikool/download.html
今も、FM東京のジェットストリームを聴きながら書いています。o(^o^)o!
でも、うちの社内では残念ながら聴く事ができません。なぜならば、うちの固定IPは地域が福島県になってしまうからです。ネットの私的利用は禁止ですが、何となく残念です。
でも、こうしてみるとネットの地域割り出しも結構いい加減なもんだという事が分かります。
しかし、今年からは聴けるようになりました。
radiko.jpの開局です。o(^o^)o!
http://radiko.jp/
これを聴くのに私が愛用しているのが、Radikool
タイマー録音も出来て便利。
http://www.ez-design.net/radikool/download.html
今も、FM東京のジェットストリームを聴きながら書いています。o(^o^)o!
でも、うちの社内では残念ながら聴く事ができません。なぜならば、うちの固定IPは地域が福島県になってしまうからです。ネットの私的利用は禁止ですが、何となく残念です。
でも、こうしてみるとネットの地域割り出しも結構いい加減なもんだという事が分かります。
2011年1月19日水曜日
ネットワーク障害発生について
本日、インターネットに繋がらない、図面閲覧システムで図面が見られない、P-ViBaが動かない等の障害が発生しました。
発生確認 7:59
影響範囲は、本社全PC。
影響現象はインターネットに繋がらない、図面閲覧システムで図面が見られない、P-ViBaが動かない等、広範囲の業務に影響確認。
基幹ルーターの再起動で復旧
東北営業所、福島営業所、九州営業所で商蔵奉行Vは正常に動作していることを確認。
全復旧確認 8:50
原因は、何らかの障害が基幹ルーターに発生した事。それによりDHCP機能が停止、IPアドレスの払い出しが停止し、各PCがIPアドレス払い出し待ち状態になった事によりネットワークに接続できず、今回の障害が顕在化した。
間中用メモ
C0224XPDのネットワークアイコンに「IPアドレス取得中」の表示を発見
近くのL2SWの動作確認し正常
S020123DでIEでブラウジングしようとしたらエラー
ping 192.168.0.1 レスポンス無し
R0001VPNの前面LEDは正常に動作している様に見える
R0001VPNの電源OFF/ON
ping 192.168.0.1 レスポンス有り
S020123DでIEでブラウジング正常
C0224XPDのネットワークアイコン正常復帰
全PCでT:の接続確認し未接続PCは再起動
全復旧確認
発生確認 7:59
影響範囲は、本社全PC。
影響現象はインターネットに繋がらない、図面閲覧システムで図面が見られない、P-ViBaが動かない等、広範囲の業務に影響確認。
基幹ルーターの再起動で復旧
東北営業所、福島営業所、九州営業所で商蔵奉行Vは正常に動作していることを確認。
全復旧確認 8:50
原因は、何らかの障害が基幹ルーターに発生した事。それによりDHCP機能が停止、IPアドレスの払い出しが停止し、各PCがIPアドレス払い出し待ち状態になった事によりネットワークに接続できず、今回の障害が顕在化した。
間中用メモ
C0224XPDのネットワークアイコンに「IPアドレス取得中」の表示を発見
近くのL2SWの動作確認し正常
S020123DでIEでブラウジングしようとしたらエラー
ping 192.168.0.1 レスポンス無し
R0001VPNの前面LEDは正常に動作している様に見える
R0001VPNの電源OFF/ON
ping 192.168.0.1 レスポンス有り
S020123DでIEでブラウジング正常
C0224XPDのネットワークアイコン正常復帰
全PCでT:の接続確認し未接続PCは再起動
全復旧確認
2011年1月18日火曜日
「 この画面が出たら要注意! 」 ~ 一向に減らないワンクリック請求の被害 ~
時々、私の友人・知人・近所・親戚・社員からワンクリック請求について相談を受けます。
ワンクリック請求は人ごとではないのです。非常に身近な事件です。
今回、IPA(独立行政法人 情報処理推進機構)からワンクリック請求について分かりやすい情報が公開されました。ワンクリック請求にあわない為にも以下のホームページを全部よく読んでください。
http://www.ipa.go.jp/security/topics/alert20080909.html
そして、それでも、ワンクリック請求にあってしまったら、焦らずに私まで連絡ください。
ワンクリック請求は人ごとではないのです。非常に身近な事件です。
今回、IPA(独立行政法人 情報処理推進機構)からワンクリック請求について分かりやすい情報が公開されました。ワンクリック請求にあわない為にも以下のホームページを全部よく読んでください。
http://www.ipa.go.jp/security/topics/alert20080909.html
そして、それでも、ワンクリック請求にあってしまったら、焦らずに私まで連絡ください。
2011年1月14日金曜日
板金工場 基幹ネットワークリプレイス
板金工場は、基幹ネットワークが本館事務所とVDSLで接続されているため品質が悪く且つ、ネットワーク速度が遅いため、伝送路のデータエラーやデータ遅延等によりプログラムのハングアップがよく発生している。その度に、PCを再起動したり、プログラムにデータを再入力したり、意味不明なエラーが発生して困惑したりと利用者は大変な迷惑を受けている。会社にとっても作業時間のロスである。これを改善するために、資材事務所と板金工場間をWLANで接続する工事が承認された。
本来は、光ファイバーで構築することが望ましいが、昨今の不景気のため設備投資額を抑制しなければならず、無線LANでの構築となった。しかし、逆にメリットも発生した。今回使用するWAPM-AG300NはWDSと同時に普通のAPとしても動作することが分かった。拠って、普通のAPとして動作させれば、WLANエリアが板金工場と資材事務所、場合によっては機械場にも広がる。PCの利便性が広がるということである。
本日、両方で使用できるように設定を行なった。後は、工事をしてWLANエリアがどの程度まで広いかを確認してみたい。
本来は、光ファイバーで構築することが望ましいが、昨今の不景気のため設備投資額を抑制しなければならず、無線LANでの構築となった。しかし、逆にメリットも発生した。今回使用するWAPM-AG300NはWDSと同時に普通のAPとしても動作することが分かった。拠って、普通のAPとして動作させれば、WLANエリアが板金工場と資材事務所、場合によっては機械場にも広がる。PCの利便性が広がるということである。
本日、両方で使用できるように設定を行なった。後は、工事をしてWLANエリアがどの程度まで広いかを確認してみたい。
2011年1月13日木曜日
タイムカード印刷プログラムの印字位置ずれby福永さん
プリンターをPX-B500からPX-B510へ変更したところ、タイムカードの向きが逆向きで且つ印字位置が数ミリずれていると報告が有った。
対処)
1) PX-B510でユーザー定義用紙を登録。タイムカードとして、90mm×186mm
タイムカード自体の寸法は86mm×186mmなのだが、余白が少ないと1頁に収まり切れなくなってしまうから。用紙サイズが大きくても印刷方向を逆向きにしているので問題なし。
2) PX-B510の印刷設定で、用紙種類は普通紙にした。ハガキだと印刷品質の詳細設定で1が選択できず、2だと速度が遅い。薬袋にしたら1を選択できたが、印字速度が少し遅い。普通紙にしたら印刷が出来て1も選択できて、印刷速度も速かった。
3) PX-B510の印刷設定で、用紙サイズに「タイムカード」を選択。
4) PX-B510の印刷設定で、印刷方向を180度回転にチェック。
5) タイムカード印刷プログラムのレポートの余白を、上11.01mm、下7mm、左4mm、右7mmに設定した。
6) 職員名の位置を右に5mmずらし、コントロールサイズを5mm縮めた。
画面キャプチャーしたものを、S:\その他\タイムカード印刷の設定.xlsとして保存した。
対処)
1) PX-B510でユーザー定義用紙を登録。タイムカードとして、90mm×186mm
タイムカード自体の寸法は86mm×186mmなのだが、余白が少ないと1頁に収まり切れなくなってしまうから。用紙サイズが大きくても印刷方向を逆向きにしているので問題なし。
2) PX-B510の印刷設定で、用紙種類は普通紙にした。ハガキだと印刷品質の詳細設定で1が選択できず、2だと速度が遅い。薬袋にしたら1を選択できたが、印字速度が少し遅い。普通紙にしたら印刷が出来て1も選択できて、印刷速度も速かった。
3) PX-B510の印刷設定で、用紙サイズに「タイムカード」を選択。
4) PX-B510の印刷設定で、印刷方向を180度回転にチェック。
5) タイムカード印刷プログラムのレポートの余白を、上11.01mm、下7mm、左4mm、右7mmに設定した。
6) 職員名の位置を右に5mmずらし、コントロールサイズを5mm縮めた。
画面キャプチャーしたものを、S:\その他\タイムカード印刷の設定.xlsとして保存した。
2011年1月12日水曜日
全社電話網再構築
現在、IT戦略部では全社電話網再構築計画を実行中です。
新しい電話網の稼働は2011年3月1日に本社、同月5日(土)に東北営業所、翌週末に福島営業所と九州営業所を計画しています。
新しい電話網になることにより以下のメリットを享受可能です。
1) 月々の電話料金を約12万円削減(純額)。本社から日本全国固定電話へは3分7.14円!!(税込み)。その他の拠点からは3分8.4円(税込み)。但し、携帯電話への通話料は普通の料金。
2) 全拠点間(携帯電話も含む)が3桁の内線番号でダイヤル可能。勿論、通話料は無料!!。心置きなく議論してください。携帯電話を持っている人には、どこにいても電話がつながります。
3) 女性にうれしいお知らせ。個人毎にダイヤルイン番号を割り振り、電話の取り次ぎ業務削減。仕事に集中できます。
4) 本社と東北営業所については、PHSも利用可能(台数制限有り・希望者のみ)。
5) 受けた電話を他拠点に転送可能。例えば、福島営業所で受けた電話を本社の技術者に転送等。
6) 録音機能により、クレーム等を録音し、上司へ転送も可能。
但し、携帯電話はドコモからAUに替わります。MNPですので電話番号はそのままですが、メールアドレスだけは変更が必要です。気になる通話エリアについては、ドコモとAUではそれ程違いが無い様です。
質問があれば、コメントへ。
新しい電話網の稼働は2011年3月1日に本社、同月5日(土)に東北営業所、翌週末に福島営業所と九州営業所を計画しています。
新しい電話網になることにより以下のメリットを享受可能です。
1) 月々の電話料金を約12万円削減(純額)。本社から日本全国固定電話へは3分7.14円!!(税込み)。その他の拠点からは3分8.4円(税込み)。但し、携帯電話への通話料は普通の料金。
2) 全拠点間(携帯電話も含む)が3桁の内線番号でダイヤル可能。勿論、通話料は無料!!。心置きなく議論してください。携帯電話を持っている人には、どこにいても電話がつながります。
3) 女性にうれしいお知らせ。個人毎にダイヤルイン番号を割り振り、電話の取り次ぎ業務削減。仕事に集中できます。
4) 本社と東北営業所については、PHSも利用可能(台数制限有り・希望者のみ)。
5) 受けた電話を他拠点に転送可能。例えば、福島営業所で受けた電話を本社の技術者に転送等。
6) 録音機能により、クレーム等を録音し、上司へ転送も可能。
但し、携帯電話はドコモからAUに替わります。MNPですので電話番号はそのままですが、メールアドレスだけは変更が必要です。気になる通話エリアについては、ドコモとAUではそれ程違いが無い様です。
質問があれば、コメントへ。
登録:
投稿 (Atom)