miau's blog?

| 1 | 2 | Next»

2005年 5月 02日 (月曜日)

仕事で hack っぽいことを

- Work on miau's blog?
現在手伝い中のシステムは、

PHP→ASP→ActiveX→DLL→EXE

なんてやたら複雑な造りになってて、DLL と EXE ってのは旧システムを作った会社から提供されています。
で、今回私が作ってるのは ActiveX の部分で。
DLL のドキュメントはあるものの、基本的にブラックボックスなので、妙な手を使って調査する機会が多かったりして。

そのへんのネタです。
[Read More!]
03:42:43 - miau - No comments - No Trackbacks - Permalink

VC++ 反省

- Work on miau's blog?
前項で「DLL のソースが〜」とか書きました。
ここで「DLL のソースがあるんなら、Debug モードで DLL をビルドしなおして、ステップ実行でデバッグしたほうが早いんじゃない?」と思った方もいるかとおもいますが・・・まったくもってその通りです。

それができなかった理由として、
・作ってるのが ActiveX だったので、そういうことはできないと思ってた
・呼び出し元が VBScript だったので、そういうことはできないと(以下略)
・DLL のソースが全て揃っているという認識がなかった
というのがあるわけで。

さらに分析すると、
・VC++ に不慣れすぎた
・ActiveX の動作原理がわかってなかった
・VC++ デバッガの動作原理がわかってなかった
・ドキュメントとファイルが雑然としている
あたりが原因と言えそうです。
最初の2つに関しては、この休みですこし鍛えておきたいところ。

ちなみに、VBScript から呼び出す場合のデバッグ方法は、

プロジェクト→設定→デバッグ で、
・デバッグ セッションの実行可能ファイル: C:\WINNT\system32\wscript.exe
・プログラムの引数: <対象の VBS ファイル>
とでもしておくといいらしい。
04:15:20 - miau - No comments - No Trackbacks - Permalink

VBScript でのデバッグ

- Work on miau's blog?
戻り値を MsgBox() とかで画面に出してたんですけど、文字数に制限があるんですね。
1 byte 文字で 1024 文字までとかなんとか。

こういう場合は WScript.Echo を使え、と。
で、ファイルに吐きたければcscript hoge.vbs > hoge.out とか?

このへんも不慣れだなぁ・・・。
04:23:29 - miau - No comments - No Trackbacks - Permalink

2005年 5月 03日 (火曜日)

Window XP Home Edition + 暗号化

- General on miau's blog?
現在帰省中なわけですが。
USB メモリに必要なデータを入れておいたわけです。

が、ファイルを開こうとすると「アクセス権がありません」とかなんとか。
ん?ACL が変なことになってる?
と、Explorer で確認・・・はできないのか。Home Edition だから。

CACLS コマンド使えたりしないかなー?
と試してみると・・・使えるっぽい。
・・・え?Windows XP の機能比較によると、アクセスコントロールはできないって。
試しに sample.txt とか作って、cacls sample.txt /P Everyone:N とかやると、ちゃんとアクセス制限されてるし。

・・・ま、それはともかく問題のファイルはちゃんと Everyone にフルコントロールの権限がついてるっぽい。
ってことは、暗号化されてるのか、これ。
道理で変な色で表示されてるわけだ。

なんで暗号化されてるかというと、心当たりがありまして。
USB メモリを簡単に暗号化する方法ないかな、ってことで、USB メモリを NTFS でフォーマット→ACLS 設定やら暗号化やらを実験してたんでした。
で、ACLS や暗号化による制限自体はうまくいったんですが、別 PC でも ACLS や暗号化の再設定ができるから意味ないという結論に達したと。

Home Edition だから暗号化の解除はできないんだけど・・・もしかして CIPHER コマンドも使えたりしない?
と、試してみましたが・・・そんなコマンドはありません、と。

ということで、EFS による USB メモリの保護は、WinXP Home Edition に対してだけ有効らしいです。
・・・役に立つことないでしょうけど。



(追記)
>別 PC でも ACLS や暗号化の再設定ができるから意味ない
これ、嘘かも。
さっき別 PC で試したらできませんでした・・・。

あと、cipher.exe コピーすれば CIPHER コマンドは使えるけど、変更はできないっぽい。
03:47:14 - miau - No comments - No Trackbacks - Permalink

QuickEntry

- General on miau's blog?
QuickEntry - Ken's and Anna's Page

Becky! プラグイン。
D&D で振り分け設定ができるから、かなり便利。
04:52:12 - miau - No comments - No Trackbacks - Permalink

2005年 5月 05日 (木曜日)

DLL Toys

- General on miau's blog?
DLL Toys

お客さんに教えてもらったツール。
DLL の依存関係を調べるツールはいくつかあるけど、EXE ビューアのインポートタブには動的リンクも表示できて便利。
日本語の表示がおかしいソフトを調べると、VB6jp.dll が必要なことがわかったりして。
06:04:22 - miau - No comments - No Trackbacks - Permalink

2005年 5月 09日 (月曜日)

帰省っぷり

- General on miau's blog?
そういえば 4/30〜5/7 の間、帰省してました。

例によって反省事項を自分用にメモしてみたり。
[Read More!]
00:13:26 - miau - No comments - No Trackbacks - Permalink

カナ入力

- General on miau's blog?
カナ入力。親指シフト(NICOLA)じゃなくて、普通(JIS かな)のほう。

・慣れるとローマ字入力より速いらしい
・トップレベルのタイピストは、ローマ字/カナどちらも使えるひとが多い

ということで、以前から身に付けたかったのですが・・・これまでなかなか機会がなくて身に付けられませんでした。
というのも、「新しい配列を覚えるときは、普段の配列を一切使わないほうがいい」という意見がありまして。
仕事でも文字をタイプする機会が多いので、あまりトロトロ作業するわけにはいかない→練習できないといった感じで。


しかし今回、

・今一緒に仕事してる人がカナ入力(たまにマシン借りると入力できない)
・滅多に無い 10 連休

という状態でして。
カナ入力を身に付けるには人生でベストかもしれない(※定年後は除く)タイミングなわけで。
がんばって練習してみましたので、そのお話。
[Read More!]
01:58:28 - miau - No comments - No Trackbacks - Permalink

mixi からリンク張りました・・・

- 連絡事項&更新履歴 on miau's blog?
なんか勢いで過去ログ眺めて、ちまちま誤字修正いれてしまったので、このまま公開しちゃいます。
# 日本語検索ができないのとか、なんとかしておきたかったんですが

>初見の方々
嘘や誤字、やばげな表現その他に気づいたら報告していただけると助かります。

>リアル友人がた
そんな感じでオープンなページになりました。
でもあまり広範囲に知られると恥ずかしいので、流布は適度に留めてくださいませ。


あ、一点補足。
mixi のほうとは違って、長文だらけなので要注意です・・・
07:13:45 - miau - 2 comments - No Trackbacks - Permalink

2005年 5月 15日 (日曜日)

もうひと山

- General on miau's blog?
山越えましたとか書きましたが、もうひと山あったっぽい。
いや、ひとつではないかもしれないけど。

でまぁ、下手に出社すると 5 割くらいの確率で泊まりになってしまうわけで。
blog 更新どころか、メールのチェックすら追いついてません。

今日は少しだけ余裕があるので、溜まったネタを吐き出しときます。


とかいいつつ結局秋葉原にでかけたので、やっぱりまた明日にでも・・・
17:34:29 - miau - No comments - No Trackbacks - Permalink

2005年 5月 17日 (火曜日)

ビルド番号のオートインクリメント(VC++)

- Work on miau's blog?
Borland C++ Builder には「ビルド実行するたびにビルド番号を増やす」みたいなオプションがあった気がするけど、VC++ 6.0 にはそういう機能はないらしい。
ということで、自動ビルド番号増加 アドインを導入。

未登録だと起動のたびに確認メッセージがでたりしますが、機能制限があるわけではないので良心的(?)
Visual SourceSafe とうまく連携すればもっとうまく管理できるのかもしれませんが、まあとりあえず。
06:21:48 - miau - No comments - No Trackbacks - Permalink

VC++ でたまにあるエラー

- Work on miau's blog?
関数やメソッド内で大きな配列を宣言すると、プログラム実行直後にいきなり落ちることが。

デバッグすると、CHKSTK.ASM の


probepages:
sub ecx,_PAGESIZE_ ; yes, move down a page
sub eax,_PAGESIZE_ ; adjust request and...

test dword ptr [ecx],eax ; ...probe it

なんて行で落ちている様子。

謎なのでググってみると・・・

GAH! WTF? - GameDev.Net Discussion Forums


your overflowing your stack, check your functions maybe one has a huge
array defined or something (place it on the heap [global] or malloc it).
Or try a complete rebuild.

なるほど。スタックオーバーフローと。
対処法はいろいろ書いてるけど、とりあえず一番楽&可読性高いかなということで static 変数にしておきました。
07:04:13 - miau - No comments - No Trackbacks - Permalink

2005年 5月 23日 (月曜日)

SciTE + Exuberant Ctags

- TextEditor on miau's blog?
最近 Perl のスクリプトを編集するときは、SciTE かサクラエディタのどちらかを使ってます。

使い分けとしては

○SciTE
・構文チェック等の支援機能が充実してるので、新規スクリプトを書く場合
・ハイライトがしっかりしてるので、込み入ったスクリプトを読む場合

○サクラエディタ
・編集機能が充実しているので、複雑な編集が必要な場合
・タグジャンプが使えるので、大規模なソースを読む場合

みたいな感じだったんですが、SciTE で Exuberant Ctags が使えたらかなり快適なのでは?と思い、ちょっとググってみると案の定ありました。
でもこれが結構大変だったので、導入メモ。
[Read More!]
04:50:21 - miau - No comments - No Trackbacks - Permalink

2005年 5月 29日 (日曜日)

週一更新が板についてきましたが

- General on miau's blog?
未消化ネタ書いていきますよ。今週こそ。
物によっては一週間以上前の話題だったりしそうですけど、とりあえず気にしない方向で。
20:58:09 - miau - No comments - No Trackbacks - Permalink

aiWM Web Tester その2

- Work on miau's blog?
以前のアイテムで、aiWM Web Tester を使ったという話は書きましたが。
今回複数ページに似たような修正を加える必要が出てきまして。
自動化に適してたので再挑戦してみました。
[Read More!]
21:40:36 - miau - 4 comments - No Trackbacks - Permalink
| 1 | 2 | Next»