none
Detours 3.0 Express: Unable to Compile (multiple of the same errors) -- Although not completely helpful errors RRS feed

  • Question

  • Hello,

    I downloaded Detours express version 3.0 build 339.

    When I try to NMAKE it I get the following errors - fatal error C1189: #error:  Feature not supported in this release. (please see full messaging below).

    Any help is appreciated. If I figure it out before I will comment back.

    • Visual Studio 2015 (fully patched)
    • Windows 10 (fully patched)
    • Tried it with the Developer Prompt and the Cross x86/x64 prompt
    • Tried with Admin and Non-Admin users
    • This will be for a windows app (not an arm, mobile etc)

    Microsoft (R) Program Maintenance Utility Version 14.00.24210.0
    Copyright (C) Microsoft Corporation.  All rights reserved.

            cl /W4 /WX /Zi /MT /Gy /Gm- /Zl /Od /DWIN32_LEAN_AND_MEAN /D_WIN32_WINNT=0x501 /Fd..\lib.X86\detours.pdb /Foobj.X86\ /c disolx64.cpp disolia64.cpp disolarm.cpp
    Microsoft (R) C/C++ Optimizing Compiler Version 19.00.24213.1 for x64
    Copyright (C) Microsoft Corporation.  All rights reserved.

    disolx64.cpp
    c:\detours\detours express version 3.0 build_339\express\src\disasm.cpp(218): fatal error C1189: #error:  Feature not supported in this release.
    disolia64.cpp
    c:\detours\detours express version 3.0 build_339\express\src\disasm.cpp(1566): fatal error C1189: #error:  Feature not supported in this release.
    disolarm.cpp
    c:\detours\detours express version 3.0 build_339\express\src\disasm.cpp(2235): fatal error C1189: #error:  Feature not supported in this release.
    Generating Code...
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\cl.EXE"' : return code '0x2'
    Stop.

    Thanks for the help :-)


    • Edited by Anokneemous Wednesday, December 14, 2016 6:53 PM Quick Info Addition
    Wednesday, December 14, 2016 6:52 PM

Answers

  • Since the Detours Express only supports 32-bit processes, some of the files, such as disolx64.cpp and disolarm.cpp, cannot be compiled.

    To work around the problem, try commenting the ‘#include "disasm.cpp"’ directives in the “disol*.cpp” files that generate the fatal error messages (i.e. excepting “disolx86.cpp”). Then compile using “nmake” command.

    See Readme files about compilation and running samples.

    Check the License and create backup copies before making the changes.


    • Marked as answer by Anokneemous Thursday, December 15, 2016 12:09 AM
    • Edited by Viorel_MVP Thursday, December 15, 2016 5:28 AM
    Wednesday, December 14, 2016 7:47 PM

All replies

  • Since the Detours Express only supports 32-bit processes, some of the files, such as disolx64.cpp and disolarm.cpp, cannot be compiled.

    To work around the problem, try commenting the ‘#include "disasm.cpp"’ directives in the “disol*.cpp” files that generate the fatal error messages (i.e. excepting “disolx86.cpp”). Then compile using “nmake” command.

    See Readme files about compilation and running samples.

    Check the License and create backup copies before making the changes.


    • Marked as answer by Anokneemous Thursday, December 15, 2016 12:09 AM
    • Edited by Viorel_MVP Thursday, December 15, 2016 5:28 AM
    Wednesday, December 14, 2016 7:47 PM
  • Thanks Viorel,

    That seems to do the trick. It would be nice if the readme file said more than "run nmake at the root of the source"... not very helpful. Would have been easy for them to actually say that in the express readme file and or just not included it, since it's not supported.

    Much Appreciated :-)!!

    Thursday, December 15, 2016 12:09 AM
  • thanks~
    Saturday, February 4, 2017 2:00 PM