The project hangs at 73% error in c++, how to fix?

Please help, maybe I do something wrong? but when launching unreal engine 4 Rochet, when I run through visual studio 2017 shows this error and the project hangs at 73%, then the same krasitsja5c9cf58826a0d922192872.jpeg
March 19th 20 at 09:04
2 answers
March 19th 20 at 09:06
Looks like a memory access by null pointer.
Run under the debugger and see where you have a null pointer.
Launched all the same - Adelia_Erns commented on March 19th 20 at 09:09
5c9d09ed392d8928121906.jpeg - Adelia_Erns commented on March 19th 20 at 09:12
@Adelia_Erns, but of course the same :-) what did you expect?
In the debugger you will see the line on which falls the app, put a breakpoint before this line and run again under the debugger. When stopped at the breakpoint, step into the program, tracking all variables in the current line.
In General learn how to work with the debugger, without it's hard to be a programmer, especially in the pros. - stephania commented on March 19th 20 at 09:15
It seems that the SceneCapture->TextuteTarget you have zero, ie the previous line is assigned NULL there.
Understand why NewRenderTarget.Object is equal to 0.
Check the value NewRenderTarget.Object in the debugger, setting the previous line breakpoint. - stephania commented on March 19th 20 at 09:18
And why not post screenshots here.
Give the code in the tag with a text description of the error is much more informative. - stephania commented on March 19th 20 at 09:21
@albert, to Throw all the code? xD It's very big - Adelia_Erns commented on March 19th 20 at 09:24
check
bool Succeeded()
What does he say?

The docks have certainly "very detailed". - cierra_Kreiger19 commented on March 19th 20 at 09:27
@Adelia_Erns, more 10K's allowed to throw - Adelia_Erns commented on March 19th 20 at 09:30
@Adelia_Erns,
To throw all the code?

Not necessary. The last screenshot shows that the SceneCapture->TextuteTarget == 0, so the error.
Sort it out.
There are still errors, post the code where it happens. - stephania commented on March 19th 20 at 09:33
@Adelia_Ernswhy that the throw if it is (to be) searched once or twice
https://pastebin.com/tdHUeQHv - cierra_Kreiger19 commented on March 19th 20 at 09:36
@cierra_Kreiger19, No idea, the code itself was generated with - Adelia_Erns commented on March 19th 20 at 09:39
@cierra_Kreiger19that you threw 51 error - Adelia_Erns commented on March 19th 20 at 09:42
@cierra_Kreiger19, 5c9d0f619a095800749298.jpeg - Adelia_Erns commented on March 19th 20 at 09:45
@stephania,
// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.

/*=============================================================================
 ConstructorHelpers.h: Constructor helper templates
=============================================================================*/

#pragma once

#include "CoreMinimal.h"
#include "Templates/SubclassOf.h"
#include "UObject/Package.h"

namespace ConstructorHelpersInternal
{
 template<typename T>
 inline T* FindOrLoadObject( FString& PathName )
{
 // If there is no dot, add a dot and repeat the object name.
 int32 PackageDelimPos = INDEX_NONE;
 PathName.FindChar( TCHAR('.'), PackageDelimPos );
 if( PackageDelimPos == INDEX_NONE )
{
 int32 ObjectNameStart = INDEX_NONE;
 PathName.FindLastChar( TCHAR('/'), ObjectNameStart );
 if( ObjectNameStart != INDEX_NONE )
{
 const FString ObjectName = PathName.Mid( ObjectNameStart+1 );
 PathName += TCHAR('.');
 PathName += ObjectName;
}
}

 UClass* Class = T::StaticClass();
 Class->GetDefaultObject(); // force the CDO to be created if it hasn't already
 T* ObjectPtr = LoadObject<T>(NULL, *PathName);
 if (ObjectPtr)
{
ObjectPtr->AddToRoot();
}
 return ObjectPtr;
}

template<>
 inline UPackage* FindOrLoadObject<UPackage>( FString& PathName )
{
 // If there is a dot, remove it.
 int32 PackageDelimPos = INDEX_NONE;
 PathName.FindChar( TCHAR('.'), PackageDelimPos );
 if( PackageDelimPos != INDEX_NONE )
{
PathName.RemoveAt(PackageDelimPos,1,false);
}

 // Find the package in memory. 
 UPackage* PackagePtr = FindPackage( nullptr, *PathName );
 if( !PackagePtr )
{
 // If it is not in memory, try to load it.
 PackagePtr = LoadPackage( nullptr, *PathName, LOAD_None );
}
 if (PackagePtr)
{
PackagePtr->AddToRoot();
}
 return PackagePtr;
}

 inline UClass* FindOrLoadClass(FString& PathName, UClass* BaseClass)
{
 // If there is no dot, add ".<object_name>_C"
 int32 PackageDelimPos = INDEX_NONE;
 PathName.FindChar(TCHAR('.'), PackageDelimPos);
 if (PackageDelimPos == INDEX_NONE)
{
 int32 ObjectNameStart = INDEX_NONE;
 PathName.FindLastChar(TCHAR('/'), ObjectNameStart);
 if (ObjectNameStart != INDEX_NONE)
{
 const FString ObjectName = PathName.Mid(ObjectNameStart + 1);
 PathName += TCHAR('.');
 PathName += ObjectName;
 PathName += TCHAR('_');
 PathName += TCHAR('C');
}
}
 UClass* LoadedClass = StaticLoadClass(BaseClass, NULL, *PathName);
 if (LoadedClass)
{
LoadedClass->AddToRoot();
}
 return LoadedClass;
}
}

struct COREUOBJECT_API ConstructorHelpers
{
public:
 template<class T>
 struct FObjectFinder
{
 T* Object;
 FObjectFinder(const TCHAR* ObjectToFind)
{
CheckIfIsInConstructor(ObjectToFind);
 FString PathName(ObjectToFind);
StripObjectClass(PathName,true);

 Object = ConstructorHelpersInternal::FindOrLoadObject<T>(PathName);
 ValidateObject( Object, PathName, ObjectToFind );
}
 bool Succeeded() const
{
 return !!Object;
}
};

 template<class T>
 struct FObjectFinderOptional
{
private:
 T* Object;
 const TCHAR* ObjectToFind;
public:
 FObjectFinderOptional(const TCHAR* InObjectToFind)
 : Object(nullptr)
 , ObjectToFind(InObjectToFind)
{
}
 T* Get()
{
 if (!Object && ObjectToFind)
{
CheckIfIsInConstructor(ObjectToFind);
 FString PathName(ObjectToFind);
StripObjectClass(PathName,true);

 Object = ConstructorHelpersInternal::FindOrLoadObject<T>(PathName);
 ValidateObject( Object, PathName, ObjectToFind );

 ObjectToFind = nullptr; // don't try to look again
}
 return Object;
}
 bool Succeeded()
{
 return !!Get();
}
};

 template<class T>
 struct FClassFinder
{
 TSubclassOf<T> Class;
 FClassFinder(const TCHAR* ClassToFind)
{
CheckIfIsInConstructor(ClassToFind);
 FString PathName(ClassToFind);
 StripObjectClass(PathName, true);
 Class = ConstructorHelpersInternal::FindOrLoadClass(PathName, T::StaticClass());
 ValidateObject(*Class, PathName, *PathName);
}
 bool Succeeded()
{
 return !!*Class;
}
};

public:
 /** If there is an object class, strips it off. */
 static void StripObjectClass( FString& PathName, bool bAssertOnBadPath = false );

private:
 static void ValidateObject(UObject *Object, const FString& PathName, const TCHAR* ObjectToFind)
{
 if (!Object)
{
FailedToFind(ObjectToFind);
}
#if UE_BUILD_DEBUG
 else 
{
 CheckFoundViaRedirect(Object, PathName, ObjectToFind);
}
#endif
}

 static void FailedToFind(const TCHAR* ObjectToFind);
 static void CheckFoundViaRedirect(UObject *Object, const FString& PathName, const TCHAR* ObjectToFind);
 static void CheckIfIsInConstructor(const TCHAR* ObjectToFind);
};
- Adelia_Erns commented on March 19th 20 at 09:48
@stephania, 5c9d116395b08405184936.jpeg - Adelia_Erns commented on March 19th 20 at 09:51
@Adelia_Erns, Where is the error? You have triggered a breakpoint. - stephania commented on March 19th 20 at 09:54
@albert, the Project does not start - Adelia_Erns commented on March 19th 20 at 09:57
@stephania, 5c9d13812b673523020698.jpeg - Adelia_Erns commented on March 19th 20 at 10:00
March 19th 20 at 09:08
You have an error two rows above, most likely something with the file specified in the constructor of the path because the object is not created
With this I figured out there was another 5c9d11a24151d286269606.jpeg - Adelia_Erns commented on March 19th 20 at 09:11
@Adelia_Ernsinto the code you have that checks for empty pointers? Today your wishes are used up, Soren. - Angelita.Koch commented on March 19th 20 at 09:14

Find more questions by tags Unreal EngineC++