emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: extracting a zip archive via elisp (with no external executables)


From: Fabrice Popineau
Subject: Re: extracting a zip archive via elisp (with no external executables)
Date: Mon, 10 Jul 2017 09:25:51 +0200

Why not build a self-extracting .exe file ?

Fabrice

2017-07-09 22:16 GMT+02:00 Saulius Menkevičius <address@hidden>:

> Am 09.07.2017 um 23:09 schrieb Eli Zaretskii <address@hidden>:
>
>> From: Saulius Menkevičius <address@hidden>
>> Date: Sun, 9 Jul 2017 22:49:50 +0300
>> Cc: address@hidden,
>> address@hidden,
>> address@hidden
>>
>>>    (w32-shell-execute "open" "FILENAME.zip")
>>> or
>>>    (w32-shell-execute "explore" "FILENAME.zip")
>>>
>>> (replace FILENAME.zip with the actual file name).  This will open the
>>> Windows Explorer showing the contents of the zip archive, and you
>>> should tell your users to click "File->Extract all" to extract the
>>> files into the directory of their choosing.
>>>
>>>> Instructing the user to install 7-zip or something else manually kind of
>>>> invalidates the purpose of automatic installation.
>>>
>>> Please never suggest to install 7z, it's not Free Software on Windows
>>> (and on Unix it's less capable to make it Free Software).  If someone
>>> needs 7z capabilities, the best Free Software alternative is bsdtar
>>> from the libarchive project.
>>
>> My questions is still, is it possible to avoid involving user in this procedure?
>
> But the user is already involved -- they started the installation to
> begin with, didn't they?  So why do you want so hard to avoid them
> clicking one more button?

But then they probably need to specify target directory or do other things with
the UI that pops out. And they leave emacs (even if for a moment). Ideally I
would want to make this procedure slick and low profile… Which it is on
LInux/macOS..

>
>> Or do I need to roll out my own zip parser + extractor in elisp to do so :(
>> Which is probably slightly complicated thing to do.. Compared to what I
>> am trying to achieve.
>
> Maybe somebody knows how to tell the Explorer to extract the files
> without user interaction.  I don't.


I was looking for this a bit too, and yeah, people propose the same thing,
i.e. invoke „rundll32 zipfldr.dll,RouteTheCall file.zip“ but I have not found yet
any exports that do extract the file automatically..

Thanks for your thoughts! I think I will come to some kind of solution
eventually. Hopefully this will avoid writing a homemade zip file parser.

-BR,
Saulius



--
Fabrice Popineau
-----------------------------
CentraleSupelec
Département Informatique
3, rue Joliot Curie
91192 Gif/Yvette Cedex
Tel direct : +33 (0) 169851950
Standard : +33 (0) 169851212
------------------------------


reply via email to

[Prev in Thread] Current Thread [Next in Thread]