0

BrowserPlus.Zipper.createZip() doesn't work if McAfee is installed or WinZip is not installed?

Hello,

BrowserPlus.Zipper.createZip() doesn't work if McAfee Antivirus is installed or WinZip is not installed?

In a PC where is not installed McAfee Antivirus and WinZip is actually installed, there is no problem using BrowserPlus.Zipper.createZip().

But in a PC where McAfee Antivirus is installed and WinZip is not installed (but ZipCentral and 7-zip are installed), then BrowserPlus.Zipper.createZip() doesn't work.

Tried to run demo on http://browserplus.yahoo.com/developer/exp.../test/CreateZip, but after clicking Execute button, textbox doesn't accept my selected files to zip.

by
5 Replies
  • Ok. I got the error. I tested Browserplus in 3 PCs with Windows XP: 2 ones with Spanish O/S and the other one with English O/S.

    createZip() doesn't work in the ones that have Spanish Windows XP !

    It only works on English Windows XP.

    Hope you could find any solution.

    Cheers
    0
  • QUOTE (JorgeB @ Dec 9 2009, 06:07 PM) <{POST_SNAPBACK}>
    Ok. I got the error. I tested Browserplus in 3 PCs with Windows XP: 2 ones with Spanish O/S and the other one with English O/S.

    createZip() doesn't work in the ones that have Spanish Windows XP !

    It only works on English Windows XP.

    Hope you could find any solution.

    Cheers


    Hey Jorge,

    Thanks for taking the time to track this down! I've opened an issue to track this for you:

    http://github.com/browserplus/bp-zipper/issues#issue/1

    best,
    lloyd
    0
  • QUOTE (Lloyd Hilaiel @ Dec 9 2009, 08:28 PM) <{POST_SNAPBACK}>
    Hey Jorge,

    Thanks for taking the time to track this down! I've opened an issue to track this for you:

    http://github.com/browserplus/bp-zipper/issues#issue/1

    best,
    lloyd

    Hi Lloyd,

    I don't know C++, but reading source code of browserplus-bp-zipper-331e059, I see that it is used allways UTF8. Non-ascii systems uses UTF7 encoding.
    By instance, there is this function in program service.cpp:

    IVisitor::tResult
    Zipper::SizeVisitor::visitNode(const Path& p,
    const Path& /*relPath*/)
    {
    try {
    // "p" will be a link if !followLinks or if
    // link is broken. In either case, we won't
    // be archiving it
    if (isLink(p)) {
    return eOk;
    }

    if (bfs::is_directory(p)) {
    // dirs count as 1 byte
    m_size++;
    } else if (bfs::exists(p)) {
    m_size += bfs::file_size(p);
    }
    } catch (const tFileSystemError& e) {
    m_zipper->log(BP_ERROR, "SizeVisitor on " + p.utf8()
    + "catches boost::filesystem exception, path1: '"
    + Path(e.path1()).utf8()
    +", path2: '" + Path(e.path2()).utf8()
    + "' (" + e.what() + ")");
    }
    return eOk;
    }

    All functions in service.cpp use UTF8. Maybe using UTF7, as well, will allow to zip on non-ascii systems.

    Is there any chance that soon we could use bp-zipper on non-ascii system?

    Best Regards.
    0
  • Actually, BrowserPlus on Windows uses unicode pathnames. The "utf8()" that you're seeing is just because our logging apis only accept string args (not wstring). The issue with Zipper and non-ascii paths is that the underlying zip library that we use doesn't support unicode. I'm in the process of looking at moving Zipper to a different underlying zip library which does understand unicode.

    -- gordon
    0
  • Jorge,

    A new Archiver service is now available (see http://browserplus.yahoo.com/developer/explore/). It handles zip and tar formats, including compression. It's written on top of the excellent libarchive library which does a much better job handling non-ascii pathnames.

    -- gordon
    0
This forum is locked.

Recent Posts

in Support & General Questions