Win32APIでLZMA形式で圧縮解凍 – プログラミング – Home

Win32APIでLZMA形式で圧縮解...
 
通知
すべてクリア

[解決済] Win32APIでLZMA形式で圧縮解凍


STS
 STS
(@STS)
ゲスト
結合: 12年前
投稿: 3
Topic starter  

Win32APIのみでLZMA形式の圧縮解凍をしたいのですが実現は可能でしょうか?
外部のDLLやSDKは使わずC/C++言語になります。

また、可能な場合はどのようにすればいいのでしょうか?

不可能なら、よりよい圧縮解凍方法はあるのでしょうか?

win7.32/vs2010/vc++を使用しています。


引用未解決
トピックタグ
仲澤@失業者
(@uncle_kei)
Prominent Member
結合: 5年前
投稿: 828
 

LZMA SDK を自作したいという希望ですね。
これはオープンソースのようですね。

Windows用に自給する意味はまったくありませんが、
仕様書とソースが公開されているようなので、
C++コンパイラが使用できるCPUなら、
それ向けに作り直すことも可能かと思います。


返信引用
STS
 STS
(@STS)
ゲスト
結合: 12年前
投稿: 3
Topic starter  

> LZMA SDK を自作したいという希望ですね。
すみません。目的としてはCかC++の環境でLZMAの圧縮解凍を実現したいのです
が、SDKなどを使用しないと実現不可ということでしょうか?

> C++コンパイラが使用できるCPUなら、それ向けに作り直すことも可能かと思います。
SDKをもとにして作りなおす場合結局はSDKを自作することになり、コード量が大
きくなってしまいます。


返信引用
ツPツAツTツIツO
 ツPツAツTツIツO
(@ツPツAツTツIツO)
ゲスト
結合: 13年前
投稿: 3
 

LZMA SDKで提供されている機能がWin32APIにあるのかと言う話ならないと思います。

そもそもMicrosoftとは関係無いところで実装されていると思うので
Win32APIにその機能はないと考える方が自然だと思います。
逆に機能提供されているのであれば、何らかの形で公開されているはず。
私自身はそういう記述を見た事がありません。
7-Zipを利用するのにわざわざDLLをインストールした位なので
そういう意味から考えてもWin32APIで提供されているとは考えにくいです。

Windows用のSDKを使わないと実現はできないと言うのが正解だと思います。
もしくは全く処理を自分でコーディングするかですね。


返信引用
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2659
 

ううっ、また名前の書き換えを忘れて送信してしまった。

上の投稿は私のものです。
すいません。


返信引用
STS
 STS
(@STS)
ゲスト
結合: 12年前
投稿: 3
Topic starter  

sdkの使用はできないので、ソースをもとに自分でコーディングするしかないみたいで
す。

PATIOさんありがとうございました。


返信引用
仲澤@失業者
(@uncle_kei)
Prominent Member
結合: 5年前
投稿: 828
 

公開されているLZMA-SDKのコードはWin32-SDKではなく、
純粋なC++コードのようですね。

たいした手間ではないように思われるので、
ダウンロードして、コンパイルしてみたらどうでしょう。
・・サイズもちっちゃいし(ツールまで含んで、たった500K程度)。


返信引用
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2659
 

SDKを利用できない理由は何なのでしょう?

ソースコードが無いライブラリだと問題があるであれば、
仲澤@失業者さんが書かれているようにソースをダウンロードして
コンパイルする事でソースも保持した状態でライブラリも用意できます。
そのライブラリに対してテストが必要と言う話なら動作確認テストを
行なってみるのも手でしょう。
結局、同じ内容になるのであれば車輪の再開発になってしまうので
単に手間が増えるだけと言う気がします。
ライセンス問題を回避したいとかオープンソースのライブラリは
使ってはいけないという規約になっているとかなら仕方ないかもしれませんけれど。

にしても、ライセンス云々と言う話ならコードを参考にするのは微妙ですね。
フォーマット仕様を元に組んだら同じになったというならともかく
参考にして同じになったなら結果的には流用したのと同じになってしまう気がします。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました