雑記

過去の雑記 新しい雑記

04/11/08 21:58
シェル拡張の設定でレジストリにゴミを残してしまうバグ改善
この修正で全部外したはずなのにもう一度設定画面を開くと勝手にチェックされてっていたバグが改善されているはずです。
b2eで展開が全く機能していなかったバグ修正
それと、コマンドラインでフルパスではなくても動作するようにしました。副作用でちょっと便利な事が出来るように^^; ファイル名をフルパスにする際に使うAPIの関係で
1.アプリケーションのロードに使った(アプリケーションの実行可能ファイルと同じ)ディレクトリ
2.カレントディレクトリ
3.Windows 95:Windows のシステムディレクトリ。このディレクトリのパスは、GetSystemDirectory 関数で取得できます。
Windows NT/2000:32 ビットの Windows システムディレクトリ。このディレクトリのパスは、GetSystemDirectory 関数で取得できます。このディレクトリの既定の名前は、SYSTEM32 です。
4.Windows NT/2000:16 ビットの Windows システムディレクトリ。このディレクトリのパスを取得する Win32 関数はありませんが、SearchPath 関数の検索対象になります。このディレクトリの既定の名前は、SYSTEM です。
5.Windows ディレクトリ。このディレクトリのパスは、GetWindowsDirectory 関数で取得できます。
6.環境変数 PATH に記述されている各ディレクトリ
の順に検索するため、1,2に無い場合システムディレクトリを探します。となると、大体dllは システムディレクトリに置くため、一気にバックアップが取れる事に^^ 下のようなbatファイルを作るとアーカイバdllのバックアップに便利かも。
-----------------------backup.bat-------------------------------------
Archon.exe zip "-d|D|" "-ndll" Unarj32j.dll Bga32.dll Cab32.dll UnGCA32.dll Unlha32.dll Unrar32.dll Unrar.dll Tar32.dll Yz1.dll Zip32j.dll Zip32.dll UnZip32.dll 7-zip32.dll xacrett.dll
-----------------------backup.bat-------------------------------------
これはデスクトップにdll.zipという名前で書庫を作ります。
なんか自分でも意図してなかった応用が出来てびっくりです(笑)
ということで、
Archon2の更新(β09)
  • コマンドラインでフルパスでなくても動作するようにした

  • シェル拡張の設定でレジストリにゴミを残してしまうバグ改善

  • b2eで展開が全く機能していなかったバグ修正


  • 今日で休みが終わりなので、このペースでの更新も終わりです^^; 週1位で更新出来るようには頑張りたいです。
    2004/11/07
    さぁ、1週間あった休みも残り2日。読みたかった本は読んだ。見たかった映画も見た。Archonは弄り倒した。ドライブはしなかったけどまぁいいか。何か大切な事を忘れてる。。。 あ、たまってる課題が手付かずだ(TДT)
    Archon2の更新(β08)
  • 展開後開くの設定にしてるときに自己展開書庫を展開すると自己展開書庫を開こうとするバグ修正

  • b2e.dllのバグ取りで、b2e使用時に空のテンポラリフォルダが残るバグ修正

  • シェル拡張で展開か閲覧いずれかを表示する設定で両方表示されるバグ修正

  • 閲覧時のファイルの展開で開いているパスを考慮に入れるようにした
  • フォルダ選択ダイアログに"新しいフォルダを作成"ボタンをつけた
  • フォルダ選択ダイアログをマイコンピュータから選び始めてたのを圧縮展開先で指定したフォルダから選び始めるようにした
  • 閲覧時のファイルの展開で開いているパスを考慮に入れるようにした事によりコマンドラインのスイッチが一つ増えています。書庫内基準パスとでも言えばいいのでしょうか?取り合えずそんなのを設定するスイッチです。
    そのうち圧縮のときにも使用できるように改良します。
    2004/11/06
    展開後開くの設定にしてるときに自己展開書庫を展開すると自己展開書庫を開こうとするバグ修正。展開後に書庫ファイルの中身を実行してしまうのも直ってると思います^^;;
    b2e.dllのバグ取りで、b2e使用時に空のテンポラリフォルダが残るバグ修正。
    シェル拡張で展開か閲覧いずれかを表示する設定で両方表示されるバグ修正。
    これで一応報告されてる&見つけたバグは取り除いた事になる。。。かな?
    フォルダ選択ダイアログに"新しいフォルダを作成"ボタンをつけて、常にマイコンピュータから選び始めてたのを圧縮展開先で指定したフォルダから選び始めるように改良しました。 残り要望を出されてて実装されてない機能は、
  • 展開時に書庫名のバージョンをカットする
  • 閲覧時のファイルの展開で開いているパスを考慮に入れる
  • 閲覧時Drag&Dropでファイルの展開
  • 展開後書庫ファイル削除というのもありましたが、ここでバグでも出したら怖いので実装する事はないです^^;
    "閲覧時のファイルの展開で開いているパスを考慮に入れる"と"Drag&Dropでファイルの展開"は連動していて、前者が出来たら後者も出来ます。が、なかなかいい実装方法が思い浮かばない(ーー;) もうちょいテストしたらβ08出します。
    2004/11/05
    Archon2の更新(β07)
  • 展開先、圧縮先の設定を閲覧時にも有効にした
  • Drag&Dropで書庫にファイルを追加できるようにした
  • 書庫にファイルを追加する際、パス情報がおかしく追加されるバグ修正*1
  • zip,lzhの自己展開書庫が作れないバグ修正
  • 圧縮展開先のNone、Ctrl、Shiftの設定が正確に保存されないバグ修正
     (というより正確に読み取ってないバグでした)
  • 1つのファイル、もしくは1つのフォルダのみを圧縮したものを空フォルダに展開すると、その空フォルダの消去+1つ上のディレクトリに展開となってしまうバグ修正
  • 圧縮展開先のフォルダを指定した際、フォルダ名に半角スペースがあった場合そのひとつ上のフォルダに展開(というより展開できない方が多かったと思います)バグ修正

  • 圧縮展開先で指定した場所をCtrl、Shiftに割り当てた場合、壊れた書庫として認識されるバグ修正?*2

  • *1この修正に伴い内部でのデータの扱いを少し変化させました。一通りテストを行いましたが、複雑な条件(テスト時に想定しなかったような)でバグが存在する可能性があります。動作がおかしいと思われた方は報告お願いします。
    *2再現しなかったのでちょっと直ってるかどうか自信ありません。 その上の修正で連鎖的に修正されてるとは思うのですが^^; 希望的観測かなぁ

    それと、まだ展開後に書庫ファイルの中身を実行してしまうケースがあるようです。

    自分からの要望。 閲覧時のファイルの展開で、開いているパスを考慮に入れたい。パスが深い時とか開くの面倒くさいですもんね^^;
    2004/11/04
    点5で7時間やって+250円ってなんだよ。。。 まぁリーチ一発ツモドラ8なんてキショイ手上がったからいいか^^;
    18時位まで爆睡してました。えっと、バグ、要望が多いのでまだ片付いてないのを取り合えずメモ。
    バグ
  • Archon.exeの設定>圧縮展開先のNone、Ctrl、Shiftの設定が正確に保存されない。

  • Archon.exeの設定>圧縮展開先のフォルダを指定した際、フォルダ名に半角スペースがあった場合そのひとつ上のフォルダに展開(Noneで指定した場合のみ)

  • Archon.exeの設定>圧縮展開先で指定した場所をCtrl、Shiftに割り当てた場合、壊れた書庫として認識される。

  • 1つのファイル、もしくは1つのフォルダのみを圧縮したものを空フォルダに展開すると、その空フォルダの消去+1つ上のディレクトリに展開となってしまう。


  • 要望
  • 解凍時にフォルダーを付加できるようにしてほしい
  • 閲覧状態で、そのままD&Dで解凍できるようにして欲しい
  • 展開先、圧縮先の設定を閲覧でも有効にして欲しい

  • バグ報告を下さった県民さん、marboさん、メールで要望を下さった方、ありがとうございます。
    2004/11/03(2)
    関連付け出来ないバグ修正。重大なバグなのでArchonβ05以前を使用、テストしてくれいるかたはβ6に移行してくださいm(__)m
    書庫でのメニューにArchonで開くを追加しました。 書庫内書庫を開く際に便利だと思います。
    これで書庫内書庫を開いたときの注意点を一つ。その書庫を編集しても大本のファイルは変更されないため無意味です。見るだけって感じですかね^^; 一応テンポラリフォルダに書庫はあるので、パスを見つつそこまでたどり着けば編集済みの書庫を入手できますが、まぁめんどくさいと思います。
    あと、送るにショートカットを作成できるようにしました。
    と言うことで、
    Archon2の更新(β06)
    ・関連付け出来ないバグ修正
    ・展開後に書庫ファイルの中身を実行してしまう動作改善
    ・書庫でのメニューにArchonで開くを追加
    ・送るにショートカットを作成できるようにした

    まだまだバグあるんだろうなぁ。。。

    今晩は徹マンなので取り合えず今日はここまで^^;
    2004/11/03
    Archon2の更新(β05)
    ・エクスプローラのファイルのメニューにメニューが追加され続けるバグ修正
    ・スペースの入ったファイルを追加できないバグ修正
    ・一つのファイルを追加できなかったバグfix
    ・ファイルを追加する際開いてるパス名を考慮するように変更

    &↓昨日の変更
    ・ヘボながらヘルプファイルを添付
    ・フォルダに展開メニューが付く動作を修正
    ・展開失敗時にフォルダが残るバグfix
    ・一つのファイルを追加できなかったバグfix
    ・exeの情報を閲覧できるようにした
    ・midiの情報を閲覧できるようにした

    ファイル追加にバグを見つけたので、直すついでにそれらしい動作をするように変更しました。 一番上にしか追加できないってのじゃあれなので^^;

    今後実装してみたい事は、Drag&Dropでファイルの追加を可能にする事ですかねぇ。これは比較的簡単に実装できそうです。あと、FPressを試しに使ってみてちょっと便利だなぁと思ったのが、コピーと貼り付けが出来る事で、これArchonでも実装してみたいです。FPressからエクスプローラへのコピー→貼り付けは、動作的にはコピーの時点で一度展開してるみたいです。貼り付けの時点で展開したいけど無理だろうなぁ。逆はすんなり実装できそうなんですけどね(Drag&Dropでファイルの追加とコード的には変わらないはず)。
    作者にヤル気のある今のうちに、追加してほしい機能、改善してほしい動作、どしどし意見下さいm(__)m
    2004/11/02
    今日から1週間お休みです^^
    読みたかった本読んで、見たかった映画見て、たまってる課題片付けて(ーー;)、気晴らしにどっかドライブしてみたり、Archonいじってみたり、有意義に使いたいなぁ。今日は取り合えずぷらぷらと本買ってきました^^

    某掲示板某スレの225さんの御意見はごもっとも^^;
    早速修正。意見言ってもらえるとすごく助かります。
    ・ヘボながらヘルプファイルを添付
    ・フォルダに展開メニューが付く動作を修正
    ・展開失敗時にフォルダが残るバグfix
    ・一つのファイルを追加できなかったバグfix
    とまぁここまで普通の変更&↓は趣味の変更
    ・exeの情報を閲覧できるようにした
    ・midiの情報を閲覧できるようにした

    今回の更新ではArchon.exe,ArchonXt.dll,b2e.dllが変更されています。あと、ヘルプファイル作りが変です^^; きっとそのうちまともにするので待っててください。。。

    。。。あぁぁこれ書いてるうちにバグ発見orz バージョンアップの準備してあとはUPするだけの段階になってバグ発見するとへこみます(T_T) エクスプローラのファイルのメニューにメニューが追加され続けるバグです。バグの場所は見当付いてるので明日にでも修正します。それまでダウンロード出来なくしときますのでご了承ください。
    2004/11/01
    Archon2の更新(β04)
    ・圧縮ダイアログの圧縮形式とメソッドを保存するようにした
    ・圧縮ダイアログのパスの履歴を表示するようにした(5件)
    ・gif読み込みに対応
    ・スライドショーの背景色を設定できるようにした。
    ・タイトルバーに現在開いているファイル名を表示するようにした
    ・ステータスバーに現在開いているファイルの情報を表示するようにした
    ・コマンドラインオプションを2つ追加
    ・gcaの自己展開書庫とパスワード付書庫の認識を出来なかったバグfix

    そうそう、Archon2は貧弱ながらコマンドラインでの操作が出来ます。右クリックメニューも圧縮ダイアログも、コマンドラインを設定してArchonを起動してるだけだったりします^^; で、一つ面白そうなオプションを付けてみました^^ まぁ便利そうなのはごくごく限られた場面だと思うのですが、書庫内のファイル名を渡すオプションです。 これで、複数個の書庫からReadMe.txtだけ一度に展開なんてことが出来ます^^ 実装の関係上ちょっと特殊なコマンドライン形式になってしまいましたが^^; 詳しくはArchon.txtをご覧ください。
    それと圧縮の時は個別圧縮にするオプションもつけました。
    って調子に乗ってつけたけど、誰か使ってくれるのかなぁ^^;; まぁいいかw
    Archon2をアプリケーションのページに乗せました。ついでにHTMLによる簡単なヘルプを作りましたが、まぁArchon.txtをちょいといじった程度です^^; そのうちchmにしたいと思います。
    2004/10/30
    今日はArchonでgifを閲覧できるようにした。といってもコメントアウトしてた部分を戻しただけなのですが^^;
    XacRett.dllに関してバグは"今のところ"見つかってないし、Open系で未実装なのは現在絶滅してしまったと思われるpitのみ。あとはrarの部分展開が残っているが、ちと複雑そうなので気分的にパス。最近の3.x系展開できないのでXacRett.dllが積極的に使われることも無いだろうし^^; って事で新形式に対応しようと探索中^_^ K.INABAさんがiso等のイメージ形式に対応したいとおっしゃっていたので、被らない様に探してました。 で、見つけたのがパスカルながらwiseの展開ソース(e_wiseのソース)とC言語でInstallShieldの5.5以下のバージョンの展開ソース(isDcc v2.10とisDcc v1.22のソース)。パスカル読めない... 頑張って解読するか^^; あと、イメージ形式に対応するなら"FCD ユーティリティ"のソースが役に立ちそう。 まぁ残念ながら見つけたことと実装できるかということは無関係なのであしからず^^;
    2004/10/28
    昨日ツールチップの実装等と言っていましたが、あれ無しで^^; パスをコンボボックスで保持すると長いパス名のとき見えなくなってしまうので、それをツールチップで表示しようと思ったのですが、処理が面倒そうなのでSendMessageでCB_SETDROPPEDWIDTHを送って幅を変えることにしました。これでも問題無く見れますし。5件まで履歴を保存します。

    10/22に書いたようにそろそろVectorに登録しようと思うのですが、Ver1をどうしようか悩み中。。。 同じ名前なのに機能&UIが結構違うんですよね^^; 最初はそのままC++で移植しようかと考えていたのでArchon2としてたのですが、出来上がってみると少々違った物になっていたと言う(笑 レビューされてるんだけどアイコンや画面、機能が変わってもOKな物なのかなぁ^^;

    あぁでもドキュメントを整備しなきゃ。。。 Ver1とは随分変更されてるし、今付属させてるドキュメントは自分で見ても見にくい^^; この作業あまり好きじゃないんだよなぁ
    2004/10/26
    今日もArchonをいじってみました。 圧縮ダイアログで形式を保存するようにし、次回起動時に同じ形式をあらかじめ選択しているようにしました。 また、圧縮先のフォルダの履歴を取るようにし、選択できるようにしました。 ただ、ツールチップの実装が気に食わないのでそれをいじってから公開します。
    2004/10/25
    Archon2の更新(β03)
    ・ツールバーにソートボタンを追加
    ・シェル拡張で右Drag&Dropメニューの追加
    よし、これでまた一歩正式公開に近づいた^^

    XacRett.dllの更新(0.49.01)
    ・tar系でFindFirstに失敗することがあるバグfix
    ってかこのバグほかの形式に影響しててもおかしくないバグでした^^;
    2004/10/23(2)
    さっそくXacRett.dll更新しました。前から分っていましたが、どうやら自分はある事にはまるととことんはまって熱中するようです^^; まぁ学生なので時間が自由に使えるからってのもあるのでしょうが。

    XacRett.dllの更新(0.49.00)
    ・dmgに対応
    ・Yz1で絶対パスで格納されてるファイルが展開されないバグfix
    2004/10/23
    きたぁぁぁ(>▽<) XacRettの最新版が出ました!! Macのdmgに対応です。 今からソースを見せていただいて、Open系の実装をしてからXacRett.dllを更新したいと思います。
    あと、Yz1書庫で絶対パスで格納されてるファイルが展開されません。次回バージョンアップ時に対応をしますのでお待ちください。まぁ絶対パスで格納されてるファイルが展開"されない"なのでDTV問題には引っかかりませんが、絶対に展開できないのもあれなんで^^;
    次のようにパスを変更するつもりです。
    "C:\Documents and Settings\All Users\スタート メニュー\プログラム\スタートアップ\hoge.js"
    "C_\Documents and Settings\All Users\スタート メニュー\プログラム\スタートアップ\hoge.js"
    2004/10/22
    本日やまざき氏からメールを頂きました。なんと!!、yz32*.libのかわりにyz32自体のソースコードを頂いてしまいました( ̄□ ̄) しかも未公開のyz1.07。。。 良いのだろうかこのようなソースをいただいても^^; コメントも非常に丁寧に付けられており、勉強になります。 神だ。
    という事でXacRett.dllの更新です。

    XacRett.dllの更新(0.48.18)
    ・Yz1のDTVに対応
    ・Yz1一部展開に対応
    ・さりげな〜くAlzに対応(分割ファイルは未対応です)

    Archon2も昨日予告の更新です。そろそろ普通に公開しても良いかなぁと考え始めてます。 もう少しツールバーのあたりをいじったらVectorに登録しようかな。
    こちらからどうぞ
    2004/10/21
    Archon2の次回更新予告
    ・ツールバーの追加
    ・壊れたファイルをXacRett.dllでもう一度展開を試みるようにした
    ・"展開後に開く"のオプションを付けた(デフォルトは開く)
    ・リストのソートを出来るようにした
    ・個別圧縮を実装
    ・書き込みできないメディア上の書庫を圧縮展開するとエラーになるバグ改善
    ・b2e.dllでパスワードの入力を出来るようにした

    なんか結構機能追加が出来た気がします^^ ツールバーで圧縮と展開のボタンを付けたのですが、いまいちこの動作で良いか悩んでます^^; どぉなんだろなぁ。。。
    個別圧縮に関してですが、Altキーを押しながら圧縮すると出来ます。コンテクストメニューから圧縮の場合は、メニューを開いてる時に押すとメニューが消えてしまうので、選んだ直後にすかさず押してください^^; 形式選択画面が出た場合は、OKボタンを押すあたりでAltキーを押してください。
    …バージョンアップしようとしたとたんにバグ発見;_; 閲覧中にファイルリストの方でフォルダを展開、開くすると想定外の動作をします... それを直してからバージョンアップしますので^^;

    それにしても今回の台風もすごかったですねぇ。電車が止まりかけました^^;
    2004/10/16
    ardry氏のWikiを見てyz1のDTV問題解決してないことに気が付く^^;
    んで、更にやまざき氏に問い合わせて新しいyz32libを手に入れる必要があるみたいです。 って事でお気をつけくださいm(__)m
    2004/10/08
    XacRett.dllの更新(0.48.17)
    ・新たにBriefLZ形式に対応
    ・Cab(IS)、BriefLZの情報取得に対応
    ・Ace、Cab(IS)の一部展開に対応
    再現状況がいまいちわからないのですが、tgzのFindFirstで例外が発生する事があるようです。
    元になったK.INABA氏のXacRettがdmgに対応してバージョンアップしそうな雰囲気^^ 既にβ版は出てるのですが、正式版が出てからXacRett.dllも対応したいと思います。