Solved

Achieving ARJ compression using Delphi 6

Posted on 2004-08-12
6
450 Views
Last Modified: 2010-04-04
I require a solution that will allow me to read and write ARJ compressed archives from an application i am currently developing. The archives i am dealing with only contain a single file, hopefully this will make things a little simpler.

Ideally i would like to discover that there is a free library (dll or pascal) that i can use to achieve this but i am also willing to learn what i need to produce such a library 'in-house'. Currently i have very little knowledge of compression models / algorithms and i realise this would be a steep learning curve.

Any suggestions? Points will be awarded for the best information source and / or librarys.

Thanks.

Adam.
0
Comment
Question by:HaL
  • 3
  • 3
6 Comments
 
LVL 17

Expert Comment

by:Wim ten Brink
ID: 11785810
Try Google :-) Use "arj compression library delphi" to get the same list that I'm looking at now.

http://datacompression.info/SourceCode.shtml for useful generic info and code.
http://www.ziptv.com/ for a Delphi-specific library.
http://swiss.torry.net/vcl/compress/packs/paarccomp.zip should be a free library including source. But there are probably more components like this at http://swiss.torry.net/compresspacks.htm

And yes, there will be a steep learning curve if you want to write the algorithm yourself... Also be aware that some algorithms can be patented, thus you'd have to pay for a licence to use them in your code.
0
 

Author Comment

by:HaL
ID: 11786684
Thanks for the quick response,

Google of course is my usual first port of call :) And i also discovered the first two links you posted, agreed  http://datacompression.info does indeed have some usefull source... i found a link to an open source project on source forge which i am currently trying to make sense of, however C++ is not one of my strong points and it is a struggle.

Thanks for the link to paarccomp.zip - cant beleive i overlooked that one, it has some code which i feel will at least get me started with reading the headers, maybe more, havnt had much time to really look it over yet. -- you will get soem points for this one ;)

Going to wait a few days to see if there are any other usefull suggestions. Just a thought but do they do books on specific compression models?

Thanks again.

Adam.
0
 

Author Comment

by:HaL
ID: 12172887
I see that no one has attempted to follow up my request for further info on this subject... i feel that 500 points would be far to much to award for a single like, so can the moderators close this one?

Thanks again to Alex, i think he deserves some points for pointing me to a good source... how do we proceed ?
0
The Eight Noble Truths of Backup and Recovery

How can IT departments tackle the challenges of a Big Data world? This white paper provides a roadmap to success and helps companies ensure that all their data is safe and secure, no matter if it resides on-premise with physical or virtual machines or in the cloud.

 
LVL 17

Accepted Solution

by:
Wim ten Brink earned 500 total points
ID: 12184381
You can go to http://www.experts-exchange.com/Community_Support/ and ask them to refund the points and either PAQ or delete this question.

One reason why you might not get any other responses could be because the ARJ format isn't very popular. The ZIP format and the TAR.GZ are a lot more popular and it would be a lot easier to find components for those formats. Especially for the ZIP format.
I've also looked at http://www.arjsoftware.com/ which is the site of the original creator. They only provide the free extraction sourcecode, not the sourcecode for compression so if your application includes, ARJ compression then you might be violating their patent on the algorithm or fileformat. Which is another reason why you don't find that many alternate ARJ tools. The ZIP format is a lot more free. And according to that site, ARJ is not available on other operating systems except Windows.

More sites googled:
http://arj.sourceforge.net/ is an open-source version of ARJ.
http://www.delphipages.com/skunkworks/swcompress.html lists several libraries for compression. It mentions http://www.ziptv.com/ as an ARJ component that includes other formats.

And well, the problem you'll always will have is that most sourcecode you find on the Internet for compression will be written in C or C++. But one option could be to create a DLL out of those sources and use this DLL from Delphi. But like you, I'm not a C++ expert so I can't help you there.
0
 

Author Comment

by:HaL
ID: 12185326
Many thanks for your help, although you were the only one to respond to my question i can see that you have gone to the time and effort of providing as much info as possible for me and i am very gratefull.

The reasons for my interest in ARJ stemmed from an experiment with DLink firmware which uses the compression technique and hence the reason why i did not choose to implement a more freely distributed algorithm.

In order to save hassling the sites moderators over this, i have decided to award you full point as you have made it clear that even if others wanted to help... legalities may have in some way prevented it.

Thanks again.
0
 
LVL 17

Expert Comment

by:Wim ten Brink
ID: 12194218
Thank you. :-)
Personally, my motto is 'no cure, no pay' so if you didn't want to award the points, I would have no problems with it. But sometimes, the answer is that there's no solution, so I assume that's the case here.
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction I have seen many questions in this Delphi topic area where queries in threads are needed or suggested. I know bumped into a similar need. This article will address some of the concepts when dealing with a multithreaded delphi database…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
This Micro Tutorial will teach you how to censor certain areas of your screen. The example in this video will show a little boy's face being blurred. This will be demonstrated using Adobe Premiere Pro CS6.
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question