12 | 2007/01 |  02

  1. 無料サーバー

User forum-FC2BLOG-Info-Edit Template-Post-Edit-Upload-LogOut

CSSやJavascript自習の苦闘史を綴っていきたい。恐縮ですがJavascriptを有効にしてご覧ください。
2005年12月から社会問題も掲載!


UBCD4Winの各種Plug-inをBartPEに組み込む方法(4)

今度はExplore&IEをshellとして一本化したbuildに挑戦した

shell:nu2menu一本化buildがひとまず完成したので、今度はExplore&IEをshellとして一本化したbuildに挑戦した。

まず、沢山のアプリケーションのショートカットファイルを作成し、かつそれぞれのショートカットをExplore&IE shellに組み込まねばならない。

次に、nu2menuを無効化しなければならない。全てのnu2menuへのappendXMLファイルにおいて、それらを1つ1つ無効化するのは膨大な手間が掛かるが、幸い一括してnu2menuを無効化するプラグイン「Null2menu」があるので、これを利用させて貰った。(DEKOのじゃんくぼっくす。

プラグインにおいて行うべき作業は以上の通りであり、後は目的に沿って各種プラグインの有効/無効を設定してbuildするだけである。

その結果は...

そしてそれはひとまず完成した。一発のbuildで意図したとおりのスタートメニューになったので、感慨は一塩であった。

メニューアイテムに適切なfaviconが表示されないとか、登録したアプリが起動しないとか、細部では調整すべき箇所が多々あるものの、Explorer&IEシェルへの一本化という点においては、全く問題なく完成したことが確認できたのである。\(^O^)/

昨年末からの一ヶ月間の労苦がここに実を結んだことを、一人噛みしめつつ喜びに浸ろうと思う。

以下にひとまず完成した「UBCD4Win Ver3.03プラグイン(ドライバVer1.9含む)を沢山取り込んで大幅に補強し、かつnu2menuを無効化してExplorer&IEシェルへの一本化を図ったBartPE」のスクリーンショットを、VirtualPC上で取得し、1つの記念碑として掲載しておくことにしたい。

なお、これらのショットはあくまでもスタートメニューへのアイテム登録が意図したとおりになったことを示すためのものであり、favicon、アイテム配置の整合性等々改善すべき点が多々あることは承知した上で、ひとまずの"Explorer&IEシェルへの一本化"完成記念としての画像に過ぎないことを断っておかねば不親切になるだろう。

また、作成したアイテムにおいてアルファベットが全て大文字になってしまうのは、buildに使ったmkisofs.exeの仕様だ。流石に見にくいのでbuild方法を変えて大文字と小文字の混在フォーマットに変更しようと考えている。

まずnu2menuに倣って情報アイテムを追加した。これらはnu2menuそのままに各アイテムを作成しただけであり、何らかの新規の情報は盛り込んでいない。近い将来、感謝を意を込めてここにお世話になったサイトへのショートカットを掲載したいと考えている。

プログラムメニューの展開の様である。オリジナル部分は上部半分の大文字アルファベット部分である。全て大文字になってしまうことは近い将来改善する予定。なおデスクトップ上にlhazへのショートカットを置き、活用に備えた。

Applications項目を展開した図。IrfanViewのアプリ本体とヘルプへのショートカットを登録したことが分かる。その他使いそうなアプリを登録した。今後随時追加する予定。

UBCDから借用してきた各種 DISK Tools アプリへのショートカット展開の様である。様々なそして根源的なアプリが登録されているのに驚く。活用する機会がないことを願いたい(苦笑)。

UBCD4Winの各種Plug-inをBartPEに組み込む方法(3)

シェルをnu2menuに一本化するビルドを行った。

UBCDに搭載されている沢山のアプリと独自に組み込みたいアプリを1つのシェル上から利用出来るようにするため、まず、nu2menu上でのリストアップを試みてみた。

しかし、そのためにはUBCDのplug-inにおけるxmlファイルを加工しなければならない。何故ならば、type="popup"がそれぞれのアプリ毎に記述されており、素のママでビルドするとアプリの数だけのpopup項目がリストアップされてしまうためだ。

ところで、UBCDを素のママでビルドするとこのpopup重複は発生しないから、UBCD内蔵Builderは重複を解消するプログラムを組み込んでいるのだろう、と推測し解明を試みたが、結局popup重複を解消している方法は分からなかった。

そこで仕方なく、意を決してUBCDに登録されているアプリのxmlファイルを一々加工することにした。具体的には、新規に作成したxmlファイル(popupItems_nu2menu.xml)内でpopup項目の登録を一括して行い、各アプリのxmlファイル内のpopup行を全てコメントアウトした。作成した popup 項目登録用の xml を nu2menu に組み込むinfファイル(popupItem.inf)を同時に作成したことは言うまでもない。

そのxmlファイルとinfファイルは以下のようになっている。

以上のplug-inファイルを作成した上で、次に日本語環境下のシェルを無効に!

更に、日本語環境下のシェルを無効にしなければ意味がないので、日本語表示に係るプラグインは有効にしたまま、シェルに関するプラグインを全て無効にした。ここに無効にしたプラグインは以下の通りである。

  • Explorer&IE for XPSP2
  • PeGina(Enable Shutdown Dialog)
  • シェル エクスプローラ
  • ショートカット組み込みプラグイン Ver.1.00(独自作成)

以上の結果完成した、UBCD補強+nu2menuオンリー版のBartPEのスクリーンショットは以下の通り。

日本語シェルは不使用にしたので、当然スタートボタンはPEBuilderデフォルト画像のgo画像であり、タスクバーに相当するバーもなく、更にPEBuilderではデスクトップ上に何もアイコンを置かない設定だから、Desktopには何もアイコンはない。

(それぞれの画像をクリックすると原寸大画像が別窓で表示されます)

PEBuilderに関する諸情報

Disk操作のための各種アプリ

各種アクセサリ

各種一般アプリケーション

各種バックアップアプリ

各種診断アプリ

ネットワーク設定用各種アプリ

ハードディスクに関するアプリ

上記の結果でひとまず目的は達した。

序でにAcronis True Image Homeも組み込んだし、苦節一週間にして、レスキューCDとして必要にして十分な機能を盛り込んだBartPEが完成した。しかし、まだ道半ばであり、次に行うべきはExproler+IEシェル上で、同一内容のスタートメニューを表示させるビルドである。

今度はnu2menuを一切不使用にして、各ソフトのショートカット一覧を作成して、スタートボタンからPrograms → popup項目 →各アプリ起動項目 と言う構成のスタートメニューを作成することになる。

UBCD4Winの各種Plug-inをBartPEに組み込む方法(2)

日本語標準スタイルのBartPEにUBCDのPlug-inを組み込む

既にそれには成功した。しかし、いくつかのアプリを組み込む過程で、各ソフト毎に一つ一つスタートメニュー項目をinfファイルに記述し登録するのは効率的ではないことに気がついた。

まず、しっかりと抑えねばならないことはBartPE日本語版のスタートメニューにアプリを登録することは、アプリそのものの起動のために、programフォルダ内にアプリを登録することとは全く無関係であることだ。そのことを理解すれば、スタートメニューの構築をそれぞれのアプリ毎に行う必要はない。

例えばPlug-inフォルダ内に、「ShortCut」フォルダを新規に作成し、分かりやすくするためにアプリ毎にフォルダを作成して各ショートカットファイルを格納し、併せて各アプリのスタートメニュへのショートカットファイル登録のためのinfファイルを作成すればよいのだ。具体的には次のようにすればよい。

以上を組み込んだBartPEは次のようなスタートメニューになる。

しかし問題が・・。UBCDのpluginにリストアップされている沢山のアプリが全く表示されない。

苦労して「スタートメニュー → Programsフォルダ」内の登録アプリケーションをうまく構成出来たものの、UBCDに沢山組み込まれている有益なアプリケーションが、全く表示されない。

考えてみればそれは当然のことで、それらのショートカットを「@ProfilesDir@\All Users\Start Menu\Programs」に登録しなければならないのに、それを行っていないからだ。元々、UBCD 内の各種アプリは nu2menu に Append されるようになっており、起動した BartPE のマイコンピュータから BartPE ドライブをクリックすれば、nu2menu シェルが起動し、そこには UBCD から複写し利用するように設定したアプリケーションが沢山表示される。だから、確かにシェルを切り替えれば UBCD に登録されている沢山のアプリを利用することは可能である。

しかし、利用の便を考えると一々シェルを切り替えるのはいかにも面倒だ。つまり一つのシェル上で全てのアプリケーションが利用できるようにしなければ、使い勝手は悪くて堪らない。そこでこの事態を改善するには、シェルを nu2menu に一本化するか、あるいは日本語環境下のエクスプローラをベースとしたシェルに統合するか、いずれかの策を講じるしかない。次にはそれにチャレンジしてみよう。

UBCD4Winの各種Plug-inをBartPEに組み込む方法(1)

日本語表示可能な標準スタイルのBartPEの構造を知らねばならない

日本語表示可能な標準的Plug-inとして次のものが基本となっているらしい。

Japanese Language、fix_net、Explorer&IE(for XPSP2)、z_PeGina(Enable Shutdown Dialog)、winlogon (リソース制限突破)、スタートアップグループ、mmc。これらを組み込むことにより下図のようなBartPEが出来上がるが、ここにおいて各種アプリの組み込みは Explorer&IE(for XPSP2) をベースに行うことになるので、そのPlug-in infファイルの内容と仕組みを知る必要がある。(以下この基本的な日本語使用可能なBartPEを「BartPE日本語版」と略称)

My BartPE日本語版のスタートメニュー展開図

上図の「秀丸」のように「スタートメニュー → プログラム → AAAAAA → 各種アプリ」と辿ってアプリケーションを起動できるよう、UBCD4Winの各種Plug-in設定ファイルを書き換えれば良い。そのためには上図の秀丸のPlug-in設定ファイルの仕組み、内容、構造を解明し、それに倣って UBCD4Win に付属している100種類以上のアプリケーションから使いそうなものをセレクトして、infファイル等を全て書き換えればよいことになる。そうすれば、「スタートメニュー → プログラム → AAAAAA → 各種アプリ」と辿るインターフェースを実現してそれらのアプリを使えることになるだろう。

以上の見通しの元にこれから随時作業を進め、マイ"UBCDターボ"BartPEを作ろうと思う。

BartPE日本語版にUBCD4WinのPlug-inを加える。

「スタートメニュー → プログラム」へのAAAAAA項目登録は、「[WinntDirectories]セッションにおいて「a="@ProfilesDir@\All Users\Start Menu\Programs\AAAAAA",3」とし、その中に登録するBBBBBBアプリへのショートカットを、[SourceDisksFiles]セッションにおいて、「BBBBBB.lnk=a,,1」(複数項目の登録の場合には必要な項目を複数行記述する)と記述すればよい。(a は Bart's PE Builder における 動的なディレクトリイID)なお、以上のことは(結果から見れば当然のことであるが)、 Explorer&IE(for XPSP2) ヘルプファイル PEHelp_ExpIE.html に簡潔に説明されていた。

例えば、UBCD4winに梱包されているFireFoxPlug-inを、BartPE日本語版に組み込むにはinfファイルの一部を次のように変えればよいはずだ。具体的には、UBCD4Winのpluginフォルダ内のFireFoxフォルダを、フォルダ毎BratPE pluginフォルダ内に複写してから、FireFoxinfファイルに次の変更を加えればよいはずだ。

【UBCDPlug-in デフォルトinfファイル】
[WinntDirectories]
	a="Programs\Firefox",2
[SourceDisksFolders]
	files=a
【BartPE日本語版に組み込むための変更後 infファイル】
[WinntDirectories]
	a="Programs\Firefox",2
;↓追加行
	b="@ProfilesDir@\All Users\Start Menu\Programs\Appli-A",3
[SourceDisksFolders]
	files=a
;↓追加行(2行)
[SourceDisksFiles]
	FireFox.lnk=b,,1

以上の結果スタートメニュー → プログラム → Appli-A と辿るとその中に「FireFox」へのショートカットが存在することになる。

ここで、リンクファイルが問題になる

マイPCに存在してないファイルへのショートカットをどうやって作成するのか、次にそれが問題になる。それは通常の作成方法では作れないからである。

ここでまたしても新たな問題に直面した訳だが、「必ずや架空のショートカットファイルを作るソフトがあるに違いない」、と確信してネット検索を試みた結果、やはりそれは存在した!感謝!

そのソフトはmk_shcut ショートカット作成。そのものずばりのソフト名で使い方も極めて分かりやすい。このソフトのお陰で簡単に*.lnkファイルを作成することが出来、画竜点睛の最終作業を終えたのであった。

こうしてやっと、BartPE日本語版の独自拡張にひとまず成功したのである。

UBCD4Win(UltimateBootCD)をビルドしてみた

Ultimate Boot CD for Windows Version 3.03

標記ソフトの Released:1/4/07 最新版をダウンロードし、BartPEと組み合わせようとしてみた。PC Japan2005年12月号に記載された『PE Builder+UBCD4Winで作る超多機能レスキューCD』を読んで、チャレンジしようと思ったからである。

この記事は1年以上も前のものなので、"分進秒歩"のIT界では一昔前のことであり、果たして記事の記述通りに履行できるか定かではなかったが、とりあえず記事のママに「BartPEにUBCDを組み込む」作業を行い、結果をVirtualPCで確認してみた。

build作業中エラーは出なかったし、VlPC上でも問題なく起動を始めてくれたときには、おっ!成功したかな?!と小喜びした。事前にBartPEのpluginフォルダからUBCDのpluginフォルダに自分が必要と思われるPlug-inファイルを追加しておいたのだが、それも問題なく組み込んでくれたかな?と期待しながらVlPC上に展開しているBartPEを調べたのである。

すると、UBCDに入っている筈の沢山のアプリがスタート→プログラムと辿っても全くリストアップされない。そこにあるのは昨日迄に完成したBartPEに盛り込まれたアプリだけであり、Ultimateならぬ「Uso」BCDになってしまったのだ(苦笑)。

その原因はいくつかあるが、確実に言えることは1年前と異なりUBCD4Winが単独でビルトアップするべきアプリケーションとして配布されていることにあり、それが判明したのは上述したの作業後であった。

そもそも展開した UBCD4Win には UBCD4WinBuilder.exe が同梱されており、BartPE でビルトする前にこれは何かな?と疑問に思った。上記の失敗作業を終えてから改めて UBCD4Win サイトをよく調べてみたら、このbuilderを使ってビルトアップするように書かれているではないか! しかもご丁寧なことに、UBCD4Winのインストール時点でインストール先のフォルダが空であるかどうかをチェックし、何かファイルがあるとUBCD4WinBuilder.exeがインストール先フォルダに展開されないという念の入れようなのだ(これまでの UBCD4Win のインストールは、偶々PC Japanの記事とは無関係に空のフォルダに行ったのでエラーが不幸にも出なかった。先にBartPEをインストールしていたらエラーが出て、記事通りではないことに気がついた筈なのだが・・・)。

BartPEにUBCDを組み込むのではなく、逆にUBCDにBartPEのPlug-inを改変して追加すべきなのだ

そういうことなのである。当然と言えば当然の結果として納得できることであるが、1年の時の経過が事態を逆転させてしまったようだ。1年前にはBartPEに関心がなかったから当時の UBCD4WinVer2.55がどんな内容で配布されていたのか知る由もないが、要は 最新版であるVer3.03のUBCD4WinBuilder.exe は UBCD用に改変された BartPE なのだ。例えばpluginフォルダ内に nu2menu フォルダが存在していないことがそれを象徴している。

従って先ず行うべきことは、素のママのUBCD4Winをインストールした後に手を加えずにビルドしてみることである。

素のママのUBCD4Winをビルドしてみた

勿論日本語は使えないが、確かに沢山のアプリケーションが搭載されているのには驚く。以下にスクリーンショットを掲載してみる。

     

しかし、上の絵のように文字化けが激しく、素のママではとても使えないことが判明した。つまり PE builder の日本語化作業と同様のことを UBCD4Win に施さない限り実用に供せないのだ。今の私の力では、素の UBCD 上で日本語が使えるようにするプラグインの開発などとてもできないので、結局は元に戻ることになる。つまり、PEbuilder上にUBCDの各種アプリとドライバをプラグインとして組み込まざるをえない。

UBCD4Winはそれ自体でマルチブータブルになっており、一発のビルドでそこまで出来てしまうことはBart's PE builderよりも素晴らしいが、一旦PEbuilderで UBCD4Winに添付されている各種ソフトとドライバを取り込んでビルドした後に、別途マルチブータブルディスクを作成することは可能なので、2つの行程に分けざるを得まい。

但しその場合、UBCD4Winのプラグインはそのままでは使えない。日本語が使える環境下にあるBartPE上において、各種プラグインアプリケーションがスタートメニューに表示されるよう、ubcd附属プラグインファイルを改変せざるを得ないだろう。一括置換によりそれを行うことが可能ならば余り複雑なことではないが、秀丸で複数のテキストファイルの一括置換は出来たかしら?

Acronis True Image 9.0Homeを購入した

ついに買ってしまった

年末に突如発生した職場PCのリカバリイ作業を通じて、結果的にいくつかのイメージバックアップソフトを比較検討してきた。ネットワークドライブ対応かどうか、無料かどうか、ブータブルCDが作れるか、等がその検討要素であった。その中で無料ではないが Acronis True Image の素晴らしさを認識し、自宅では3年間世話になった"HD革命Backup"の利用を放棄し、今年から True Image LE に乗り換えた。

そして今日。ついに標記ソフトをダウンロード購入した。Vectorにて3,500円という破格の安さであったことも幸いした。敢えて有料版を購入したのは、差分・増分Backup、ハードディスクの追加処理、ファイルBackup、スケジュール機能等々魅力的な性能を活用したいため、それを使えないLE版では満足できなくなっていたのだ。

閑話休題───ベクター上での購入の煩雑さについて

ベクター上でのダウンロード購入は概ね年に1、2回しか行っていない。その際殆ど毎回、登録済みのIDやパスワードが使えないのだ。

それは、Vectorパスポート、レジサービス会員、MyVectorなど様々な登録アイテムが混在しており、年に数回しか使わない場合には、以前に登録した情報を忘れてしまうことも多々あるため、非常に混乱するのである。事実、パスポートは統合が必要と表示されメールにてその旨を依頼したところ、自分でも忘れていたのだが過去に3つのIDで登録していたことが判明した(苦笑)。

登録した情報をきちんと管理してこなかったのが悪いのだと言われればそれまでだが、使い勝手の悪いシステムであることに変わりはない。

BartPE活用編──改めてAcronis True ImageとのマルチブートCDを作る

色々な組み合わせのブータブルディスクを作る

昨年末からチャレンジしてきたBartPEが、ひとまず使える形でやっと完成したので、次に行いたいことは、このBartPEを更に拡張することや、他のブータブルプログラムと組み合わせてマルチブータブルディスクを作成することである。

そこで、自宅や職場で活用出来ると思われるブータブルディスクを色々考えてみた。次のような組み合わせが期待されるだろう。

  1. BartPEの更なる拡張。例えばUBCD4Winを組み込む。
  2. BartPEの更なる拡張その2。上記に更に使いたいアプリを追加する。
  3. BartPE + Windows回復コンソール(所謂インストールFDDのCDブータブル版)
  4. BartPE + True ImageLE
  5. BartPE + KNOPPIX
  6. BartPE + Windows回復コンソール + True ImageLE
  7. BartPE + Windows回復コンソール + True ImageLE + KNOPPIX

まずBartPE + True ImageLEを作った。

それは最も簡単であり、かつ自宅ではネットワークドライブは存在しないため、イメージバックアップをDrive Image XML ではなく性能的にはより優れているTrue Image LEで行っているからである。(実は3年前から昨年末まではずっとHD革命Backupを使ってきたのだが、True Imageの方が性能が良いことを実感したため、今年から乗り換えることにした。更に言えばLEでは差分バックアップが出来ないから製品を購入するつもりである。今やTrue Image万歳!なのである(笑)。)

さて、BartPE + True ImageLEマルチブータブルディスクを作成する過程において、また躓いた。直ぐに原因は特定出来、改善できたが、その躓きとはmkisofs.exeの日本語対応化の問題である。

文字化け状態図

BartPE + True ImageLEのマルチブータブルディスクビルド作業には、PC Japan2007年新年号に基づき、CdRecord_FrontEndを利用したが、ダウンロードしたCdRecord_FEに同梱されているmkisofs.exeを使ってビルドすると、文字化けが起きてしまうのだ。しかも、スタートメニューのプログラムメニュー内に2つの管理ツールと2つのシステムツールフォルダが作成されてしまうのである。構築元にPlug-inフォルダは存在しないのに、マルチブータブルディスクの構築過程で、何故BartPE迄一部構築されてしまうのか解せない。(右図参照)

BartPE上で各種アプリを同時起動した図

一部BartPEの構築が行われてしまう点は理解できないが、BartPEのビルド作業で使ったmkisofs.exeをCdRecord_FEフォルダに複写上書きして、ビルドし直したところ、見事に文字化けが解消され、また2つのダブりメニューも見事に消えてくれた。このマルチブータブルディスクの作成においては、完成したBartPEのファイルを利用して構築作業を行うのだから、日本語対応版のmkisofsを使わなくても問題はないかと思ったが違っていた。

左図は、以上の結果完成したマルチブータブルisoファイルを、バーチャルPC上で起動し各種ソフトを起動させた状態のスクリーンキャプチャである。

構築元ファイル一覧

なお、マルチブータブルディスクの構築元ファイル一覧は左図の通りである。

PEBuilder失笑話──DriveImageXML組み込みに関わって

苦労の末の到達結果



一昨日から、SP+メーカーを使って、SP2及びHotfix等の各種Updateの適用済みWindowsXPを作成し、それをベースにして当初目的とした DriveImage XML の他、沢山のアプリを組み込んだBartPEを作成してきた(その過程の苦労談はこちら(Drive Image XML を bartPEに組み込む)に書いた)。

このエントリイではその到達点を確認しておこう。

完成したものは2つ。SP2及びその後の全てのWindows Updateを組み込んだWindowsXPisoファイル、そして各種Plug-inを組み込んだBartPEisoファイルである。それは共にHDD内にあり、いつでもCDやDVDに焼けるからようにしてある。もちろん一枚ずつ焼いたことは言うまでもないが・・。

なお前者は900MB近いのでDVDに焼き、後者は400MBなのでCDに焼いた。

さて完成したBartPEであるが、左図のようになっている。日本語が正しく表示され、秀丸エディターが使え、インターネットエクスプローラが動き、緊急時のバックアップには FastCopy を使い、動画はMPCで閲覧し、Drive Image XML でリストアすることが出来るPEである。

当面これだけのアプリがあれば緊急時の作業は十分出来るはずである。

勿論、定期的にDrive Image XML を使ってイメージバックアップを取っておくことを忘れてはならないが(苦笑)。

失笑とは?

それは自分でも呆れかえる程の愚かな話だ。日本語対応版の mkisofs.exe を入手してPEをビルドし、その結果を既存の文字化けしているISOファイルに上書き保存した。それを VirtualPC で確認したところ、文字化けが消えていないため、その原因の究明を昨晩から今日の午後まで掛かって模索し続けた。

ところが、実はisoファイルは上書き保存されてなかったのである。つまり新しく入手したmkisofsの適用結果がisoファイルに保存されていなかったのだ。

これでは当然正しい結果を得られるはずもなく、余りにバカバカしい原因とそれに気づかずに悶々と過ごした貴重な12時間程の時間の損失に、怒る力もなく拍子抜けしてしまった次第である。

Drive Image XML を bartPEに組み込む。

関連エントリイリスト in this Blog

作業手順の概要

  1. SP+メーカーを利用して手持ちのWindowsXP SP1からWindowsXP SP2適用版isoファイルを作る。
  2. PeBiulder プラグインを色々用意する。その作業に関してはこのサイト(PE -PlugIn-)が大変参考になった。組み込んだプラグインは具体的には次のとおりであるが、簡単に上記サイトからダウンロードしたファイルをpluginフォルダの直下に置けば良い、とばかり思いこんでいたので非常に苦労してしまった。

    既定のママでは駄目なプラグインが沢山存在し、プラグインそれぞれのフォルダ内において、様々な作業をしないと、そのプラグインが使えないどころか、Bart's PE Bulder 自体がプラグイン設定から先に進めないのである。当該プラグインを組み込まない、との設定にしない限り・・・。

    そんなことは全く予想していなかったので、非常に消耗し疲れ果ててしまった。

    • 基本的プラグイン
      • Japanese Language
      • fix_net……ネットワーク環境
      • Explorer&IE(for XPSP2)
      • z_PeGina……Enable Shutdown Dialog
      • winlogon ~リソース制限突破~ ver.1
      • スタートアップグループ
      • mmc
    • CMD Here ver.1……コンテキストメニューに "コマンドプロンプト" を追加
    • Enable Sound ver.11
    • Device Maneger Catalog Classes ver.2
    • DirectX 9b ver.4
    • sw_flash……shockwave & flash
    • driveimage_xml……いわずもがな、これがDrive Image XML plugin
    • 秀丸
    • FastCopy
    • Media Player Classic
  3. プラグインの設定が終わったら、1で作成したSP2適用済みWindowsXPisoファイルをdaemonツールで仮想DVDとしてマウントし、ソースファイルに指定して Bart PEを作成(ビルド)する。

苦労話

1. SP+メーカーによるWindowsXPProSP1からSP2のビルド作業において

最新のSP+メーカー(Ver0.70.0 2007/1/15)を入手し、高度な設定で全てのアップデートを適用するように指定。オプションで「自動ダウンロードを許可する」を有効にして作成ボタンを押した。作業はスムースに進み、完成したisoファイルをVirtualPCで起動したところ、問題なくインストール直前のProcessまで進んだ。だから直ぐに次の本命作業である PE build 作業へと勇んで突き進んだのだった。

ところが、このbuild作業が成功しないのである。「i386\ASFSIPC.DLLが見つからない」とエラー表示され当然 PEisoファイルは作成されない。

折角直前までの完璧なアップデート適用版SP2を作り、それを元にBartPEを作ろうと思ったのに、肝心の元になる最新のSP2適用WindowsXPが作成出来ないのでは、話にならない。まさに出鼻を挫かれてしまったのである。

スリップストリームを利用してSP2適用版XPを作成する選択肢もあるが、スリップストリームを理解し切れていないため、これを使ってbuildを完成させる自信がない。

かくして出鼻を挫かれて意気消沈し、ネット検索するも目的とする回答に遭遇すること能わず、思案に暮れたのであった。

しかし、あれこれと詮無き検索を繰り返しても仕方ない。理屈としてどうすれば良いものか考えた結果、isoファイルを作成する直前のSP+メーカー適用ファイル群があれば、そこにあるi386フォルダに、オリジナルのWindowsXP-SP1CDからi386\ASFSIPC.DL_を複写すればよい───と思いついた。しかし、SP+メーカーによるisoファイル作成が終わると、作業フォルダ内のファイルは自動的に消えてしまう。それを消えないようにするオプション設定はないから、思いついた方法は実現性がない。

何とかならぬものかとSP+メーカー操作ダイアログのあれこれの箇所を調べた結果、ついにそれはあった。高度な設定ダイアログ内に「ISOファイル作成前に任意のプログラムを実行する」というチェックボックスがあるではないか!!

これをonにして、isoファイル作成前にエクスプローラを起動させ、ソースCDのi386内からASFSIPC.DL_をSP+メーカー作業フォルダ内のi386フォルダに複写すればよい!

そうすればその後に作成される isoファイルのi386内に ASFSIPC.DL_ が存在するはずだ!

以上の苦労の末に、SP2適用+最新版Hotfix適用済みのWindowsXPisoファイルが完成したのであるが、SP+メーカー適用後のi386フォルダ内からASFSIPC.DL_ファイルが消えてしまうのはバグなのだろうか?なお、複数回試してみても同じ結果だったことを記しておく。

2. PE Builder によるBart PE作成作業において

苦労の末にSP2及び最新hotfix適用済みのXPが完成したが、次の高いハードルは PE Builder のプラグイン設定作業だ。そもそも、PEbuilderのプラグインに付いては殆ど知識を有していない。ただpluginフォルダ内に各々のplug-inファイルを置けば済むのだと簡単に考えていが、それが大きな間違いの元であった。

配布されているままでは機能しないplug-inファイルが沢山あることを初めて知ったのは、plug-in設定ボタンをクリックして、有効無効の設定を弄ってから、さあ閉じようとしても、そのダイアログが閉じられず、設定が不十分であることを警告されたときであった。

かくして、plugin設定について基本的な知識を得なければ先に進めなくなり、やむを得ず、関連サイトを探索して必要な知識を得る羽目となった。

「一歩進んで二歩目に佇む」──この繰り返しに益々疲労の度は濃くなるばかりで「しんどい」限りだ。しかしそれでも、諦めるわけには行かない。

次々とpluginダイアログのHELPボタンをクリックし、何が足りないのか、どうすればよいのか、一つ一つチェックしながら必要な作業を行った。

特にmkisofs.exeの日本語対応版への置換作業が大変だった。何故ならば日本語対応版のmkisofs.exeが容易に見つからないからである。いくつかのBartPE Plug-in関連サイトに記載してあるリンクをクリックしても、リンク先が消滅しているのだ。

そこで検索を掛け何とか日本語対応のmkisofs.exeをゲットした(以下を参照)。

3. お世話になったサイト一覧

沢山のサイトに大変お世話になったので感謝の意を表すためにも、ここに閲覧した関連サイトをリスト化しておき深甚の感謝を献げたいと思う。

Drive Image XML を bartPEに組み込みたい。

関連エントリイリスト in this Blog
  • 「Drive Image XM」Lの検索結果

    上の「検索結果」をクリックすると、このブログ内の Drive Image XML に言及した全エントリイが一覧で表示されます。

Drive Image XML を活用するために必要なことは・・・

Drive Image XML がネットワークドライブ対応であることが確認できたので、次に行うべきことはブータブルな環境下でDrive Image XMLを使えるようにすることだ。

折角時間を掛けてイメージバックアップを取っても、実際にWindowsXPが起動しなくなった状況下において、リストアが出来る環境を作っておかない限り、殆ど意味を為さないからである。

BartPEにDrive Image XMLを組み込むことが必要だ

WindowsXPが起動しない状況下でリストアを行うためには、BartPEをDVD(orCD)起動して、その中でDrive Image XMLを起動させることが出来るようにすればよい。つまりBart's PE BuilderプラグインにDrive Image XMLを追加すればよい。

しかし、その追加ファイル作成はかなり面倒なので、とても一から始める気にはならない。

そこで、おそらくネット上にDrive Image XMLのBart's PE Builderプラグインファイルがあるのではないか、と推測しグーグってみたら、案の定それは存在した!Bravo!!

ネットに感謝!

次のサイトから Drive Image XML の Bart's PE Builderプラグインファイルをゲットすることが出来た。

辿った経路も含めて関連サイトをリストアップしておき、感謝の意を献げることにする。

▼ とっかかりのサイト
A Little Bit: WinPE (BartPE)

蛇足ながら、ビルトアップに当たっては、CD-RWを使って書き込みを繰り返すよりも、VirtualPCで試すことが最善だろう。

▼ プラグインDLサイト

DIXMLはRuntime Software社の製品であり、以下の2つのサイトは同社のものである。

Data Recovery Software - File System Utilities(dixml)

次のように書かれている──「You can run DriveImage XML from a WinPE boot CD-ROM.」なお、このサイトから DriveImage XML の最新版 V1.20(1/18現在) がダウンロードできる。

Data Recovery Software - File System Utilities(plugin)

Available Plugins リストの中程に「DriveImage XML V1.20 plugin」がある。

mini-AQUA で魚の数をランダムに表示する

関連エントリイリスト in this Blog

miniAqua では魚の数を1~6匹の間で指定できる

そのことは本家サイトに説明されているが、どうせなら匹数をランダムにしたいではないか!

ということで、ちょこっとscriptを追加してランダムに魚の数を変化させることにした。(実証済み)

この結果、背景、魚の種類そしてその数の全てがrandomに変化することになる。

そのscriptは以下の通り

上のscriptを組み込んだ 悉くrandom な miniAqua は以下の通り

なお、言うまでもないがそのrandom性を確認するには、F5キーを押すなどしてこのページを更新すればよい。

英文スパム対策について

関連エントリイリスト in this Blog

正規表現で苦労する必要はなかった!

ブログ環境設定の中に、英文のみのコメントとトラックバックに対する制限コントロール機能があることを今日知った。

環境設定 → ブログの設定 の中に下図のような設定項目があるのだ。

禁止ワードに正規表現など使わなくても、これで設定すれば良かったのだ。全く知らなかったので、正規表現による英文禁止設定作業が徒労に終わってしまった。ぐやしぃぃいい~!

miniAqua補足:Blog Partsについて

関連エントリイリスト in this Blog

miniAquaは職場で好評を博した

本日職場のHomepage上にminiAquaを設置したところ、かなり好評を博したので、改めてブログパーツへの関心を呼び起こされた。そこでちょっと関連サイトを調べたところ、昨日触れた書籍に頼るまでもなく、それ以上の膨大な数のパーツを紹介している Website があることを知った。

それは、その名もずばり 画像で比較できる無料ブログパーツ情報図鑑 である。

このサイト内には、勿論miniAquaも掲載されており、その他にも魅力的なパーツが満載である。

しかしながら、ブログスタイルが2または3カラムの場合には、ブログパーツを掲載したい衝動や意欲、思い付きなどがあり得るが、myblogにおいてはそれを組み込む意志は湧いてこない。淡々と記し続けるのみである。

mini-AQUA test

FC2からプレゼントされた冊子『FC2ブログ徹底攻略術』をパラパラと見ていて、各種プラグインの紹介部分に目が止まった。myblogはシングルカラムなので、また既成品を利用するのは余り趣味ではないので、プラグインは一切使っていないため、サイドバーに表示する各種のミニツールの存在に余り興味はない。

このためプラグインツールには関心すらないのだが、miniAquaは気に入ったので、8つの「水槽」をテスト表示してみる。

  

さて、これだけのshockwaveコンテンツを掲載すると、そのCPU利用率がかなり高いためか、途端に表示が遅くなる。このページを開いたまま他の作業を行うと、その作業の効率が極端に低下してしまう。

どんな感じか確認は出来たので掲載している水槽の数を、2つに減らしてしまった。

mouseover時Popupに画像活用の補足:cssで画像先読み

ポップアップ画像表示が遅延するのはイヤラシイ

表示すべき画像はonmouseoverイベントハンドラー関数内に記述されているため、当該画像が属するエントリイがブラウザに読み取られた場合に、キャッシュされない。通常のタグ内にあるsrc画像ならば自動的にブラウザは読み取るが、リンク要素のイベントハンドラー内の画像は、当該ページが開かれたときには読み取られない。onmousemoveイベントが当該箇所で発生したときに初めて、当該画像の読み取りが始まる。

このため文字と違って画像のポップアップは表示されるまでに時間が掛かってしまい、折角の効果が半減してしまう。

そこで考えた。───ポップアップ画像をキャッシュデータに先読みしておけば、いざ出陣となったときにスタンバイは完了しているわけだから、直ぐに表示される筈だ。

かくして、エントリイの最下部に、display:none スタイル設定を行ったdiv要素を設け、その中にポップアップ画像を表示させるよう書き込んだimgタグを設けておき、先読みさせることにした。

これは見事に奏功している。

Drive Image XML を使ってみた(2)

関連エントリイリスト in this Blog

RAWモードでのバックアップは7時間以上!

昨日「25GBほどのWindowsXPシステムドライブのバックアップに、何と3時間以上を要した」と書いた。これは、既定値であるsplitモードで行ったのだが、色々試してみたいので、RAW(Real After Wite)でのバックアップをセットして帰宅の途に就き、今朝要した時間をチェックしてみた。すると、何と更に異常に長い7時間以上掛かった。

これで、少なくともRAWモードでのバックアップは実用的でないことが先ず分かった。それもそのはずで、RAWモードの場合には使用領域/無使用領域の区別なく、バックアップ対象ドライブ全体をイメージ化するので当然時間も掛かるし、無使用領域のBackupは当然不必要だから無駄の多いバックアップとなってしまう。

モード無指定では1時間程でバックアップ完了

次に既定値であるsplitモードを外し、何も指定しないで自宅PCでバックアップを取ってみた。すると何と1時間足らずで、23GB程のC:ドライブのバックアップが終わってしまった。

職場と自宅とでPC環境はかなり異なるため、一概に比較は出来ない。職場PCでモード無指定でバックアップを取って、同条件下で比較しないと意味はないかも知れない。それでも無指定モードが一番速い可能性が見えてきた。

Drive Image XML を使ってみた

関連エントリイリスト in this Blog
  • 「Drive Image XM」Lの検索結果

    上の「検索結果」をクリックすると、このブログ内の Drive Image XML に言及した全エントリイが一覧で表示されます。

それはネットワークドライブ対応だった。

無料のイメージバックアップソフトで適切なものを探しているのだが、PCJapan2007年1月号に特典的に付属していたAcronis True Image は、ネットワークドライブに非対応であったのでその使用を諦め、Drive Image XML (←クリックするとダウンロードサイトが開く) を試してみた。

まず、ネットワークドライブに対応していることが確認できた。ただし大きな難点がある。それは、メチャクチャ時間が掛かることである。25GBほどのWindowsXPシステムドライブのバックアップに、何と3時間以上を要した。(因みにTrue Imageで同様のサイズのものを行ったことがあるが、1時間掛からなかった。CPUや搭載メモリの差異がこれ程の時間差を生むとは考えにくいので、アプリケーションソフトの性能の違いだろう。) ←これは間違いであった。CPU性能と搭載メモリ量によって所要時間は左右されるようだ。同じPCにおいて、ここで触れた2つのソフトでイメージバックアップを取って比較した結果、ソフト間の差異は殆どなかった。

メニュ表示などソフトの日本語化は出来ないが(正確に言えば日本語化ソフトの存在を知らない)、使い勝手はそれ程悪くはないので、何とか使い込めるように Manual を作れば、多くの人が使うことが出来るようになるだろう。幸いサーバーPCは750GBの容量があり、まだその3割も使っていないので、大勢がイメージバックアップを取っても問題はない。

コメントスパム対策の検証(3)

当面コメントスパムは来なくなったが・・・

一昨日から今日までコメントスパムは来ていない。しかし、それが講じた対策の効果なのかどうか、拒否した旨の通知があるわけではないので判断できない。そこで自分でスパムコメントを発して検証してみたところ、どうも功を奏していないようだ。

作成した正規表現ルール【(\w+\s){5,}】が功を奏していれば、「and I love you so much.」はスパムコメントになるはず。英文字+スペースが5つ以上継続しているのだから。実際正規表現テストページでチェックしたところ、下図のように引っかかるのだ。

「and I love you so much.」に対する禁止ルール「(\w+\s){5,}」の正規表現テスト結果
「and I love you so much.」に対する禁止ルール「(\w+\s){5,}」に関する正規表現テスト結果

効果が確認できる仕様にして欲しい

FC2の様々なブログ性能拡充の試みは高く評価するが、確認やテストが出来ない禁止ワード機能は困る。ユーザーサイドで試行して効果を確認できる仕様にすべきだと思う。

今の仕様では、今回そうしたように、ユーザーサイドで禁止されるはずのコメントを実際に投稿して効果を確かめるしかなく、思い通りにならなかった場合にその原因を探ることが出来ない。これでは修正しようがない訳で、宝の持ち腐れになってしまう。

Acronis True Image LE はネットワークドライブ非対応だった

 タダなのだから文句は言えないが・・・

本日12日ぶりに出勤して、早速職場で標記ソフトを試してみた。

そして懸念はしていたが予想通り、LE版はネットワークドライブに対応してないことが確認された。製品版を購入すべし、と勧告表示が出たのである。

やむなしとはいえ、別のソフトを探さざるを得ない。しかし、そもそもCDブート可能+フリー+ネットワークドライブ対応のイメージバックアップソフトなんてあるのかしら?

Drive Image XMLを明日試してみるが、期待は出来ないだろうと思わざるを得ない。

残念!!

更にマルチブータブルISOファイルを作ってみた。

マルチブータブルCD/DVDの作成方法と何よりも理屈を知りたい。

昨日の「WindowsXP CD版インストール用起動ディスク」作成に続いて、今日はマルチブートディスクに挑戦した。

成果は以下の通りである(VirtualPC上での起動直後の画面)

狙いは、イメージバックアップソフトTrue Imageと任意のリナックスディストリビューション(今回はAccelerated KNOPPIXを採用)を、1枚のCDまたはDVDにまとめることにある。既に、WindowsXPが起動しなくなった場合に備えて、Acronis True Image と BartPE のマルチブートCDは作成済みだ。しかし、それらの作成作業はマルチブートの仕組みを全く理解しないままに、「PCJapan2007年1月号」の記述通りに行ったに過ぎない。結果的に誤報だったのだが、HDD Healthによる「崩壊予測日」の告知「事件」があったため、理屈はさておき、環境とデータのバックアップが緊急の課題となったので、とにかくバックアップを急いだわけだ。

しかしその後、他の診断ソフトでチェックして問題はないことが判明し、また HDD Health はインストール直後には必ず「数日以内に危ない」と警告することも知り得たので、当座急いでハードディスクを交換する必要はなくなった。そこでこの際、それなりにマルチブートを理解したい、と思いたったのだ。

PCJapanでは理解し得なかった。

さて、PCJapanでは know-how がマニュアル的に沢山語られ、理屈もそれなりに記述される。過去2年くらい遡ってみると、パソコントラブル対策、マルチブート、Linux 活用などなど、OSに関する記事は沢山ある。

しかし、雑誌の宿命であろう、どうしても理屈よりも操作方法に力点が置かれる傾向があり、現に私がそうであったように、理屈よりも実践的な結果を求める需要は多いのだと思う。裏返せばたとえ雑誌を隅から隅まで読んでも、問題の本質や根源的理解には至らない場合が多い、ということになる。

例えば、過去2年間で目次に「マルチブート」と記されている号は、2005年8月号、2005年11月号、2006年7月号、の3号あり、それぞれに特集として詳細な手順が述べられている。特に直近の昨年7月号のマルチブートDVD作成に関する記述は詳細を極めており、今になって落ち着いて読めば理解できる。しかし、そこでは次々と手順が述べられるだけであって、何故そうするのか、そもそも原則は何なのか、についての記述は殆ど見あたらないのである。

きちんと知ろうと思ったら、雑誌では所詮無理なのだ。

すっきりデフラグ作者のUiUicyさんに感謝!!

そこでネット検索であれこれと探して見た。なかなか納得のいくサイトがヒットせず、かなりの時間を検索に掛け、もう適当なものは見つからないかも知れない、と思っていたところ、昨日同様にUiUicyさんのサイトマルチブータブルCD/DVD製作法に遭遇!。そこには膨大な量の詳細かつ分かりやすい説明が、原則と共に述べられており、「目から鱗」の知識と理解を得ることが出来たのだった。この場を借りて改めて感謝!!

それまで見よう見まねで色々試してみたが、どうしても True Image と Knoppix のマルチブートiso がバーチャルPC 上でうまく動かなかった。今日中には解決は無理か?!と半ば諦め掛けていた矢先だっただけに、UiUicyさんの、そのものずばりのサイト「マルチブータブルCD/DVD製作法」に辿り着いたときには、我が意を得たりと感激すら覚えてしまった。

なお、具体的な作業内容や気がついた点については、後日にまとめることにする。

WindowsXP CD版インストール用起動ディスクを作った

必要性よりも可能性を求めて

既にWindowsXPが起動しなくなった場合の救済策は、あれこれと準備し終えた。KNOPPIXもあるし、Bart's PE Buider によるBartPEとAcronis True Image LEのマルチブートCDも作成した。勿論、随時Acronis True Image LEによるC:ドライブのバックアップも行っている。

だから、今更XPのCD版起動ディスクを作る必要など毛頭ない。しかし、それでもどうやってそれを作るのか、その点に興味があったので、敢えて挑戦してみた。このエントリイはその記録である。

全面的にお世話になったサイトの紹介

さて、XPのフロッピイ起動のインストール用起動ディスクはよく知られている。WindowsXPが起動しなくなったときに、フロッピイディスクからパソコンを起動し、再インストールするか、回復コンソールを起動するもので、フロッピイ6枚を必要とし、使うときには順次画面の指示通りにこの6枚のディスクを出し入れしなければならない。

実際にやってみると、この6枚のFDの入れ替えが余りに単純で面倒であり、この時代にあって、インストール用起動ディスクをどうしてCDにしないのか、どうしてCD起動版が提供されないのか、とずっと疑念に思ってきた。そのような思いは恐らく多くのXPユーザーが抱いているだろう。そこで早速グーグてみたらぴったりのサイトを発見し、今回このサイトの指示通りに作業を行ってCDベースのインストール用起動ディスクを作成し終えたのである。

そのサイトとは、1CDブート回復コンソール作製法であるが、実はこれは「すっきりデフラグ」の作者UiUicyさんのサイトであり、OS:Windowsの起動に関する詳細な諸情報が満載されているので、大変勉強になった。その存在をもっと早くから知っていれば・・・、と後悔したほどである。

ImgBurnで同じ作業を試してみたが成功しなかった。

作業内容は上記サイトに詳細に記載されているとおりであり、屋上屋を重ねてここで述べるべきことは何もない。敢えて書くことがあるとすれば、画像満載の初心者に易しい丁寧な説明に深甚の感謝の意を表することに尽きるだろう。

さて、イメージファイルの作成、書き込み、読み込みとくれば、今をときめくImgBurn(←クリックすると「ImgBurn」のgoogle検索結果を別窓で表示します)を利用しない手はない。というよりも、UiUicyさんが説明してくれた1CD版インストール用起動ディスクの作成を、ImgBurnを使って出来ないものか?、と考えたのである。UiUicyさんの方法ではビルドアップ作業に使うソフトは「SuperウルトラISO体験版」である。今回そのソフトの存在そのものを知らなかった程の知識レベルなのであるが、それでもダウンロードして作業は円滑に進んだ。

そこで色気を出してしまったわけである。───同様の1CD XP起動ディスクをImgBurnで作成できないか?

何度も試みて結果をVirtualPCで確認した。しかし、エラーcode:5なる表示が出てしまい、成功しない。起動ディスクとして認識されないようなのだ。そのエラーの意味が分かれば手を打てるかも知れないと思い、今度は「エラー」について検索を掛け、Microsoft社のerr.exeが便利であることを知り、早速ゲットして調べてみたが、VirtualPCに関するエラーは当該ソフトのデータベースに入ってないようで、何も得ることは出来なかった。

それではと、今度はImgBurnに関して検索を掛けてみて、ブータブルディスクの作成に関するサイトを探してみたが、少なくとも日本語のサイトにはこれと言ったものが見あたらず、やむを得ず、ImgBurn本家の関連サイトも探ってみたものの、英語の壁に阻まれたこともあり目的を達することは出来なかった。

ImgBurnは大変素晴らしいソフトであり、必ずやこのソフトを使ってXPの1CD起動ディスクが作成できるはずだ、と信じて疑わないのであるが、さて半可通の悲しさや!───お手上げ状態である。

正規表現による英文コメントスパム対策の適否(2)

 禁止ワード適用後の結果について

適用後2時間ほど経過する間に3本の英語だけのスパムコメントが登録された。(E-MAIL通知による)

そしてその全てが拒否されずにエントリイのコメントとして表示されている。

中の1つは、タイトル:making weave poles (making weave poles)、コメント本文「The hint given, and returned in a way.」であったので、「\w+\sが連続して5つ以上続く」条件に該当しないため拒否できなかったのは理解できる。

しかし、他の2つは明らかに「\w+\sが連続して5つ以上続いている」にも拘わらずサーバーは拒否してくれなかった。因みにそのコメントは以下の通りであり、正規表現テストWebサイトでチェックしたら、共に(\w+\s){5,}の禁止ワードにヒットするのに、FC2ブログサーバーでは削除してくれなかったことになる。

 禁止ワードで遮断されるはずなのに、そうならなかった2つのコメントスパム

  • タイトル:melisa ford (melisa ford)、
    コメント:「Sleep, sleep, Grace had always seemed more fitted for heaven than earth; but, it is hardly generous to think myself in love with my friends at Marseilles, by their exteriors.」
  • タイトル:american express pay bill (american express pay bill)
    コメント:As I did when I heard a suppressed groan escaped him, declaring that the parson's son could hardly believe that this was my misfortune; for I conceived it impossible anything material could escape them.

「melisa ford (melisa ford)」の正規表現MATCHテストの結果は以下の通りであり、2箇所が禁止ワードにヒットしている。しかしFC2サーバーは跳ねなかった・・・。

正規表現による英文コメントスパム対策の適否

関連エントリイリスト in this Blog

 講じた英文スパム対策禁止ワード( (\w+\s){5,} )のチェックの様子を記しておく。いうよりも、当然のことであるがチェックしてから禁止ワード設定を更新した(笑)。

なお、ここにチェックに使用したWebサイトを記して感謝の意を表したい。それは 正規表現MATCHテスト (黄色い文字をクリックすれば当該サイトが別窓で開きます)である。

ケース1……ヒットする例文

※ 以下の例示では正規表現が \w{1,}\s{5,} となっているが、これは \w+\s{5,} と同意であり、後者の方が簡潔なので実際の禁止設定では後者で登録したことを付言しておく。

下図のように、スペースや改行文字を伴う5個以上の英単語が連続するケースは、ごく短い英文でも一般的に存在する。(実際のコメントスパムをチェックした例である)

テスト内容

テスト前の入力状態

テスト結果

テスト結果
ケース2……Javascript文を跳ねないか?

この場合、=、(。{などの英文字ではない記号が沢山登場するし、スペース、改行を伴うアルファベット文字列5個がで連続してる箇所は滅多にないだろう。テスト内容は下図を参照。

Javascript文のテスト内容
▼ケース3……HTML文を跳ねないか?

HTML文の場合 <や=などの記号が随所にはいるため、英文字とスペースや改行だけが5回以上繰り返されることはまずない。だからヒットしない。

HTML文のテスト内容
ケース4……CSS文はどうか?

この場合には以上のチェック結果を踏まえれば敢えて試すまでもなく、:や;が続々と登場するので上記の禁止ワード正規表現にはヒットし得ない。

意図通り作動しているか?

それは今後のお楽しみ。毎日数通のスパムコメントが投稿されているので、数日来なければ成功と言えよう。

しかし I love you so much. 何てコメントも拒否してしまうので5回繰り返しでは少なすぎか? 否、ピリオドがあれば \w\s の禁止ワード正規表現には該当しない。この場合には4回の連続だけになるので大丈夫!───と一人悦に入っていても仕方ないことではある(爆笑)。

増えるコメントスパムに対策を講じてみた

以下の正規表現で功を奏するかどうか、実験中。

(\w+\s){5,}

「任意の1以上のアルファベット(\w+)とスペース、タブ、改行記号(\s)の組み合わせからなる文字列が5個以上あれば禁止」 という設定である。

目の青い友人(笑)はいないから間違って拒否することもないし、日本人のコメントで「アルファベットとスペースや改行」だけが5回連続したコメント文はまずないだろう、と考えた。

なお、コメント内にHTML文、CSS文、scriptを記述する場合があり、当然英字は沢山混じってくる。しかし、それはアルファベット以外の記号(<、{、(、:、;等々)が必ず混じるし、アルファベットとスペースや改行記号だけが5回以上繰り返される、というパターンはないと判断する。

本来、過去に戴いたコメントで文字数をチェックしてから設定すべきだが、面倒なのでとりあえず以上で設定し、数日様子を見てみようと思う。

なお、便利な世の中になったもので(笑)、「正規表現MATCHテスト」をWeb上で行えるサイトが複数存在しており、また正規表現をチェックできるフリーソフトも存在していることが分かったので、それらを使ってテストした結果を別エントリイで書くことにする。

DOM:setAttributeメソッドを使ってクリック時のフォーカスをはずす(2)

自動フォーカスアウトは、月別、カテゴリイ別表示の時には無効にした。

先月分のエントリイを一括表示してみたら、凄く時間が掛かった。これは記事の文字量が多いこと、及び画像ファイルが沢山あるためであるが、(画像へのリンクが多いことは無関係だ。リンクが貼ってあるだけで読みに行っているわけではないから)、兎に角、余りに時間が掛かりすぎるので、少しでもそれを短縮する必要があると思われた。

そこで、記事(文字)量を減らすわけには行かないので、出来ることと言えば、徒に画像を掲載しないこと、または掲載画像サイズを小さくすることである。しかし、今後の対応としてはあり得るが、過去のエントリイに遡ってまで、それらの対策を講じることはとてもカッタルイ。となれば、後はメモリ上で悪戦苦闘しているであろうDOMによるAタグへの属性追加、すなわちクリック後のフォーカスアウトを、記事の単独表示の時だけに限定し、月別、カテゴリイ別、検索結果などの複数エントリイ表示モードの時には、適用しないようにしたらどうか、と考えた。

 そしてそれを実行した

HTMLテンプレートにおいて、bodyタグの属性にonloadイベントハンドラー「start()」を設定し、それによりonClick時のblur()を設定しているのだが、この適用を個別エントリイ表示だけの場合に行うように修正した。

具体的には、次のようにブロック変数を設定してみた。

<!--permanent_area--><body onload="・・・();;start()"><!--/permanent_area-->

<!--not_index_area--><!--not_permanent_area--><body onload="・・・()"><!--/not_permanent_area--><!--/not_index_area-->

mouseover時の説明用Popup表示方法(script上の配慮事項)

 やっかいなり!イベント座標系

2年ほど前から文字だけのポップアップを行ってきたが、この場合にはマウスカーソル位置の右下にポップアップするように設計していた。ここにおいて注意しなければならないことは、ポップアップアイテムがwindow内辺からはみ出さないようにすることであり、その点でかなり苦労した。

それは、ブラウザ毎にイベント座標の表現方法が異なるためであり、特にIEの場合にはスクロール値が、ブラウザの描画モード(標準か互換か)によっても変わるため、「window内の任意の一点」を取得するのにかなり難儀した。また、イベント座標系における各種のプロパティが、一体どの部分の寸法なのかをしっかりと把握するのにも苦労した。手持ちのJavascript参考書にも、イベント座標系について全面的に説明されているものがなく、またネット上でもこれと言った解説は、なかなかなかった。強いて言えばマイクロソフトmsdn:「エレメントの位置と大きさの取得」くらいだ。

 だから自分で整理した

そこで、やむを得ず今後の備忘録として、イベント座標系及びwindowとscreenサイズに係るプロパティについて整理してみた。かなり時間が掛かったが今後のためにも必要な作業であり、理解をきちんと整理する上でも大変役立った。

以下に、オリジナルの整理図を掲載しておく。共にクリックすると別窓で原寸大画像が開きます。

図説:イベント座標系及びスクリーンとWindowのサイズ

 onmousemove位置について

マウスカーソルの位置をscriptで常時監視する場合、onmousemoveまたはonclickイベント発生位置による場合が多いようだ。このブログの場合onmousemoveを採用しており、それは2年半ほど前、Javascriptを覚え始めた頃に イヌでもわかるJavaScript講座 で得た知識である。

当初は見よう見まねで、理解不能なscriptをただ複写して利用していたが、次第に内容を理解できるようになり、自分なりの改竄を繰り返し今日に至ったものの、現在のmyBLOG's scriptでも借用先の原形は大きく残している。

さて、上記のイベント座標とscreenn&windowサイズを踏まえて、このブログのscriptにおける座標取得・設定が行われているわけであるが、設定した各種座標値は上図左側の下部にある一覧表の通りであり、ここに辿り着くのにさんざん苦労したのだ。その長い経過と思いを総括することも含めて、以下にマウスカーソル移動発生位置取得に関するscriptの関連部分を抜粋し、説明を加えて今後の備忘録としておきたい。

この続きを読む

mouseover時の説明用Popupコンテンツに画像活用を開始

 あるサイトを見て同感し、それは始まった。

或る言葉やリンク部分にマウスオーバーすると、するっと画像が表示されるサイトがあった。

多忙な中でのサイト閲覧だったので、そのサイト名やURIは全く記憶していないが、そのポップアップに鮮烈な印象を受けた。

どの様にしてそれを実現しているのかは直ぐに理解できたので(正確に言えば、myblogでそれをどう実現すればよいか直ぐに推測出来たので)、早速昨年暮れの休暇に入ってから我がブログ上でそれを実現しようと、これまで文字しかポップアップしてこなかったmyblogのポップアップに係るscript改造に取りかかった。

それは容易に実現でき、既に12月27日のエントリイから多用している。まるでそれが当たり前であるかのように、リンク部分にはリンク先サイトのスクリーンショット画像をポップアップさせるようにしたのである。

この小細工は次のような特徴を持つ。

第一に、ブログエントリイの一見した見栄えに全く無関係であり、よって余り知られることがないであろうこと、第二に、それにも拘わらず、否それ故に、オンマウスオーバー時に画像が表示されることは不意を突く効果があること。そして第三に、何と言っても作成が大変なことである(苦笑)。

 ポップアップ画像表示のための作業について

それは次のような工程を経ねばならない。
(【】内は作業に必要なソフト。因みに、当該ソフト名にonmouseoverすると、当該ソフトの本家サイトスクリーンショットがポップアップし、また当該ソフト名をクリックすると本家サイトが開くようにしてある。)

  1. 必要なサイト等のスクリーンキャプチャ画像を取得する。【画像キャプチャーソフト:WinShot
  2. これを適当にリサイズする。【画像処理ソフト:JTrim
  3. 必要に応じてコメントや矢印などを画像に加え、あるいは不要な箇所を画像から削除する。【画像編集ソフト:PictBear2
  4. FC2ブログサーバーへの画像アップロード。
    → 相変わらずファイルを1つずつアップロードしなければならない!!FC2さん!早く複数ファイルの一括アップロードを実現しろ~~!!
  5. エントリイ内の必要なAタグ内に、onmouseover時のPopup表示のためのイベントハンドラー関数を設定する。
  6. この時、Popupイベントハンドラー関数の属性値に、必要に応じて画像に対するコメントを挿入する。
  7. エントリイを投稿する。

以上の過程を経てやっと画像ポップアップが可能となるので、時間と暇がないととてもやってられない作業ではある。年末年始休暇が開けたらば、こんなに手間の掛かるエントリイ作成はしないかもしれない(苦笑)。

B's Recorder Gold8使用感

 やはりB's Recorder Gold8は使えない!

直前のエントリイに従い(笑)、B's Recorder Gold8にて、早速書き込みを行おうとしてみた。そして直ぐに過去の嫌な記憶がよみがえってきた。

すなわち、いざ書き込みを行おうとすると、B'sによって「ファイル名が長すぎる」とイチャモンを付けられてしまうのだ。そういえば過去に何度かそうしたイチャモンを付けられて、ファイル名を編集した記憶がよみがえってきた。

B'sは、Joliet形式のファイル名長を越えるものをはじくためのに、ファイル名を変えろ、と指令する。そんな無体な!!そんなことは「自動でやれ!」と言いたい。ネットラジオから録音したファイル名は一般に長い。最低限でも演奏者名と曲名がファイル名に記されている。だから自動カット機能を装備した上で、自動カットが嫌なら個々に編集する。そんなユーザーフレンドリイな仕様にすべきだ。

長すぎるファイル名をいちいち編集して最大64文字までの制限をクリするなんて、余りにユーザーに時間を掛けさせすぎであろう。

 かくして結局mp3のCD焼きはCDBurnerXPProで!

何時落ちるか分からないソフトを使ってまで、書き込まざるを得ないなんて悲劇的と言わねばならない。

安いCD-Rに焼き込む事も考えたが、書き込んでから初めてじっくり聴く曲が多いため、何回も編集して書き込み直したいわけで、そのためにはCD-RWでなければならず、失敗しても書き換えられるからこそ、CDBurnerXPProを使う意味も出てくるわけだ。

もっと快適に書き込めるソフトの登場が待ち遠しい昨今である。

CDBurnerXPPro使用感

 今でも「CD」burnとは!───DVDリッピング無料定番ソフトを比較する。

アプリ名で、DVDではなくCDの名を冠しているソフトが未だに健在なのには驚かされる。それでも、DeepBurnerやBurn4Freeよりも、CDBurnerXPProを好む。まあ、携帯デジタルプレーヤ全盛の時代に、CDでmp3を聞こうとしている人間もいるわけだし、私には「CD」burnerが相応しいのだろう。(笑)

起動時のカラフルなスプラッシュスクリーンが気に入っているわけではないが、Burn4Freeの巨大なツールバーには反吐が出そうだし、大体起動に時間が掛かりすぎる。他方、Deep BurnerはUSB接続DVDドライブ(2層書き込みDVDドライブだから?)を認識してくれない。これらの点から、これらの2つのソフトを使う気にならない。

その点、CDBurnerXPProは、操作画面が整理されており理に適った部分が多い。複数のDVDドライブを操作画面から直接選択できるのも便利だし、Deep Burner同様に、discが挿入されている時にはセッションモード選択画面が表示されるのも親切だ。(但し、この「先指定機能」はDeepBurnerの方が遥かに分かりやすい。)

しかしながら、CDBurnerXPProには、小さな欠点として、メニューなどが日本語対応になってないことがあり、大きな致命的欠点として、時々エラーが出てアプリがダウンしてしまう問題がある。後者の問題は致命的欠陥だが、それでもなお、他の2つのリッピングソフトの各々の持つ欠点故に、CDBurnerXPProを仕方なく優先して利用している。勿論 CD-Rにではなく、CD-RW にmp3を焼くときだけの限定的利用だが・・・。

CD-RやDVDに焼き付ける場合には、何時落ちるかも知れない不安定なソフトを使うわけには行かないことは火を見るより明らかであり、Deep BurnerがUSB接続DVDドライブを認識してくれさえすれば、こちらに乗り換えたい、とは思う。しかし、Deep Burner には、何らかのプラグイン等により、ドライブを追加認識させるする機能はないし、今後もそれは期待出来ないだろう。

かくして仕方なく、CDBurnerXP Pro を使っている訳だ。(/_;)シクシク

無理してフリーウェアを使わずに、正式に購入した B's Recorder Gold を使うべきだろうか?!(爆笑)

 各ソフトのスクリーンショット

画像をクリックするとそれぞれのダウンロードサイト(本家)が別窓で開きます。

  • CDBurnerXPPro
  • DeepBurner
  • Burn4Free

DOM:setAttributeメソッドを使ってクリック時のフォーカスをはずす

またしてもIEのバグで悩まされた!in setAtttibute()メソッド

全くIEには、つまりMicrosoft社には困ったものである。Javascriptにおいても、安易なあるいは独自の機能拡張が、検討が不十分なまま独断的に行われているとしか考えられない。J-scriptなどと勝手に呼称を変えて、「俺が!俺が!」路線を相変わらず盲進するのはユーザーに迷惑千万なだけである。

今回も、そのバグ故にさんざん悩まされ、そのために消失した時間、悶々とした苦悩、落ち込んだ気分から怒りに震えて言いたい。!「くたばれMicrosoft!」───これ以外に適切な言葉を思いつかないほどである!

・・・と怒ってばかりいても仕方ない、何を怒っているのか、そもそも何をしようとしたのか、そしてどうなったのか、書き記しておきたい。

[起] クリック後にフォーカスを自動的に外したい

document上の任意の場所でクリックした後には、何も設定されておらず、かつ何もしなければフォーカスがそこに残る。それが気になる場合には、別の任意の場所をクリックするなどしてフォーカスを外さ(blur)ねばならない。それを何とか簡単かつ自動的に出来ないか、それが事の出発点であった。

ここに「簡単かつ自動的」とは、個々のonclick発生要素に、いちいちblue()を個別に書くのではなく、ブログオープン時やリロード時に、Javascriptを使って自動的に一括してblurをセットしてしまおう、ということだ。

一方で、スクリプトを使ってそれを設定してみたい、とのチャレンジ精神はあったにせよ、他方、何と言っても個別に設定する手間が大変なことが最大の理由となった。My HTML Templateにおいて、閲覧者にクリックを求めている箇所は 500 箇所に近い。これを個別に設定するなどおよそ不可能といって良いからだ。それは少なくとも知的な作業ではない!(苦笑)

[承] そしてどうしたか?

「ブログ内から全てのAタグを抽出し、その全てに対して、onclick属性を追加し、その値をthis.blur()にする。」───たったこれだけのことである。しかしながら、Javascriptの深い森に迷い込み、方向も分からず食料もないままに彷徨いながらの作業は余りに過酷であった。

まず、手元にある何冊かのJavascriptの本を探ってみたが、setAttributeメソッドに関する記述が殆どないか、あってもせいぜいありきたりの浅い説明だけであり、読んで理解し実際に使えるものが見あたらない。参考になったのはせいぜい、O'REILLY社刊『JavaScript第3版』や『JavaScript & DHTMLクックブック』くらいである。

次に、これらを読んでもうまく動作しないのでネットで検索を掛けたものの、こちらでもなかなか欲しい情報が掲載されたサイトがヒットしない。一般的なことが書いてあるだけのサイトが多く、実際に使うための情報が掲載されていないのだ。理解していることを前提にした記述はあふれているものの、理解するための記述が極めて少ないのである。

しかし、諦めるわけには行かない。この休みの間に解決できなければ恐らく一生解決しないであろう。時間が掛かる作業だけに今の休暇中にこそ成し遂げねばならない。そこで、腰を据えて次から次へとネットサーフィンを試みた。検索語を注意深く設定し、欲しい情報をまさぐった。

そして遂に、貴重な情報が掲載されているサイトをいくつか「発見」したのである。

[転] element.setAttribute(arg1,arg2) は何をするのか?

先ず最も肝心なことは、setAttribute は何をどうするのか、である。「要素に属性を設定する」との説明が一般的であるが、当該属性を新たに作るのか、それとも既存の属性を変更するのか、その点を明確に書いてある書籍やサイトが殆ど見つからない。まずここで躓いてしまった。

属性を新規に作るならば、属性を追加するとか、新規に設定するとか書くべきであり、ただ「設定する」だけでは更新なのか新規なのかが分からない。

更に、殆ど同じような setAttributeNode なる メソッドがあり、これとsetAttribute はどう違うのか、それをきちんと書いてあるサイトもなかなか見つからない。

確かに、これらはDOMについて半可通だからこそ発生する疑問であり、悩みであるため、「出直して来い」と言われればそれまでなのだが、そもそもDOMに関する体系的、総合的な書籍の存在を知らない。

そこで腰を据えて検索するに当たり、出来るだけ原典に近づこうと試みた。川の水は出来るだけ上流のものほど美味しいからである。そして、IE DOM、NN DOMそしてW3C DOMと色々なDOMがあることも改めて再認識したし、いくつかの根源的な記述があるサイトに遭遇することが出来た。まず礼儀として、かつ感謝を込めて参考にさせて貰ったサイトをリストアップしておこう。

さて、以上のサイトを概観してやっと以下のことが分かった。

  1. setAtttribute は、新しい属性を追加するか、あるいはそれが既存属性の場合には、その値を setAttributeで設定した値に変更する。
  2. まず、createAttribute(String name)にて、属性を作成しないと、setAttribute メソッドは実際に機能しない。作成された属性インスタンスが、setAttributeNode メソッドにより Element に設定される。
  3. 或る要素に対してsetAttribute メソッドによって設定した属性及びその値は、appendChild() などで要素に挿入されない限り、ドキュメント内に現われないが、しかし興味深いのは設定した属性はそれでも機能する。
  4. IEにおいてはsetAttribute メソッドにバグがあり、独自の方法で記述しないと意図が反映されない。

[結] before / after

以上の悶々とした学習過程を経て、やっとの思いでmyblogにおいて、クリックした箇所のフォーカスを自動的に外す、当初の目的を果たすことが出来た。

今回の作業結果は、ブログ閲覧上は余りに小さなことなので閲覧者は気がつかないだろう、と思う。そこで以下に、今回作業前後の比較を分かりやすく画像で較べておきたい。

左図の上段が適用前、下段が適用後である。これまではクリックした箇所は上段のように必ずフォーカスが残ってしまっていた。今回のblur()自動一括設定により、myblogのいかなる箇所のリンク設定箇所においても、クリックした後にフォーカスが自動的に外れることになった。

[補] 要素への属性のappendはどうする?

さて、確かにスクリプトはうまく機能しているのだが、実際にaタグ内の属性としてHTML文に挿入されないと、しっくり来ない。現状では狙い通りに機能しているが、下図のようにHTML文にはsetAttribute メソッドで追加した属性は追加されていないのだ。

【説明】

上図の左側はFirefox上で Web Developer を使って Element Infomation を見た図である。1でリンクが設定されているタイトル部分にオンマウスオーバーさせて、その要素のInfomationを2で見ている。確かにonclick="this.blur()"が設定されていることが分かる。一方、上図の右半分は、その時のソースを見たものである。3で示した該当部分のAタグに、onclick="this.blur()"の文字はない。

それでもちゃんと機能しているのだから不思議ではある。メモリ上でブラウザが必死に健闘していると言うことだろう(笑)。

それにしても当該要素内に属性を実際に追加する方法が見つからずに困っている。親や兄弟要素まで一旦遡及してから自分自身に戻って追加するのだろうか? そうだとすると、何と面倒な!簡潔な追加方法はないのだろうか?───この点に関しては上記の各サイトを見ても残念ながら解明できなかった。

当座の目的は果たしたからひとまず良しとするが、やはりHTML文に実際に書き込まれないと落ち着かない、というか中途半端の感は否めない。当該要素への属性のHTML文における追加が課題として残されたわけである。頂上を極められなかった口惜しさが残った。(^。^;)フウ

 90%近いシェアを握っているインターネットエクスプローラの描画エンジンを利用したタブbrowser。沢山のタブbrowserがあるが、多機能、カスタマイズフリー、スクリプト利用等で一日の長がある。Gekkoエンジンへの対応も行われ、IEからの自立独立の方向に向かっている。2005年7月にはIE7が登場する見通しの中で、今後の発展が望まれる。

 多様なCSS作成支援機能を備えた、タグ入力式 HTML&CSS作成支援エディタ。スキンデザインもすっきりしている。テキストエディター上で作成するよりも確実で安全にタグ打ちが出来る。
文字コードを選べないのが欠点。

 StyleNote同様のタグ入力式 HTML&CSS 作成支援エディタ。長年使用してきたが現在StyleNoteに乗り換えつつある。

 クリップボード履歴情報を活用する為のソフト。画像まで履歴を取ってくれるのが嬉しい。このソフトを使わない日は絶対ない程に重宝し、愛用している。

 起動中のウィンドウの「コピーできない」説明文などの文字列を取得し、コピー可能な文字データにするツール。何かと便利。

 ストリーミングデータを保存することが出来るソフト。動画利用には不可欠なソフトだ。

 無料ながらレイヤー機能を有し、スクリプトによる拡張も可能な、sleipnir作者が提供している優れもの画像編集ソフト。

 画面キャプチャソフトと言えばこれに勝るものなし、ではないだろうか? 様々な取得方法を有しており、ブログ作成にもHomepage作成に不可欠だ。Jtrimと並んでWoodyBellsの作品。

 複数ファイルの同時編集は出来ないが、透過pngも作れる画像編集ソフト。
(以下当該サイトから抜粋)初心者にも簡単に操作が出来るフォトレタッチソフトです。多くの加工機能で画像に様々な効果を与えることができます。非常に軽快に動作するため、ストレスなく操作できます。

 Animation Gifファイルを作れる無料ソフト。

 キャプチャソフト。画面内にサイト全体が表示しきれない場合でも、これを使えば全体をキャプチャすることが出来る。

 画像処理。画像のフォーマット変換のみならず、色数やサイズ、圧縮率の変更まで一括処理できてしまう『BatchGOO!』は、大量の画像をまとめて処理したいときに大変便利なソフト。BMP, TIFF, JPEG, PCX, PNG の相互変換をはじめ、色数・サイズ・解像度の統一、JPEG圧縮率の調節など、ホームページ用の画像や携帯電話用の壁紙を揃えるのに抜群の相性を見せる。(Vectorの当該ソフト紹介頁より抜粋引用)

 名前から直ぐに想像が付くように画像のサイズを測るためのソフトだ。Homepage作成には欠かせない。2カラム、3カラムのレイアウトを行う場合に大変重宝する。

 ランチャーソフトは沢山あるが、中でもこれが一押しだ。2年以上使ってきたがその操作性には毎日満足している。これを使い始めてからデスクトップには一切のアイコンを表示することをやめてしまった。

 AdobeReader7によって、起動時間が長すぎるという長年のユーザーの不満はある程度解消した。そのためこの高速化ソフトは存在価値が低下してしまったかもしれない。AdobeReader6迄はこのソフトによる起動高速化で恩恵を受けてきた。

 IE専用が難点だが、様々なサイト内でIDやパスワードを入力するのに重宝するソフト。コンテキストメニューから簡単に起動できるのがGood! sleipnir等のIEの描画エンジンを利用しているブラウザでも使える。

 利用しているパソコンの諸元値を取得するには、このソフトがベストだ。インストール済みソフトの一覧が取得できるのも嬉しい。

 WMPは機能が豊富なだけ重い。RealPlayerも同様だ。そこでMedia Player Classicを使いたい。動作が軽快なだけではなく、対応しているファイル形式もすこぶる多く、これひとつで、wmvもrmも表示できてしまうのだから凄い! 数多あるMedia Playerの王様と言えるだろう。

 自宅でPCを起動しているときには必ず起動しているメディアプレーヤー。何かと過剰なWinampよりも、起動も速くスキンはシンプルだ。

 DivX, Xvid, Mov, Vob, Mpeg, Mpeg4, avi, wmv, dv, などの動画をDVD-Video形式に変換できるフリーソフト。クリックするとDVD関連ソフト紹介サイト=「DVDなToolたち」なるHomepageが開きます。