Jon is right, Jordan. Calling a seperate app from your code creates a slew
of dependencies and issues for applications. I'd recommend against it.
Examples:
-- Customer A works for a large corporation that controls the manner in
which apps can be installed on the desktop. They review the install for
your app and, seeing that you are installing two executables instead of one,
simply refuse to allow the app to be installed. (= lost sale).
-- Customer B installs your app and then, the next day, downloads a zip file
sent from their customer. They double-click the zip file, as always, but
this time, a different app opens up to handle it because your zip app has
registered itself to handle files with the extension of .ZIP. They freak
out and call Customer Support in their company. After hours of frustration,
customer support figures out that the customer had installed your app, and
advises them to uninstall your app. They then place a rule in the corporate
knowledge base to advise everyone else to uninstall the app as well. (=
lost sale and lost reputation)
-- Customer C has a memory constrained environment. They run your app,
which attempts to decompress a large file. This takes a long time. Because
the zip app is external and async, your app thinks that the uncompression
has completed already and attempts to open the uncompressed file, which
fails. (= impression of code defects)
-- Customer D hears of a virus that has shown up and proactively searches on
their machine for files of a specific name. They find the zip program and
delete it. Your app simply starts to fail. (= impression of poor quality).
--
--- Nick Malik [Microsoft]
MCSD, CFPS, Certified Scrummaster
http://blogs.msdn.com/nickmalik
Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
I do not answer questions on behalf of my employer. I'm just a
programmer helping programmers.
--
"Jordan" <A@B.COM> wrote in message
news:uf**************@TK2MSFTNGP11.phx.gbl...
RE:
<< ...a lot more complicated... >>
Can you explain? It seems pretty straight-forward to me.
"Jon Skeet [C# MVP]" <sk***@pobox.com> wrote in message
news:MP************************@msnews.microsoft.c om... Jordan <A@B.COM> wrote: Highly recommended: http://www.7-zip.org/
Here's their Sourceforge page: http://sourceforge.net/projects/sevenzip/
Two versions are available - one with a GUI and a compact (< 500K )
command
line version that you can execute from your code - passing in parameters
for
what to zip (input and output file name).
And it's free.
Starting a separate process makes life a lot more complicated than
using a library from within your own code.
--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too