fc2ブログ

Myoza Ver1.00

世間は年の瀬も押し迫って忙しい中、小ネタのリリースです。
必要に迫られ小一時間で出来るだろうと個人用に作ったのですが、細かい所に拘ってたら案外時間が掛ってしまい時間掛ったのに個人用ではもったいないと思いリリースします。
機能は単純で、デスクトップ上にモザイクを掛けます。
ネトゲとかでスクリーンキャプチャを撮って公開したい場合が有りますがその時に個人が特定できる所をこれで隠す事が出来ます。
画像編集ソフトで編集してからアップしても良いのですがそれが出来ない場合に必要になります。
ぶっちゃけ要するにGyazo用です。
このサービス物凄く便利なのですが隠したい所が隠せないのがネックなので作っちゃいました。
言わずもがなMyozaとはそこから名前をとってます。
ちなみにアイコンは柴系雑種の犬の顔です。

内部処理的にはデスクトップのデバイスコンテキストのビットマップをStretchBltで縮小し更に拡大してるだけです。
縮小にSetStretchBltModeでHALFTONEを指定しそのまま拡大すればボカシモードに、COLORONCOLORで拡大すればモザイクになります。
基本的に私のソフトは95/NT4.0以降で動作するようにしているのですが、どうもWin9x系ではHALFTONEが使えないようなのでWindows2000以降対応になります。NT4.0は動作確認できないので未対応と言う事で。
一応9x系でも使えない事は無いですがボカシは使えずモザイクも非常に汚いです。
その辺の処理を独自で実装すれば9xでも使えるのですがそれは非常に大変なのでスルーします。
いい加減9x系も需要無いでしょうし。
スポンサーサイト



7-zip32.dll Ver9.20.00.02

スミマセン。ポカミス修正の為、連日のバージョンアップなります。
ユニコードモード時にOpenArchive系とかで取得する文字が全部SJISになってました。
そのせいでファイルリスト取得する時2バイト文字が化けてしまってました。
-scc スイッチ実装時の対応漏れでのエンバグです。

当然その辺は一般的なソフトでも動作確認してたのですが―
何を思ってたのかzipで圧縮した物で確認してたので書庫リスト取得に7-zip32.dllが使われる訳も無く全くテストになってませんでした。
7-zip32.dllでzip圧縮したものなので圧縮のテストにしかなってませんでしたね。
ここで異常が出れば気がつきましたがこう言う時は問題は出ないもので…。


多方面よりご指摘いただき取り急ぎ修正いたしました。
ご指摘して頂きありがとうございました。

と言う訳で今回の修正点は
・Unicode モード時に2バイト文字が化ける問題を修正。
のみです。

7-zip32.dll Ver9.20.00.01

本家が久しぶりに正式版を出しましたのでその対応版です。
メジャーバージョンアップした割にはさほど内部での変更は無かったので対応も比較的楽に済みました。

本家の修正点以外でも幾つか機能の追加およびエンバグを修正してます。
まず、Unlha32.dllのUnlhaSetPriority()を参考にSevenSetPriority()でAPIを追加。
これでスレッドの優先度を指定できるようにしました。
しかしUnlha32.dllのそれとは違いスレッドの優先度を下げてもCPUはフル回転します。
ついでにSevenZipSetBackGroundMode()も実装しようかとも思いましたがこちらは結局手つかずのままにしてます。ここで言うバックグラウンドモードとは随分意味が違うような気がしましたので。
それからヘッダが暗号化された書庫の為にSevenZipSetDefaultPassword()関係を追加。
こちらはYz1.dllを参考にほぼ同等の機能を持ちます。但し7zの仕様の関係でSetDefaultPassword()は本来OpenArchive()系のAPIになりますが書庫に関連付け無くても使えるようになってます。
あとYz1.dllの場合パスワードを解除する際は""(空の文字列)を指定して解除する様ですが7zの場合空の文字列がパスワードにもなるのでここはNULLを指定する事で解除するように仕様変更。それに伴いNULLを指定してもSevenZipPasswordDialog()は呼び出しません。
コマンド説明書に書き忘れていましたが、これでグローバルなパスワードを設定してもSevenZip()での
コマンドには影響ありません。明示的に-pスイッチで指定しないと圧縮する際に暗号化しませんし解凍時パスワードを問い合わせます。

エンドユーザが使う分では経過ダイアログでの機能を本家の機能に合わせ追加してます。
それから内蔵SFXがPPMd解凍出来なくなってたのとパスワードミスった時にゴミが残るようになってたのも修正。

本家の更新分については沢山ありますが基本的には履歴を参考に。
注意として-sccスイッチは本家ではデフォルトはDOSですがWINに変更しています。
それから本家の更新履歴には載っていませんでしたがサロゲートペアユニコードに対応しているのと7z書庫でDeltaフィルタが追加されてます。
Deltaフィルタはwavファイルとかマルチメディアファイルを圧縮する際に威力発揮しそうですね。
あと本家の更新点で"The support for archives in installers was improved"と言うのが有ったのですがイマイチこれの意味が分からず。sfxがLZMA2に対応した事を意味してるんじゃないかと思うのですが・・・。仕方が無いのでこちらの履歴には直訳で書いてます。

開発中に7-zipの動作確認をしたところ、ソリッド書庫一部のファイルの更新を行うと他の全てのファイルの圧縮方式が変更されてしますがどうもバグっぽい。恐らく表示上の問題なだけだしもしかしたらテストの仕方が悪かったのかもしれないのでこれに関してはそのまま放置してます。


では、以下今回の更新点の詳細です。

続きを読む

新規記事の投稿


月別アーカイブ
カテゴリー
リンク
ブログ内検索
RSSフィード