ページ 11

アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 21:31
by たろう
アーカイブファイルを作成(解凍)するプログラムが組みたいのですが、やり方がわかりません。
どういう風に作ればよいのでしょうか?本やサイトなどありましたら、教えてください。よろしくお願いします。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 22:26
by たかぎ
環境不明ですが、一番簡単なのは、外部コマンドを呼び出す方法です。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 22:33
by たろう
返信ありがとうございます。すみません。環境はVC++2005です。外部コマンドを呼び出すとはどういったことをするのでしょうか。それとアーカイブファイル作成は圧縮(解凍も)です。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 22:41
by たかぎ
> 外部コマンドを呼び出すとはどういったことをするのでしょうか。

tar、zip(unzip)、lhaといったコマンドを、systemやfork + execlpで呼び出すやりかたを想定していました。
Visual C++ 2005なら、Windows流のやりかたを使ってください(CUIかGUIかもわかりませんので)。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 22:46
by たろう
返信ありがとうございます。GUIです。winodow流のやり方とはどういう風に作ればよいのでしょうか?参考になるサイトがありましたら教えてください。よろしくお願いします。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 22:59
by softya
世の中には沢山の圧縮・解凍DLLを提供してくれている方がいますので、そのDLL毎のAPIに沿って呼び出すだけで圧縮・解凍ソフトを作ることが出来ます。
http://www.madobe.net/archiver/index.html
こちらの開発室で、いくつかソースコードが公開されていますので参考にしてください(少し古いですが)。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 23:13
by たろう
回答ありがとうございます。探したのですがそれらしきファイルが見つからないんですがソースコードはどこにあるのでしょうか。お手数おかけします。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 23:17
by softya
こちらに紹介されています。
http://www.madobe.net/archiver/dev/main.html
------C/C++関係------
のリンクをたどってください。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 23:31
by たろう
すみません。どこにもないのですが。。。どこにあるのでしょうか?あと環境はVC++2005なのですが大丈夫なのでしょうか?

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 23:39
by やんち
> こちらに紹介されています。
> http://www.madobe.net/archiver/dev/main.html
> ------C/C++関係------
> のリンクをたどってください。
リンク切れになってるみたいですね。

・Common Archivers Library
  http://www.csdinc.co.jp/archiver/
から、たどってみて下さい。

Windows 用の解説もたぶん、圧縮・展開に関しては、最大手なので、大丈夫でしょう。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 23:51
by softya
>すみません。どこにもないのですが。。。どこにあるのでしょうか?

間違ってミラー版のサイトのリンクを貼ってしまいましたね。
ただ、私のところからはリンク出来てますけど・・・。

最初の方のコードなら
http://www.geocities.co.jp/SiliconValle ... e/toc.html
にあります。

>あと環境はVC++2005なのですが大丈夫なのでしょうか?

そのまま使うわけじゃないですよね?
あくまで参考用としてください。
VC++6とかならコンバートで動くとは思うんですが。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年4月30日(金) 23:55
by たろう
たどってみましたが、Common Archivers Library ファイル自体がありません。どこなのでしょうか?何度もすみません。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年5月01日(土) 00:00
by たろう
スース見ることができました。
>そのまま使うわけじゃないですよね?
>あくまで参考用としてください。
>VC++6とかならコンバートで動くとは思うんですが。
はい、そのまま使おうとしていました。参考用ですか。
VC2005はサンプルはないのでしょうか?

Re:アーカイブファイルを作成(解凍)

Posted: 2010年5月01日(土) 00:04
by softya
>たどってみましたが、Common Archivers Library ファイル自体がありません。どこなのでしょうか?何度もすみません。

「Common Archivers Library ファイル自体」と言うのが何の事かイマイチ分かりませんが、
http://www.geocities.co.jp/SiliconValle ... rcdll.html
の一番下にソースコードとテストプロジェクトがあります。

もしかして、「Common Archivers Library」自体を探してますか?
UNLHA32.DLLとか、UNZIP32.DLLかはこちらから探して必要なのをダウンロードして下さい。
http://www.csdinc.co.jp/archiver/lib/main.html

Re:アーカイブファイルを作成(解凍)

Posted: 2010年5月01日(土) 00:14
by softya
>はい、そのまま使おうとしていました。参考用ですか。
>VC2005はサンプルはないのでしょうか?

自分でプログラムを作りたいんですよね?
であれば、ソースコードを動くように移植するだけでも良い勉強なりますよ。
やってみて分からないことがあれば、また聞いてください。

だだ、VC2005で読み込ませればVC2005がコンバートしてくれるので、そのままコンパイル出来ると思うんですけどね。

Re:アーカイブファイルを作成(解凍)

Posted: 2010年5月01日(土) 11:19
by たろう
わかりました!またわからなくなったら質問させていただきます!回答ありがとうございました。