K2さんの雑記
2002-12-07(Sat)■ [TTBase]AlwaysK2Eプラグインプラグイン中毒にかかっていますので(^^; また一本作ってしまいました。 いや、実は、今日、別のことをやろうとして、エクスプローラからK2Editorに関連付けられていないファイルをK2Editorで開こうとして、ふっと閃いてしまいました。 そういやー、昔(Win95の頃)は、WZEditor 3.0を入れると、エクスプローラ上でSHIFT+ENTERを押すと、強制的にWZEditorで開いてくれたよなぁ。あれ便利だったなぁ。 あれ確か、レジストリの関連づけの裏技みたいなの使ってたんだよなぁ。Windows98あたりから、その裏技が使えなくなって、この機能が消滅してしまったんだよなぁ。 ん、そういえば、常駐もんでこの機能を実現できるんじゃないの? エクスプローラ上でSHIFT+ENTERを監視して、そのイベントをエクスプローラから横取りして、K2Editorにファイルを送っちゃえばいいやん。 大枠は割と簡単にできた。で、いざエクスプローラで選択されているファイル名を取得しようとして、はたと行き詰まってしまった。ファイル名はリストビューから取ればよいんだろう。じゃぁフォルダ名はどうするの。アドレスバーにあるじゃない。んー、でもフォルダオプション変更すると、ここフルパスじゃなくなってしまうんだよなぁ。 それからWEBで検索をしてみたが、あんまりいい情報がない。DelphiMLで、どなたかが、「ShellWindowsとInternetExplorerを使えばいけるのではないか」というアイデアを書いていらっしゃるのを見つけたが、具体的なコードはない。ShellWindowsで調べても、あんまり情報がないのだよなぁ。で、もう一度DelphiのVCLに戻って、ShellWindowsを調べると、TShellWindowsというのがあった。どうやら、エクスプローラとインターネットエクスプローラを列挙してくれるActiveX系のオブジェクトのようだ。使い方が全くわからん。検索しても、Delphi関連のページでは情報がほとんどない。適当にやってみたら、なんとかできてしまった。 SW := TShellWindows.Create(nil); Count := WS.Count; for I := 0 to Count - 1 do (SW.Item(I) as InternetExplorer).LocationURL これで、フォルダ名のフルパス(実際にはURL形式だから加工が必要だが)が取れる。で、そのまま完成型まで持っていったが、このプラグインをエクスプローラで使用すると、エクスプローラを終了するときに、エクスプローラが結構致命的なエラーを吐くことがわかった。 昔、フックとDelphi製のDLLで同じようなエラーを出してかなり長時間はまったことがあったので、今回もそれかと想像。フック部分はVCで書いていたのだが、慣れの問題で、Delphiで書いた方が開発速度が一桁くらい上がるのよねぇ。で、ActiveX系のややこしいところはDelphiで書こうとしていたんだが、全部VC++に移植しないとあかんかなぁと。まぁ、とりあえず調査調査で、結局、先ほどのコードが原因だったことが判明した。 実際には、 var SW: IShellWindows; SW := CoShellWindows.Create; for I := 0 to SW.Count - 1 do begin (SW.Item(I) as InternetExplorer).LocationURL; と書く必要がありました。うーん、この辺に関しては絶対的な知識不足だー。こんなコードをすらすら書けるようになるのか。やはりCOM関連は一度ちゃんと勉強しないといけない。でも、関連ドキュメントが少なすぎるよー。 さて、もう一つ問題は、エクスプローラのリストビューから、ファイル名を取得する部分。これが結構ややこしくて、そう簡単にはファイル名を教えてくれない。共有メモリをちゃんと作成しないといけないし、一見使えそうなListView_GetItemTextは使えないことが判明。この辺はCで書いた方が楽らしい。Cなら上記マクロはちゃんと動くようだ。 で、最初は楽勝楽勝と思っていたが、最終的にかなり大変な作業になってしまった。 しかし、懐かしのSHIFT+ENTERでテキストエディタ強制起動というのは、やっぱりかなり便利。まぁ、こんなのを便利だと言える人は、やっぱりかなり普通の人ではないのかもしれないけど。 うちのベータページに置いてあります。興味のある方はどうぞ。 2003-12-07(Sun)■ POPFileちゃんとインストールできたはずだったんだが、日本語メールを受信すると、 # Encode did not return a true value at Classifier/Bayes.pm line 2439, というエラーが出てしまう。require Encode;の行でエラーが出ているようなのだが、よくわからない。今は時間がないので、放置とします。 ■ 追記1 Webから言語を日本語にしないと、Encodeなどは使用されないらしい。だから今までうまく行っていた。先ほど日本語に変えてからエラーが出るようになった。 Kakasi.pmもインストールされていないし、まだEncodeをrequireしたときになぜエラーが出るかもわからないので、とりあえず言語をEnglishに戻した。 perlスクリプトを作成して、require Encode;だけ書いたら、正常に動作するので、エラーが出る理由は依然不明。 2004-12-07(Tue)■ [BIKE]インターバル走医科学センターの足立先生に近況と質問のメールを送っていたのだが、その返事が来た。 その中で、インターバル走の高強度時間を2分としていたが、もう少し長い方がいいのではないかと提案されたので、高強度時間を4分とし、インターバルを1分30秒とした。まぁなんとか走れるけど、結構精神力が必要。 ■ うちの家族に風邪が蔓延先週は私が風邪で沈没。今週は嫁と娘が沈没。私がひく前から、娘は鼻をぐしゅぐしゅ言わせていたので、てっきり私は娘からうつったのだと思っていたのだが、違ったのか? そういえば、11月半ばも、家族全員風邪をひいた。もう運命は一蓮托生だね。 急に寒くなったから、みなさんもお気を付けください。 ■ IBMとLenovo、PC事業で合弁へどうやら本当のようだ。 製品品質が落ちなければよいのだが。落ちなかったとしても、IBMブランドって、高級ブランドが持つ、ブランドだけで買う人がいるというイメージを持つが、これに中国の企業が参画(というか、株式の過半数を買うというので事実上買収か)することで、このブランドイメージが落ちてしまうのではないだろうか。 私も「いつかはIBM」なんて密かに思っていたのだがなぁ。 2006-12-07(Thu)■ ekken♂ : 鼻づまりを解消する手術をしたよ私も、幼少の頃から鼻炎・鼻づまりとは格闘している。 手術があるという話も聞いたことがあったが、鼻に何かつっこまれてと考えると、ぞっとしていた。あまり考えたくない。なんて思いながら、10代・20代を経過し、30代に入ってからはだいぶましになった。 一応花粉症ではないし、ある時期に集中して鼻の具合が悪くなるわけではないが、ましになったとはいえ、年のうち通算で2ヶ月くらいは鼻がつまっているのではないだろうか。 で、最近の治療がどんなのかがリンク先に書かれていたよ。怖いよ。微妙だなー。 鼻がすっきりすれば、歌とかもっとうまくなるなーなんて大学時代とか思っていたけど、この話を見るとやっぱちょっと敬遠。苦しみの先には、見たこともない世界が広がっているのかもしれないけどね…… 2007-12-07(Fri)■ Code Craft ~エクセレントなコードを書くための実践的技法Code Craft ~エクセレントなコードを書くための実践的技法~(Pete Goodliffe) ちょっと高かったけど、読みたかったので、さっきぽちっ。 ■ LGS-RSR 3「K2さんの雑記(2007-10-14)」で発注していたやつが、昨日到着。平日に暇なんか無くて、開梱もできず。 奇跡的に、この土日は休みっぽいので、セットアップできそう。 naoさん、買うなら今ですぜ。(人気モデルはすぐなくなる……) [追記]やはり休みは奇跡で、奇跡は簡単におきないものでした…… いつ開梱できるんだろう…… 2008-12-07(Sun)■ 無事帰ってきたよ最後の日の飛行機は、ホテルを朝の4時半に出て、家についたのが日本時間の19時半。時差が15時間あるから、30時間! サンフランシスコでの乗り継ぎは2時間あったのだけど、国内線が30分遅れてちょっとびびりった。 いやはや疲れ果てました。帰りの飛行機ではサンフランシスコまではアイマスクして寝て、サンフランシスコからはがんばって起きていようと思ったのだが、最初は睡魔に負けて2時間ほどぐーぐー。日本時間の9時くらいからはしっかり起きてました。 昨夜は10時頃寝て、本日7時起床。今日は普通に動くつもりだけど、時差ぼけはどうかな。 ■ 平均19000歩/日出張目的が展示会参加による市場調査と言うこともあって、よく歩いた。アフター5もなぜかよく歩いた。それで、現地にいる間は一日25000歩ほど歩いていたよ。 1965|09|
|
//
自己紹介
自己紹介
広告
計るだけダイエット
つっこみリスト
TrackBacks
日記仲間
な/
す/
ひ/
最近の日記
|
◆ 掃除人 [専属ドクターつきのトレーニング・・・羨ましい・・ 私は対抗上、勢いとど根性だけで行かせてもらいますw ところで、一..]
◆ K2 [若さ・才能等、いくらでもありますやん。 京見峠TTは、今やってもきっと14分台しか出ません。あんまり変わってないよ。..]