#1381 The help file can not be open by clicking "?" at the top right corner of "options" window.

open
nobody
None
5
2014-12-09
2013-11-20
yiyun
No

1.Launch "7_zip File Manager" -> "Tools" -> "Options" to open the "options" window.
2..Click the "?" at the top right corner of the window, then click any other options in this window, verify the help file can not be launched.

Discussion

  • Michael Barber

    Michael Barber - 2014-11-24

    Apply this patch to the 7z922 source code. You will also need the .chm file.

     
  • Michael Barber

    Michael Barber - 2014-11-24

    The required .chm file.

     
  • Igor Pavlov

    Igor Pavlov - 2014-11-25

    Now I'm not ready to change it.
    Maybe later I'll think about it.
    Thanks!

     
  • Billy.Liu

    Billy.Liu - 2014-12-05

    Hi Michael,

    I got error log while compiling. Seems something wrong in ../FileManager/HelpUtils.cpp.
    Would you please help to take a look?

    HelpUtils.cpp:

    void ShowPopUpText(LPHELPINFO helpInfo)
    {
        FString path = NWindows::NDLL::GetModuleDirPrefix();
        HH_POPUP hp;
        ZeroMemory(&hp, sizeof(hp));
        hp.cbStruct = sizeof(hp);
        hp.idString = helpInfo->iCtrlId;
        hp.pt = helpInfo->MousePos;
        hp.clrForeground = -1;
        hp.clrBackground = -1;
        hp.rcMargins.left = -1;
        hp.rcMargins.top = -1;
        hp.rcMargins.right = -1;
        hp.rcMargins.bottom = -1;
    
        HtmlHelp((HWND)helpInfo->hItemHandle, GetSystemString(fs2us(path) + kHelpFileName + L"Options.txt"), HH_DISPLAY_TEXT_POPUP, (DWORD_PTR)&hp);
    }
    

    Error Log:

    Microsoft (R) Program Maintenance Utility Version 11.00.50727.1
    Copyright (C) Microsoft Corporation.  All rights reserved.
    
            cd UI
            "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\nmake.exe" -
    nologo
            cd Client7z
            "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\nmake.exe" -
    nologo
            cd ..
            cd Console
            "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\nmake.exe" -
    nologo
            cd ..
            cd Explorer
            "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\BIN\nmake.exe" -
    nologo
            cl  -I ../../../  -DLANG -DWIN_LONG_PATH -Gr -nologo -c -FoO/ -WX -EHsc
    -Gy -GR- -MT -W4 -GS- -Zc:forScope -O1 -Yu"StdAfx.h" -FpO/a.pch ../FileManager/H
    elpUtils.cpp
    HelpUtils.cpp
    ../FileManager/HelpUtils.cpp(27) : error C2220: warning treated as error - no 'o
    bject' file generated
    ../FileManager/HelpUtils.cpp(27) : warning C4245: '=' : conversion from 'int' to
     'COLORREF', signed/unsigned mismatch
    ../FileManager/HelpUtils.cpp(28) : warning C4245: '=' : conversion from 'int' to
     'COLORREF', signed/unsigned mismatch
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 11.0
    \VC\BIN\cl.EXE"' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 11.0
    \VC\BIN\nmake.exe"' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 11.0
    \VC\BIN\nmake.exe"' : return code '0x2'
    

    Thanks
    Billy

     
  • Michael Barber

    Michael Barber - 2014-12-05

    Hi Billy,

    I see the warnings are pointing to the section of the code where the foreground and background colors for the popup are applied. According to what I read on MSDN values of "-1" are allowed and are used to select the system's default color scheme.

    http://msdn.microsoft.com/en-us/library/windows/desktop/ms524362%28v=vs.85%29.aspx (specifically clrForeground and clrBackground)

    I have reproduced your error and have a couple of solutions for you.

    So, it looks like you are running nmake with the "NEW_COMPILER=1" flag as mentioned in some how to compile 7-Zip guides. The problem lies in the "Build.mak" file on line 57.

    !IFDEF NEW_COMPILER
    CFLAGS = $(CFLAGS) -W4 -GS- -Zc:forScope
    !ELSE

    If you change the "-W4" to a "-W3" this should reduce the warning level and resolve your issue. Alternatively you could just omit the "NEW_COMPILER=1" flag altogether.

    Another solution would be to make the following changes to HelpUtils.cpp:

    1. Replace the "-1" on the hp.clrForeground line with "RGB(0, 0, 0)" for black text
    2. Replace the "-1" on the hp.clrBackground line with "RGB(255, 255, 255)" for a white background

    This unfortunately would not default to your Windows color scheme but should be satisfactory depending on your needs.

    Let me know how this works out for you

     
    Last edit: Michael Barber 2014-12-05
  • Billy.Liu

    Billy.Liu - 2014-12-09

    Hi Michael,

    Changing "-W4" to "-W3" works for me. I got the pass result.
    The explanation prompts successfully on the option.
    Many thanks for your help and hard work.

    7zip

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks