「Windows アプリ」カテゴリ内の記事 このカテゴリをはてなブックマークに追加 このカテゴリを含むはてなブックマーク (初公開日順)

2010年5月19日 (水)

日本語IME「風」をVistaにインストールするとき、解除キーを登録するところで失敗する

昨年、Windows 7 の発売前に折悪しくというか、母の PC が故障してデータの復活もできない状況に陥り、新しい Windows Vista のノート PC を購入した。

未整備に近いテスト環境として、母の PC に自分が使っているソフトは極力入れない方針にしたのだが、Firefox と IME ぐらいは入れておこうとして、両者のインストールを試みた。Firefox は、アドオン周りのバージョン違いの不満を除けば、もちろん、インストールはすんなりできた。

IME として、私は、日本語単漢字変換 IME 『風』を使っている。ただ、これは公式ページでは Vista への対応はうたっておらず、Vista 後の更新はほぼ止まっているというべきで、このインストールがうまくいくかはやってみなければわからない状態だった。

インストールしたところ、IME としてタスクバーに表示されるところまではいくが、解除キーを登録しようとするところで、何度入力しても登録されてない状態になった。

他のソフトに関する類似症例を見つけて、解決した。その方法は、[ユーザーアカウント制御(UAC)を使って コンピュータの保護に役立たせる]をいったん無効にしたあと、登録(し、再度、UAC を有効に)するというものである。

続きを読む "日本語IME「風」をVistaにインストールするとき、解除キーを登録するところで失敗する"

2010-05-19 18:48:50 (JST) in Windows アプリ | | コメント (2) | トラックバック (1)

2006年2月27日 (月)

DDwin を Firefox や Meadow から使うとき latin-1 のアクセント記号を抜くようにした。

Firefox について同じようなことをやってる人がいた。《chez sugi:firefox と DDWin》を参照すると、EPWING の規格上、独仏語だとアクセント文字がないほうが良いらしい。ちなみに latin-1 の文字列を sjis にencode しようとすると、アクセント記号と文字にわかれるのではなく、文字化けしてしまう。

そういったわけなので、アクセント付の文字をいちいちアクセントなしに変換する関数を書いた。私は独仏語辞典を持ってないから、Deja vu とかそのあたりの国語辞典に載ってる単語でしか確認できないけど。

ついでなので、《ddwin.el》のほうにも同じような関数を書いた。できたスクリプトについては《DDwin.js》へ。
更新: 06/02/27
初公開: 2006年02月27日 00:37:55
最新版: 2006年02月27日 10:01:42

2006-02-27 00:37:52 (JST) in Emacs/Meadow, Firefox, Windows アプリ | | コメント (0) | トラックバック (0)

2006年2月26日 (日)

Windows のコマンドライン cmd.exe 用のエスケープってどうやるの?

ActivePerl からパイプを使って GnuPG を起動しようとしたが、 perlipc に載ってる方法ではダメみたい。pipe の fileno で取ったファイルディスクリプタもうまく渡せないみたいだし。

それで次のようなことをしようとしたんだけど、pipe のコマンドの引数をリストでは渡せないっていわれる。

open(GPG, '-|', $GPG, '--list-keys') or die;


しょうがないので、コマンドラインを連結しましょうということになったのだが、Windows の cmd.exe の構文がわからない。

ググってみると《CMD.EXE TIPs》という Wiki に構文が書いてあった。そこの文章を参考にいろいろ試してみたけど、次みたいのでいいのかな?

sub quote_for_command {
  my $r = "";
  while (@_) {
    my $arg = shift;
    $arg =~ s/\%/^\%/gs;
    $arg =~ s/"/"""/gs;
    $r .= " " if $r ne "";
    $r .= "\"$arg\"";
  }
  return $r;
}


でもこういうのは需要あるはずだから探せば見つかりそうなものなのに、 Perl でやってるのを、ちょっと見つけられなかった。
更新: 06/02/26
初公開: 2006年02月26日 05:47:05
最新版: 2006年03月11日 03:58:07

2006-02-26 05:47:03 (JST) in Perl, Windows アプリ | | コメント (0) | トラックバック (0)

native2ascii.pl をいちおう作ってみた

Firefox の .xpi をいじろうとすると、locale の部分で .properties の拡張子を持ったファイルを JAVA で使える形式にしないとダメなんだそうだ。そのためのコマンドとして native2ascii というものが JDK に入っているらしい。

ただ、それだけのために JDK を入れるのもバカらしいので、Perl のスクリプトを書いてみた。native2ascii.pl がそのファイル。

ものすごいテキトー。フィルタらしく一行づつ処理せず、ファイル全部をいったん読んで、一気に処理してる。--encoding=japanese と指定すると自動判別するんだけど、guess_encoding も最初の n バイトとかじゃなくて、全部わたして guess させてる。

まぁ、自分が使えりゃそれでいいし、ダメだったら JDK をすなおにインストールすればいいし。

更新

2006-02-28
Surrogate Pair に対応。
Javaにおける文字/文字列の扱い方》を参考に \uuXXXX に対応。
2006-02-26
公開。
更新: 06/02/26,06/02/28
初公開: 2006年02月26日 05:31:34
最新版: 2006年02月28日 03:47:16

2006-02-26 05:31:33 (JST) in JRF 作成ソフトウェア, Perl, Windows アプリ | | コメント (1) | トラックバック (1)

2006年2月25日 (土)

DDwin.js: Firefox から電子辞書 DDwin (または EBWin) を起動する

JavaScript Actions(JSActions) を使って Firefox の中でセレクトした文字列を EPWING 対応電子辞書閲覧ソフト DDwin で検索する。

基本的には一本道で、次のような手順。

1.
JavaScript Actions のサイトから最新版と ScriptSet をダウンロードし、インストール。動くようにする。
2.
上と同じところから JSAButton をダウンロードし、インストール。 Button フォルダを作っておく。
3.
DDwin 用の javascript ファイルを作る。例えばDDwin.jsを selection/ 以下に置き、さらに、これを Button/ 以下に名前を変えてコピーする。例えば 70_NL_DDwin.js などとする。
4.
DDwin のアイコンを適当なツールで取り出し、先の Button/ 以下に 70_NL_DDwin.png などとして書き出す。私は 16x16 で書き出した。
5.
ツールバー上でカスタマイズを選択し、JSActionsButton というのを適当な場所に置く。このボタンを一度クリックすると、先のアイコンが表示される。


DDwin.js は次のようなファイルにした(一部省略)。js のエンコーディングは sjis でいいみたい。DDwin の替わりに EBWin を使うのもほぼ同様で、exec のところが違うだけ(EBWin.js)。

var query;

if(_jsaCScript.context.isTextSelected){
    query = window.getSelection().toString();
} else {
    var mes = "検索文字列を入力してください。";
    mes = _jsaCScript.convertCharCodeTo(mes, "shift_jis");
    query = prompt(mes, "");
}

if(query != null) {
    query = remove_latin_1_accent(query);
    query = query.replace(/^\s+/, "");
    query = query.replace(/\s+$/, "");
    query = query.replace(/^[\x21-\x2F\x7B-\x7E]+/, "");
    query = query.replace(/[\x21-\x2F\x7B-\x7E]+$/, "");
    query = _jsaCScript.convertCharCodeFrom(query, "shift_jis");
    _jsaCScript.exec("c:\\Program Files\\DDwin\\ddwin.exe", 
                     ",2,Firefox用,G1," + query);
}

function remove_latin_1_accent(s) {
    s = s.replace(/[\xC0-\xC5]/g, "A");
    // ...省略...
    s = s.replace(/[\u017F]/g, "s");
    return s;
}


"Firefox用"は DDwin で使うグループ名。


ちなみに、これコマンドラインに渡すとき convertCharCodeFrom なんだよね。これを convertCharCodeTo を使うと思ってはまってしまった。 JSActions 2.2.0 のバグかもしれないと思ったが《掲示板》をよく見ると exec を使う例で、ちゃんと From でやっていた。

JSActions の今の管理人によると

>
ぶっちゃけ、自分も使ったときに間違ったんですが、JSActions 0.8系にあわせました。


……だそうで convertCharCodeFrom であっているよう。FromUnicode にしてくれたらわかりやすかったのに。


なお、通常ここに書いたようなことをやりたければ、DDwin の配布ページでいっしょに公開している DDpop を使うのが普通なのかもしれません。


参考

ファイル

DDwin.js
JSActions の selection または JSAButton で使うためのスクリプト。
DDwin-by-Dblclick.js
JSActions の startup に置くことで、 DDwin.js をダブルクリックで呼べるようにする。
EBWin.js
DDwin の替わりに EBWin を使う場合のスクリプト。
jsactions.patch
jsactions_2.2.0.xpi でテキストエリアなどのセレクションも取れるようにするためのパッチ。要 .xpi の展開、ビルド。ただし、現在のバージョンではすでに統合されていて不要。


更新

2006-03-10
jsactions.patch を使うときフォームの中で button などについてもセレクションを取ろうとしてエラーになっていたので、text と textarea のみ対応することにした。
2006-02-28
フォーム内のセレクションに対応するためのこのパッチ を jsactions_2.2.0.xpi にあてた場合に対応。
2006-02-26
独仏語の検索のために latin-1 のアクセント記号を抜くようにした。単語の前後の非英数の ASCII 文字をとりのぞいた。
2006-02-25
セレクションがないときに入力ボックスを開くようにした。
更新: 06/02/25-06/03/10,2009-02-26
初公開: 2006年02月25日 01:08:37
最新版: 2009年02月27日 19:29:25

2006-02-25 14:22:08 (JST) in Firefox, Windows アプリ | | コメント (4) | トラックバック (3)

2006年2月16日 (木)

「1607:InstallShield Scripting Runtime をインストールできません」

とある USB 無線 LAN クライアントを導入しようとするがドライバの install で失敗した。「Internal Error 2203. *.ipi, -2147287035」とか「1607: InstallShield Scripting Runtime をインストールできません」とか言われた。

この原因は TeX や Cygwin を導入するときに設定した c:\tmp のパスのパーミッションが 700 となっていて、SYSTEM グループのユーザーも書けなくなっていたことにあった。

環境変数 TEMP を使うインストールがそのような設定後はじめてだったことに気付かず、ドライバやインストーラのバージョンの違いによるバグと思い込み、かなりはまった。


どうもこの記事が最近よく見られているようで、以上の情報だけでは申し訳ないので、いくつかリンクを。

私は Cygwin を使っているため、Windows XP Home Edition でも簡単にアクセス制御ができます。しかし、普通は Home Edition の場合、フォルダのセキュリティタブからアクセス権を設定できません。

次のリンクによると二つの方法があるようです。

方法 1.
セーフモードを使う。
方法 2.
コマンドプロンプトから cacls というコマンドを使う。



方法 1.
セーフモードを使う。


起動時に F8 キーを押してセーフモードで起動すると、Home Edition でもフォルダのプロパティのセキュリティタブからアクセス権の設定ができるようになります。そこで Temp のフォルダに Administrators と SYSTEM を追加して共にフルコントロールにします。英語でよろしければ次が参考になるかもしれません。

方法 2.
コマンドプロンプトから cacls というコマンドを使う。


「スタート→アクセサリ→コマンド プロンプト」として次のコマンドを実行すれば、おそらく上と同じことができると思います。

C:\>cacls %TEMP% /E /P SYSTEM:F
処理ディレクトリ: C:\Temp

C:\>cacls %TEMP% /E /P Administrators:F
処理ディレクトリ: C:\Temp



ただし、私はフルコントロールにできるところまでしか確認していません。 Cygwin なので chmod 777 しました。TEMP は普通、誰でも書けるようにしておくものですから……。chmod +t は Home Edition なんでやってませんでした。もちろん、方法 3 として Cygwin をインストールすることもできますが、すでにインストールしているような人以外は無用の長物です。

他に iPod の FAQ として、Temp を消して作り直すというワザも紹介されていました。

ところで、この記事だけアクセスが多いということは、やはり iPod が原因でここに来られているのでしょうか……
更新: 05/06/17,06/03/11
初公開: 2006年02月16日 03:13:45
最新版: 2006年03月11日 03:50:10

2006-02-16 03:16:33 (JST) in Windows アプリ, ハード | | コメント (2) | トラックバック (0)

2006年2月10日 (金)

Firefox のダウンロードがミョーに遅くてイライラする

ググって調べるとバージョンアップ時に上書きインストールをし、ダウンロードの履歴がたまっているとそうなるようです。「上書きインストールなんかするな」って論調でしたが、とりあえず履歴を消すことで大幅に改善されました。うーん、まとめサイトの FAQにのせといて欲しいぐらい。

以上が記事。下がグチ。

グチ1
でも、上書きインストールってやりますよね?だって、そうじゃないなら、プラグインのアップデートウィザートなんて出ないだろうし。インストーラじゃなくアーカイブで、その Readme のインストール方法に注意があれば、アンインストール後、再インストールとかもしますけど。

グチ2
ちなみに、Wiki だけど、開発者側じゃないから、確証できないし、必要最小限これをやるってのがわからないんで、私は書きたくないんです。皆がユーザーだったら自分も同じ立場なんで書く気になるけど、中に開発関係者がいるとどうも気おくれするんですよね。他のユーザーはどうなんでしょ?この辺りオープンソースの意外な弱点なのかも。
更新: 06/02/10
初公開: 2006年02月10日 03:45:20

2006-02-10 04:21:45 (JST) in Firefox, Windows アプリ | | コメント (0) | トラックバック (0)

液晶ディスプレイで 3D 表示がちょっと変

フィギュア写真》の背景を撮るため、Winamp の Milkdrop ビジュアライザーを使っていて、どうも白いモヤみたいなのがかかっておかしいと思っていた。他のマシンで動いている Milkdrop に比べて色づかいも貧相。

プリセットが違うのかな?と、とりあえず、ここの Milkdrop のプリセット集をもらってきた。

あれ゛?増えてないぞ。あー、何だ。追加プリセットが install されるディレクトリが、C:\Program Files\Winamp\Plugins\Milkdrop\All Presets だから、元々のプレセットをそこにもコピーして、'l' を押してディレクトリを All Presets にすりゃいいのか。

ん゛ー、でもやっぱり色づかい変なんじゃない?液晶パネルだからかなぁ。と思って RADEON の CATALYST Control Center を調べてもそれらしい項目は……「高解像度のディスプレイにはDVI周波数を減らす」って、ドギツイ色づかいだと関係ありそう。

高解像度で乱れたりする場合は ON にしてくれって書いてるから、別に OFF にしてもいいよな。……ってことでチェックを外した。

どうも正解だったようだ。
更新: 06/02/09,06/02/10
初公開: 2006年02月09日 21:28:19

2006-02-10 03:54:31 (JST) in Windows アプリ, ハード | | コメント (0) | トラックバック (0)

2006年2月 9日 (木)

Firefox 1.5 でフォントがゴシックになっちゃった

やっぱ前のほうがイイってことで、オプションの既定のフォントを「MS P明朝」にすると……あれ?1.0.7 でゴシックで表示されてたところも明朝になってしまふ。

そこでそのとなりの「詳細設定」ボタンを押して、プロポーショナルを明朝に、ゴシック体を MS Pゴシックにしたところ、前とだいたい同じになった。

Amazon とかでフォントの斜体を使ってるページ、どうもうちの環境だとゴシックの斜体は美しくないんで、そこは明朝のほうが数倍マシだと思う。
更新: 06/02/09
初公開: 2006年02月09日 11:29:43

2006-02-09 11:29:43 (JST) in Firefox, Windows アプリ | | コメント (0) | トラックバック (0)

Firefox 1.5 で Tabbrowser Extensions から Tab Mix Plus に乗り換えた

Firefox 1.5 にしてから、これまでポップアップのブロックができていたサイトでポップアップが出るようになってしまった。しかもポップアップが出たあと、タブに吸収されて、そのウィンドウがリサイズされてしまう。

症状がタブまわりなので、ひょっとしたら……と思って、Tabbrowser Extensions をはずして Tab Mix Plus を入れたところ、解決できてしまった。

これまでプラグインの管理がメンドウなんで TBE を使ってきて、今回はじめて Tab Mix Plus を使ったんだけど……これで十分っていうか、自分的にはこっちのほうがイイ。ちゃんと自分好みにカスタマイズできるし、閉じたタブの履歴もあるし。
更新: 06/02/09
初公開: 2006年02月09日 11:08:48

2006-02-09 11:08:48 (JST) in Firefox, Windows アプリ | | コメント (0) | トラックバック (0)

2006年2月 8日 (水)

Firefox 1.0.7 から Firefox 1.5.0.1 にバージョンアップした

今回はほとんどメジャーバージョンアップなので、過去のプラグインがそのままでは使えないことが多いようで、install 後の起動で、ウィザードの指示に従って、そのバージョンアップを行なった。

ただし、いくつかの物については、firefox 1.5 に対応していないとのことで、自動的に無効にされてしまった。しかし、それらのほとんども手動で update してやれば問題なく動いている。

さて、それでも動作しない物が私の環境では一つだけあった。 ImageZoomer である。調べると《互換性について - Firefox更新情報 Wiki*》というところにNightly Tester Toolを使えば良いとの情報があり、実際その通りだった。

ちなみに、そこでは、Nightly Tester Tool Lite でも良いような記述に見えるが、私は Lite ではうまくいかなかった。


また、install 時は毎度のことだが、Emacs バインドを使うために、以前使っていた C:\Program Files\Mozilla Firefox\res\builtin\platformHTMLBindings.xml をキーバインドとするために C:\Program Files\Mozilla Firefox\res\forms.css の一部を以下のように書き換えている。

$ cd /cygdrive/c/Program\ Files/Mozilla\ Firefox/res/
$ diff forms.css.orig forms.css
--- forms.css.orig  2006-02-08 14:08:17.609375000 +0900
+++ forms.css   2006-02-08 14:11:06.515625000 +0900
@@ -90,7 +90,7 @@
   word-spacing: normal;
   letter-spacing: normal;
   cursor: text;
-  -moz-binding: url("chrome://global/content/platformHTMLBindings.xml#inputFields");
+  -moz-binding: url("resource://gre/res/builtin/platformHTMLBindings.xml#inputFields");
   text-indent: 0;
   -moz-user-select: text;
 }
@@ -111,7 +111,7 @@
   letter-spacing: normal;
   vertical-align: text-bottom;
   cursor: text;
-  -moz-binding: url("chrome://global/content/platformHTMLBindings.xml#textAreas");
+  -moz-binding: url("resource://gre/res/builtin/platformHTMLBindings.xml#textAreas");
   -moz-appearance: textfield;
   text-indent: 0;
   -moz-user-select: text;


ちなみに、書き換える前の platformHTMLBindings.xml は C:\Program Files\Mozilla Firefox\toolkit.jar の content/global に入っている。
更新: 06/02/08
初公開: 2006年02月08日 15:50:43

2006-02-08 15:54:16 (JST) in Firefox, Windows アプリ | | コメント (0) | トラックバック (0)

2006年2月 1日 (水)

「風」の wnd ファイルを Meadow でエディットすると起動しない!

日本語 IME はいろいろあります。普通の人は「IME って何?」ってなるでしょう。トシ食ってる人なら、ATOK とかの FEP のことだよって言えばわかってくれるかな。簡単にいえば入力時にひらがなを漢字にする仕事をしてるソフトのことです。

私は、単漢字変換 IME 『』を使っています。単語の漢字をド忘れする私には、何かと不便なこともありますが、くだけた文章を書くときや英単語が頻繁にまじる文章には便利です。

さて、この『』、歴史はあるのですがユーザー数が少ないためか、今のところ完成度はやや低めです。Windows アプリでは Unicode が使えることが前提となりつつあると認識しているのですが、その点が弱いようです。変換時に常に候補の Window を表示するのですが、たまに、設定画面を出さないと候補の Window が消えないことがあります。

とはいえ、とても便利なんですよ(フォロー)

で、もう一つ Emacs/Meadow 特有の問題らしいのですが、どうも c:/WINDOWS ディレクトリにある設定ファイルをいじったあと、バックアップファイル("~" が拡張子のうしろに付いたもの)を残したままにしていると、起動しないようなのです。まぁ、c:/WINDOWS にゴミを残すほうも問題ではあるのですが……
更新: 05/05/02,06/01/31
初公開: 2006年02月01日 01:35:36

2006-02-01 01:41:35 (JST) in Emacs/Meadow, Windows アプリ | | コメント (0) | トラックバック (2)

USB 機器などの「ハードウェアの安全な取り外し」をコマンドラインから呼ぶ

なぜか私のメインマシンで EPSON の USB 機器(スキャナ、プリンタ)を使うと不具合が起きます。他の組み合わせはなんともないので、完全に相性の問題なのでしょう。

その不具合ですが、認識はされ正常に動作しますが、ハードウェアの安全な取り外しにそれらの機器が出てきません。その後、コンピュータを再起動すると、「ハードウェアの安全な取り外し」アイコンがタスクバーから消えてしまいます。

電源を切ってから、起動しなおすと直っていたりいなかったり……

再現性がないので、さっぱり原因がつかめません。「ハードウェアの安全な取り外し」アイコンが消える現象自体は一般的な報告があるようで、起動時になんらかの処理に時間がかかると、シェルへのアイコンの登録が失敗することがあるそうです。

UPnP を使わないようにすると直ることがあるそうで、確かに UPnP を切ると、こころなし不具合の再現頻度が減る気がしますが、まったくなくなるわけではありません。

しかたないので、非常時のためにコマンドラインから「ハードウェアの安全な取り外し」を呼べる方法を調べました。次のようなコマンドです。

rundll32.exe shell32.dll,Control_RunDLL hotplug.dll


コマンドラインに alias で登録するなり、ショートカットの内容をこれにすれば、アイコンが消えても安心です。

でも、理由がわからないので気持ち悪いままではありますが……
更新: 05/10/27,06/01/31
初公開: 2006年02月01日 01:14:11

2006-02-01 01:14:11 (JST) in Windows アプリ | | コメント (2) | トラックバック (0)