• ベストアンサー

【VB】フォルダを圧縮処理したい

お世話になります。VB歴半年以内の初心者です。 バージョンはVB6SP6です。 処理の途中に、あるディレクトリ(app.path)の中にあるファイルを圧縮したいのです。 具体的にどうしたらいいのでしょう? 最終目的は圧縮したファイルを一定時間ごとにメールで送信するプログラムを作ろうとしています。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

>具体的な手順がわからずにいます。 どのようにわからない? DLLの使い方? それならC++用の定義がのっているから 自分で定義をVB用に書き換えないといけないから 敷居は高いですから コマンドで動くexeをshell関数で呼び出すタイプの方が 楽でしょう。 その場合 http://www.bcap.co.jp/hanafusa/VBHLP/tap_PrgEnd.htm を参考にしてそのプロセスが終了してから 次の処理をするようにしましょう。

sineminna
質問者

お礼

参考リンクに明熊JPEG保存DLLというのがありました。 これ、めちゃくちゃいいですね! 実は圧縮処理を行うのはビットマップファイルで、できればただの圧縮処理よりJPEG変換して圧縮したかったんです。 ビンゴ!のDLLを見つけることができました。 どうもありがとうございました。

sineminna
質問者

補足

ご親切にありがとうございます。 もう少し粘ってみようと思います。

その他の回答 (1)

回答No.1

圧縮/解凍DLL(UNLHA32.DLLなど)を直接使う。 コマンドで使える圧縮/解凍exe(LHA32.EXEなど)を sell関数を使って操作する。

sineminna
質問者

補足

Webなどで調べて雰囲気はわかるのですが、具体的な手順がわからずにいます。

関連するQ&A

  • VB.NETでフォルダを圧縮

    VB.NETでフォルダ(ファイル)を圧縮するプログラムを作っています。 http://homepage1.nifty.com/rucio/main/Samples/Sample057LhaPress.htm このページのやり方が一番簡単だと思ったのですが、 VB6のコードなので使えません。 どうすればVB.NETで使えるでしょうか。

  • VB.NETでの画像処理について

    初めて書き込みます。 現在VB.NETと画像処理を勉強中です。 最終的には、画像を取り込んで画像の被写体の縦と横の長さをVB.NETから求めるのが目的です。 現在画像の色情報から輝度を求め、その画素数をカウントしてヒストグラムを求めるところまでは、おぼろげながら理解できています。しかし、画素数をカウントし縦と横の長さを求めるプログラムの作り方がわかりません。 解る方がいましたらぜひおしえてください。 ※画像処理についてですが、プログラムが関わっているので書き込みました。カテゴリーが違っていたらすいません。

  • VBからPC-ANYWHEREの実行

    どなたかご存知の方いらっしゃいましたら教えて下さい。 VISUAL BASICからSYMANTECのPC-ANYWHEREを実行するにはどうしたら良いのでしょうか。 具体的にやりたいこととしては、 (1)VBからリモートオブジェクトを作成し、既存のホストに接続 (2)リモート側からホスト側へ指定したフォルダにテキストファイルを送信 (3)送信完了後、ホストにインストール済みのプログラムを実行し、処理を行う。 (4)ホスト側のプログラムからは処理成否のログデータが吐き出されるので、それをリモート端末にコピー。 (5)接続を切る。 以上のようなことです。 ちなみにPC-ANYWHEREのバージョンは10.0、VBは5.0SP3です。 よろしくお願い致します。

  • 自己解凍形式の圧縮ファイルについて

    自己解凍の圧縮ファイルを作成するために、「WinSFX32」の設定を次のように行いました。 「ウインドウタイトル」と「解凍先ディレクトリー欄タイトル」にはそれぞれタイトルを任意に入力。 「初期値解凍先ディレクトリー」は絶対パスで "c:\Program Files\TEST" 「解凍後実行コマンド」は空欄のまま EXEファイルは問題なく作成されました。 これを別の機械で実行しました。 ところが目的のファイルは  c:\(目的のファイル) 、つまりCドライブの直下に解凍されてしまいます。 別の機械は c:\Program Files まではディレクトリーがありますが、TEST のディレクトリーは存在しません。なくても自動的にこのディレクトリーを作成してその中に解凍すると聞いてますが・・ どこが間違っているのでしょうか。

  • VB.netでのZIP圧縮について

    現在、VB.netで圧縮を考えております。OSは、Windows2003、Visual Basic 2003、Frameworkには、2.0を使用しております。 下記のサイトを参考にJ#を利用して一度作ってみましたが、圧縮対象ファイル名やパスに日本語が入った場合、圧縮に失敗して困っております。 サイトには、Frameworkが1.0の場合に生じており、2.0は修正されていると記載されておりますが、少々手を加える必要があるようです。 大変申し訳ございませんが、どのようにすれば良いか教えて頂けないでしょうか。また参考となるサイトなどあれば教えてください。 (現在、フリーのAPIやシェルでの圧縮は考えております。) [参考サイト] http://dobon.net/vb/dotnet/links/createzipfile.html

  • 圧縮(lzh)を解凍するvbのサンプルありませんか?

    圧縮(lzh)を解凍するvbのサンプルありませんか? インプットFILE aaa.lzh・・・lha形式の圧縮ファイル アウトプットFILE aaa.txt・・・aaa.lzhを解凍したファイル プログラム仕様 aaa.lzhを読み込み、解答してaaa.txtに出力する。

  • VB.NETで指定のURLにファイルを送る事は出来ますか?

    プロバイダーの自分のスペースなどにファイルを 送るプログラムをと思っているのですが、 VB.NETではその様なことは出来るでしょうか? FTPソフトなどを使って行う作業だと思いますが、 それと同じように、IDやパスワードを送信すれば ファイルを受け付けてくれるのでしょうか? まだ出来ればフォルダ(ディレクトリ)を作ったりも出来ると良いのですが。 VB.NETの何と言うものを使用するのか教えて頂けると助かります。 宜しくお願いします。

  • VB6で7-ZIPのAPIを使用した圧縮でフォルダが消えてしまいます

    Windows2000 VB6.0で開発をしています。 7-ZipのAPIを使用してフォルダを圧縮しています。 そのときのコマンドは下記の通りです。 "a -r -tzip -mx "XXX.zip" "XXX\" *.* 圧縮もとのXXXフォルダの中には 3つのフォルダが入っていて、 そのうち一つのフォルダにはファイルが 1つも入っていません。 上のコマンドをプログラムで実行させて、 XXX.zipファイルを作成後 圧縮元となるフォルダを削除すると、 なぜか、ZIPファイルを展開したときに、 圧縮されているはずの3つのフォルダのうち、 ファイルの入っていないフォルダだけ消えて フォルダが2つになっています。 中身が空のフォルダも残して フォルダの構成はそのままで圧縮したいので、 フォルダが消えてしまって、困っています。 ちなみに7-Zipのソフトで実行すると、 フォルダは消えません。 7-zipのコマンドで更新オプションの部分が怪しく、 「-up2q2」など追加して色々ためしているのですが、 なかなかうまくいきません(涙) どなたか、解決につながりそうな情報をお持ちでしたら、 どうか、教えてください。 よろしくお願い致します。 

  • jpeg画像をより小さく圧縮するために

    現在卒業研究で「画像圧縮によるホームページの高速表示」というテーマを研究しています。これは (1)自PCにサーバソフトをインストール (2)HTMLファイル内に含まれる画像ファイルを圧縮するプログラムをそれに組み込む (3)圧縮処理したHTMLファイルに解凍プログラムを添付、送信 (4)受信側でHTMLファイル内の画像を解凍、ページを表示 というのが大まかな流れです。 そこで、jpegファイルの圧縮に有効なプログラムをハフマン符号化をベースにCで作っているのですが、現在のjpegの規格に使われているハフマン符号化アルゴリズムよりもさらに圧縮率の高いプログラムを作らなければなりません。ちなみに差分値化処理は試しましたがあまり効果はありませんでした。 おおまかなご説明で構いませんので、何か有効な方法があればなにとぞご教授ください。よろしくお願いします。

  • 圧縮ソフトの入っている場所

    エクセルに写真などを貼ってあり重いため、圧縮してメール送信しようと思うのですが、コントロールパネルの、プログラムの追加と削除の欄で、インストールされているプログラムの中に、Microsoft 圧縮(LZH形式) Version1.1というのがあるので、パソコンの中にはあるとは思うのですが、どこからもって来ればいいのか分かりません。分かれば、デスクトップにファイルを置いておき、使用するときにすぐ使いたいのですが、分かる方教えてください。

専門家に質問してみよう