pc4beginnerの日記 はてなブログ版

はてなダイアリーで書いていたブログの移行です。

WindowsUpdateの適用でエラー(ActiveDirectory系)

仕事中に日本語の文献が見つからず苦労したので、ここでエントリを挙げておきます。

WindowsServerで下記のアップデートを行った際、エラーが出た場合は該当のサーバがActiveDirectoryのドメインコントローラ機能を有しているか確認してください。

MS09-018(KB971055)
MS08-035(KB953235)
MS08-003(KB946538)

以下のリンク先を読む限り、ドメインコントローラ(DC)機能が無いと以下のようなエラーメッセージを吐き出すようです。

http://social.technet.microsoft.com/Forums/en-US/winserversecurity/thread/b6b1e943-7127-449b-b072-dc5fb02c204d/

[KBXXXXXX.log]
1.593: ================================================================================
1.593: YYYY/MM/DD hh:mm:ss.XXX (local)
1.593: d:\XXXXXXXXXXXXXXXXXXXXXXXXXX\update\update.exe (version X.X.X.X)
1.609: Hotfix started with following command line:
1.625: In Function GetBuildType, line 1170, RegQueryValueEx failed with error 0x2
1.640: SYSTEM\CurrentControlSet\Services\NTDS is not Present
1.640: Condition Check for Line 1 of PreRequisite returned FALSE
1.640: ReadStringFromInf: UpdSpGetLineText failed: 0xe0000102
1.640: KB969805 セットアップでエラーが発生しました: KBXXXXXX のインストールのための必要条件がひとつ以上失敗したので、セットアップを続行できません。詳細については、ログ ファイル c:\windows\KBXXXXXX.log を確認してください。
1.656: ReadStringFromInf: UpdSpGetLineText failed: 0xe0000102
1.656: KBXXXXXX のインストールのための必要条件がひとつ以上失敗したので、セットアップを続行できません。詳細については、ログ ファイル c:\windows\KBXXXXXX.log を確認してください。
39.750: Message displayed to the user: KB969805 のインストールのための必要条件がひとつ以上失敗したので、セットアップを続行できません。詳細については、ログ ファイル c:\windows\KBXXXXXX.log を確認してください。
39.750: User Input: OK
39.750: Update.exe extended error code = 0xf0f4
39.750: Update.exe return code was masked to 0x643 for MSI custom action compliance.

※内容は一部マスキングをしています

肝はここ。

SYSTEM\CurrentControlSet\Services\NTDS is not Present

リンク先で回答をしているMicroSoftのスタッフの回答で、DC機能を持っていないWindowsServerではこのディレクトリが無いから適用対象外だと思うよ、と書いてあります。


ちなみに下記についても影響があるかなと思ったらこれはインストールできました。

MS07-039(KB926122)
Windows Active Directory脆弱性により、リモートでコードが実行される


というわけで、今日は情報の共有エントリでした。
おしまい。

ASPはVBじゃないですよ、と>システム営業の人たちへ

何度言っても自社の営業に理解されないので、ちょっとまとめた物をエントリしておきます。ちなみにここでのVBはVB6.0でVB.netではありません。ええ、まだまだVB6.0生き残ってますよ。


で。


システム営業の方が良く勘違いされるのが、VBが出来ればASPも出来るという都市伝説。即戦力という触れ込みでVBオンリーの経歴書を渡されるとガッカリします。


ASP(ActiveServerPages)では、VBとよく似たスクリプト言語であるVBScriptが使われます。そしてこのスクリプト言語から呼び出すダイナミックリンクライブラリ (dll)はVBで作成しますので、ここはドンピシャです。VBオンリー技術者で問題無くクリアできるのはここまで。


この他にJavaScriptというプログラムの技術が必要になります。画面上のちょっとした動作に対する反応はこれで作成します。これも使えないと役立たずです。プログラムの基礎を学校などで学んでる方なら、まぁ問題はない場合が多いのですが。


そしてASPはWebの仕組みで動く技術なので、この知識が無い人は仕様書を読みこなしてプログラムする「プログラマー」はおろか言われたとおりにプログラムする「コーダー」すら難しい。


なぜなら、言われたとおりにプログラムを書こうとしても、そのプログラムがどのように動いているのか理解していないので、ちょっとしたテストすらままならないのです。もちろん出来る人もいますが、そんなのは例外中の例外です。


「そんなもの現場に入ってから学べるのでは?」


甘いです。


お気持ちは分かりますしその通りとは思いますが、私の見た限りwebの仕組みをすんなり理解した人はそういません。なので即戦力としては売れないのです。むしろVBオンリー技術者より、JavaでのWeb開発経験がある方のほうが習熟は早い。単価的にムリですが。そこを理解して欲しいのです。貴方たちの即戦力と、実際の即戦力はまったく違いますよ、と言う事を。


あと、変わったところでは.netだけのエンジニアもNGだった事。ASPはWeb周りの統合開発環境が.netほど整っていないため、テキストエディタでの開発作業が結構なウェイトを占めます。なのでプログラムを書いている間、間違った書き方や問題となる箇所を教えてくれません。動かしては試し、試してはソースとにらめっこという作業では経験がモノを言います。便利な統合開発環境に頼り、その経験を積んでいないエンジニアではこれが出来ない人がいる。


.netが上位だからといって使えるわけではないのです。webの技術なのに。


これらの問題をどうするか、と言う話抜きで


「即戦力なんだから現場に紹介してよ」


と言われても、責任が持てないので紹介できません。


で、苦言。
いい加減この言葉でお茶を濁すのはやめましょう。


「いや、技術の勉強もしなきゃいけないと思うんだけどね」


何年も同じ事を言っているのに出来ないのですから、技術の部分についてはこちらの言葉を聞いて下さい。


私は営業ではありませんので、最終的な金の話には口出しをしません。それは貴方たちが営業という「プロ」である事を尊重しているからです。ただし技術については少なくとも「プロ」として活動していて、貴方たちより知識があると自負しています。それだけは分かって欲しいのです。


・・・なんか前にも同じような締めのエントリを書いたような。

JAVASCRIPTを使う前にDOMを理解しよう+太陽光発電は高いのよ(おまけ)

今日は太陽光発電を推進するためには設置コスト辺りの発電量を現行の7倍ぐらいまで上げないと採算ベースに乗らないのではないかというエントリをあげようと思っていたのですが、あまりにも技術系のエントリが少ないので仕事でちょっと思った事を書いておきます。
ちなみに休耕田を利用して太陽光発電をされている方、1億かけて年間の売電価格は150万。家庭ではボリュームによるコストダウンが見込めないのでもっとこの差は広がるはず。しかも維持コストを考えると元が取れるなんて口がさけても言えないし。そこにこそ技術革新の力が必要なのかなと。昨日のエントリメンテナンス不良の自転車達でもふれたように、全ての機械は維持コストを無視してはいけないのです。


と、結局エントリ一本分ぐらいの密度の前置きをしつつ、今日の本題へ。


ここんとこJAVASCRIPTを毎日いじっているのですが、元来飲み込みが悪い人間なので日々の進化はカメの歩みです。毎日転職という逃げがアタマにちらつきながら仕事をしています。泣きそう。


で、ですね。JAVASCRIPTド素人が感じた事。それはWebでJAVASCRIPTを使う前に、まずDOMについて勉強しておかなければ理解が難しにという事。


JAVASCRIPTwebブラウザのアクション(ボタンのクリックなど)を引き金としてイベントを発生させる事が出来る便利な仕組みです。しかしそのイベントを拾うにしても、発生させるにしても、DOMという仕組みを理解していないと何も出来ません。
というのも、JAVASCRIPTにさせる作業は


「画面上のAで何かを実行されたら、自動的にBを行う」


という命令が殆どです。そのAやBを指定するのにDOMを使います。
ちなみにDOMとは、Document Object Modelの略でHTMLやXML文書を取り扱うために使われる仕組みです。詳しくは以下をどうぞ。

DOMとは
http://www.ajaxtower.jp/js/dom/index1.html


いくら命令の方法を憶えても、命令を受け取る場所や実行結果を反映させる場所が指定できなければJAVASCRIPTを動かせません。しかしこのDOMがごく自然にJAVASCRIPTのプログラムで使われるものですから、ちゃんと勉強してない人間がプログラムを読んで、分からないDOMの命令についてググっても「JAVASCRIPT」で検索をかけてしまうので、中々きちんと説明されたサイトがヒットしないのですよね。


というわけで、まずは先述のリンクを呼んでからJAVASCRIPTのソースを読むと良いですよ、と。


以下のリンクも併せて読むと良いかも。

■DOMから始めるJavaScriptモダン・スクリプティング
http://itpro.nikkeibp.co.jp/article/COLUMN/20070626/275913/

JavaScript DOM リファレンス
http://www.openspc2.org/JavaScript/JavaScript_DOM/

JavaScriptWikipedia
http://ja.wikipedia.org/wiki/JavaScript

JavaScriptリファレンス(オブジェクト別)
http://www.htmq.com/js/index.shtml

■とほほのJavaScriptリファレンス ※このサイトは必須!
http://www.tohoho-web.com/js/index.htm


ただしDOMをまずやれ!と感じたのはASP(Active Server Pages)のソース読んでいた時に感じた事なので、Ajaxや最新の.net等では状況が違うかも、と言い訳を入れておきます。


今日はそんな感じで。

Microsoft Access 2007以降ではデータベースウィンドウが廃止&ナビゲーション ウィンドウに変更

※参考リンク
http://office.microsoft.com/ja-jp/access-help/HA001213875.aspx#BM1

ちょいとAccess2007を使う機会があったのですが、Office2007以降で導入されたリボンのUIと併せてAccess2003であった「データベースウィンドウ」が「ナビゲーション ウィンドウ」という機能に変わってしまい見つけられなかったので備忘メモ※おそらくAccess2010でも同じでしょう。

さて、この機能は参考URLではデフォルト設定となっていると書いてありますが、Access2003が入っている状態で追加インストールしたら表示されてなかったです。表示されてない場合には以下の手順で設定します。

1, Microsoft Office ボタンをクリックし、Access のオプションボタンをクリックします。

2, Access のオプションダイアログ ボックスが表示されるので、「カレント データベース」をクリックして「ナビゲーション」の「ナビゲーション ウィンドウを表示する」チェック ボックスにチェックします。

3, 上記設定後、Accessを再起動すると画面左側にナビゲーションウィンドウが表示されます。

そんな感じで。

Windows7 64bitではEvernote 4.x系が動かない→対処法。

備忘メモ。

先日買ったTOSHIBA QOSMIO D710にEvernoteをインストールしたら起動しない。

おかしいと思って、インストールされているC:\Program Files (x86)\Evernoteを開いてみたら、中にあるはずの「Evernote3.5」フォルダがなくてショートカットになってしまっていた。「Evernote」というフォルダは作られてるが、その中にEvernoteの実行ファイルが入ってない状態だった。

以下は推測だけど、原因はEvernote 4.x系のインストーラでは無いかと思う。Windows7 64bit版は使い始めたばかりでよくわかっていないけど、アプリの実行プログラムが入っているフォルダが旧来の「Program Files」だけでなく「Program Files (x86)」が追加されていて、32bitのアプリはここに入ってると思われる。その際、インストール先を全自動で行ってる4.x系はうまくいかないのではないかと。

どこかに実行ファイルがあれば直接叩けば動くかな?と思い探してみたけど無さそうなので、インストールに完全に失敗しているらしい<ちゃんとどこかに入るよ、ということであればゴメンナサイ。

以下、対処方法。

4.x系は削除して、3.5系の最新版をインストールすることで使えるようになります。3.5系のインストーラはインストール先フォルダを指定できるため、パスがうまく指定できたみたい。

というわけで、Windows 7 64bitを使ってる人でEvernoteが動かない人は古いバージョンを使ってみましょう。ダウンロードページの下部にこっそりとおいてありますよ(2011/02/22現在)。

そんなかんじで。

Eclipse(Windows版)の日本語化 - Pleiadesプラグイン

※当エントリは以下のリンクを参考に書きました。
 http://www.rubylife.jp/aptana/japan/
 こちらはAptana Studioのstand-alone版をベースとした記事になっています。

※最終更新 2011/02/04

開発のエントリでUbuntu上にEclipseを構築していますが、実際にはWindowsにもインストールをしています。そんな時先に記した日本語化の情報を見つけたのですが、ベースがAptana Studioのスタンドアロン版だったのでこれをEclipseプラグイン版に読み替えたエントリを載せておきます。

■ダウンロード

・下記のURLを開きます。
 http://mergedoc.sourceforge.jp/

・「ダウンロード」>「Pleiades 本体」よりダウンロードを行います。
 ここでは「1.3.2」の安定版をダウンロードします。

・ダウンロードが開始されますので、任意の場所に保存します。

■インストール

・ダウンロードした圧縮ファイルを解凍します。
 ここではデスクトップ上に解凍しました。

・インストールされているEclipseのバックアップを取っておきましょう。
 失敗なんかしない、という方はこの作業は不要です
 (私はそう言って何度も泣きを見ていますが)。

・解凍したフォルダ内の「features」と「plugins」2つのサブフォルダを、
 Eclipseのフォルダにコピーします。
 私はC:\usr\bin\eclipseEclipseを置いているので、ここにコピーします。

 その際、「features」と「plugins」の2つのサブフォルダに
 「jp.sourceforge.mergedoc.pleiades
 というフォルダが含まれていないことを確認して下さい。

 これが含まれている場合には既に日本語化されているか、もしくは 他のプラグイン
日本語化されている可能性が有ります。上書きしてしまうと問題が出る可能性が有るので
 以降の作業を行う前にこの2つのフォルダをバックアップしておきましょう。

 なおコピー時に上書き警告が表示されますが、そのまま継続します。

■設定ファイルの修正

・最後に「Eclipse.ini」の修正を行います。「Eclipse.ini」はEclipseがインストール
 されているフォルダ内にあります。私の場合はC:\usr\bin\eclipseEclipseを置いているので
 この中にありました。

 これをテキストエディタで開きます。

・ファイルの内容はプラグインの導入等で更新されますが、私の場合はインストール後
 Aptana Studioのプラグインを追加した状態で以下のようになっていました。

  • startup

plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar

    • launcher.library

plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810

  • showsplash

org.eclipse.platform

    • launcher.XXMaxPermSize

256m

    • launcher.defaultAction

openFile

  • vmargs
  • Xms40m
  • Xmx384m


 この末尾に
 「-javaagent:plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar」
 の行を追加します。私の場合では以下のようになります。

  • startup

plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar

    • launcher.library

plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810

  • showsplash

org.eclipse.platform

    • launcher.XXMaxPermSize

256m

    • launcher.defaultAction

openFile

■確認

・設定後、Eclipseを起動して日本語化されていることを確認します。
 反映されているとこんな感じです。

 もし反映されていない場合はEclipseを再起動して、設定ファイルをもう一度読み込ませて
 みましょう。それでも変わってない場合は、プラグインファイルのインストールか
 設定ファイルの保存がうまくいってない可能性が有ります。
 再度インストール作業を行って確認してみましょう。

おしまい。

■おまけ

ちなみに日本語化しちゃうと、ネット上にある情報と突き合わせできない可能性が有ります。というのも日本語化しなくても使える人もいるので、そんな時は上記の作業を遡って穎悟環境に戻してね。

そんな感じで。