JPEG Saver 5.33.1

Published

Here's a quick update to fix the false positives that some virus scanners were reporting for the last couple of versions. I wasn't expecting it to be this easy to fix, which is why this update is coming so soon after 5.33.

Failure to launch

The virus warnings were not caused by the main JPEG Saver screensaver, but by the small utility I included for launching it in desktop helper mode. I've fixed it by removing the utility - the installer now installs a second copy of JPEG Saver that checks its own filename and uses that to decide whether to run as a screensaver or the desktop helper.

Why the trojan identification?

As far as I can make out, the launcher is flagged as a trojan because it starts the screensaver and passes in an argument.

In fact, here is the whole of the source for the helper launcher for anyone curious about what nefarious activities it gets up to:

void ShowError(const wchar_t* msg);

int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
    _In_opt_ HINSTANCE /* hPrevInstance */,
    _In_ LPWSTR /* lpCmdLine */,
    _In_ int nCmdShow)
{
    constexpr int len = 32768;
    wchar_t* cmdline = new wchar_t[len];
    wchar_t* windows = nullptr;
    if(S_OK != SHGetKnownFolderPath(FOLDERID_Windows, 0, nullptr, &windows))
    {
        ShowError(L"Unable to find Windows folder.");
        return 0;
    }

    StringCchCopy(cmdline, len, windows);
    StringCchCat(cmdline, len, L"\\JPEGSavr.scr /b");
    CoTaskMemFree(windows);

    STARTUPINFO si{};
    PROCESS_INFORMATION pi{};
    si.cb = sizeof(si);
    if(CreateProcess(nullptr, cmdline, nullptr, nullptr, TRUE,
        CREATE_NEW_PROCESS_GROUP | DETACHED_PROCESS,
        nullptr, nullptr, &si, &pi))
    {
        CloseHandle(pi.hProcess);
        CloseHandle(pi.hThread);
    }
    else
    {
        ShowError(L"Unable to start Helper.");
    }

    delete[] cmdline;
    return 0;
}

void ShowError(const wchar_t* msg)
{
    MessageBox(nullptr, msg, L"JPEG Saver helper launcher error",
        MB_OK | MB_ICONEXCLAMATION);
}

I think it is fairly safe to release this code - even though it gets identifed as a trojan I don't believe anyone will be using it to take over the world.

Download here

The updated installers are available from the downloads page.

« Previous: JPEG Saver 5.33 Next: JPEG Saver 5.34 »

This site uses cookies - details here.