Note: Forums will be making significant UX changes to address key usability improvements surrounding search, discoverability and navigation. To learn more about these changes please visit the announcement which can be found HERE.
Project : error PRJ0002 : Error result -1073741515

回答済み Project : error PRJ0002 : Error result -1073741515

  • 2006年5月23日 21:38
     
     

    Well, I know I am not the first one having this problem .

    The answers and solutions given in previous messages in these forums did not help.

    I am on my 6th day of darkness after I downloaded Visual Studio Express .

    Yes I am a Newbie , who wants to learn C++ code.

    Here is the error message I get :

     

    1>------ Build started: Project: new, Configuration: Debug Win32 ------

    1>Compiling...

    1>Project : error PRJ0002 : Error result -1073741515 returned from 'C:\Program Files\Microsoft Visual Studio 8\VC\bin\cl.exe'.

    1>Build log was saved at "file://c:\Documents and Settings\Hilari\My Documents\Visual Studio 2005\Projects\new\new\Debug\BuildLog.htm"

    1>new - 1 error(s), 0 warning(s)

    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

    Well, I do have my cl.exe in the VC/Bin  folder .

    I did put it in the executable files under VC++ directories and what else can I say ? Nothing has helped so far.

    Anyone has gone through this ?

    I know that a user of a proffessional version had the same error and after gettin non helpful advice , he himself found the way around but he never specified how.He wrote:

     (Quote) "Thank you for your reply although it didnt work it did help me find the solution .In the end all i did was move the order of the directories around a bit and it compiled fine , in the end it only took 6 hours to find out

    I would very much appreciate any useful help about this issue.

    It is keeping me from learning C++ code and I just can't wait to get started .

     

    Thank you in advance .

     

    Hilari

すべての返信

  • 2006年5月24日 2:20
    モデレータ
     
     回答済み

     Hilari wrote:
    Error result -1073741515 returned from 'C:\Program Files\Microsoft Visual Studio 8\VC\bin\cl.exe'.

    A very large negative number like tis is usually an HRESULT or error code.  The layout of an HRESULT is desctibed in WinError.h (amongst other places)


    //   3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1
    //   1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
    //  +---+-+-+-----------------------+-------------------------------+
    //  |Sev|C|R|     Facility          |               Code            |
    //  +---+-+-+-----------------------+-------------------------------+
    //
    //  where
    //
    //      Sev - is the severity code
    //
    //          00 - Success
    //          01 - Informational
    //          10 - Warning
    //          11 - Error
    //
    //      C - is the Customer code flag
    //
    //      R - is a reserved bit
    //
    //      Facility - is the facility code
    //
    //      Code - is the facility's status code

     

    Treated as a hex DWORD, the error code you are seeing is 0xC0000135.  That is Sev=11, C=0, R=0, Facility=0, Code=0x0135.  The facility field can often be used to determine the source of the error code but a facility field value of zero (or FACILITY_NULL) doesn't really tell us a whole lot.

    Without a useful facility field to suggest a source, we are reduced to searching the Win32 API header files for a definition or searching the documentation for a description.  Often a good place to start is WinError.h of course.  Sometimes you have to search for the full HRESULT (0xC0000135) or the error code alone 0x0135 or the error code in decimal (309) as all three techniques are sometimes used to construct HRESULTS and error codes.

    In this particular case, the value 0xC0000135 can be found in NtStatus.h with the following definition


    //
    // MessageId: STATUS_DLL_NOT_FOUND
    //
    // MessageText:
    //
    //  {Unable To Locate Component}
    //  This application has failed to start because %hs was not found.

    // Re-installing the application may fix this problem.
    //

    #define STATUS_DLL_NOT_FOUND             ((NTSTATUS)0xC0000135L)

     

    That gives us the suggestion that your problem may be occurring because the C compiler (cl.exe) is unable to load some DLL for some reason.  Of course, without knowing which DLL is missing it is rather hard to figure out what might be wrong or how to put it right.

    There are at least two good tools for tracking down this sort of problem.  One tool from Microsoft called Depends (depends.exe) will read a code file and list all the DLLs statically linked to the file (or linked to a DLL linked to the file etc.)  The tool's profiling mode will run a program for you and show all that program's LoadLibrary calls, which is useful for finding DLLs that are not statically linked (e.g., explicit LoadLibrary calls in the code).

    Depends doesn't seem to be distributed with the express editions, but it is available as part of the Platform SDK.  http://technet2.microsoft.com/WindowsServer/en/Library/4e43ba6c-e297-422c-9873-9538cab18ee61033.mspx

    The other tool is Filemon from SysInternals.  This freeware utility can be used to monitor all file system activity by a program (or set of programs or all programs).  That includes failed attempts to load a DLL, so Filemon can be used to track down the DLL that is missing or misplaced.  http://www.sysinternals.com/Utilities/Filemon.html

    You should be able to use one of these tools to track down which DLL you are having trouble with.  Once you know that we can figure out whether that DLL is missing from your system, or is not where it should be or is where it should be but isn't being found by cl.exe for some reason.

    I did put it in the executable files under VC++ directories and what else can I say ? Nothing has helped so far.

    That is more likely to muddy the waters than anything else.  I suggest you delete any extra copies of cl.exe that you may have created before trying any more tests.

  • 2008年2月5日 3:14
     
     
    I have had a similar problem (I'm using Microsoft Visual C++ 2008 express )  I was having errors with not being able to find MSVCR90.dll. One thing lead to another and I found that my program would compile if I changed the drop down list from 'Debug' to 'Release'. It is the drop down list next to the "Start Debugging' button (Green arrow pointing right thingy) on one of the tool bars. I hope that helps.
  • 2012年5月8日 17:44
     
     
    It turns out that your two links for utilities to research this problem have been "deprecated" (for want of a better term).  Following up on the filemon suggestion, leads one to a new utility that can be download that supposedly "contains Filemon capabilities".  It is called "Process Monitor."  It is considerably more difficult to use as it is rather ubiquitous in what it captures (even filtered down).