Simple Plugin code does not compile [noob question?]

Hi,
In UE5.32 i created a new blank C++ project and added a new Plugin (Edit → Plugins → New Plugin). This added new plugin class files to the VS project - all good. Code compiles as expected. Now i wanted to a new class in the plugins header file and VS gives me a strange complaint. Unfortunatly, u culdnt figure it out on my own yet :(. Here is the header file:

// Copyright Epic Games, Inc. All Rights Reserved.

#pragma once

#include "CoreMinimal.h"
#include "Modules/ModuleManager.h"
#include "Engine/TimecodeProvider.h"

UCLASS()
class YOURPLUGIN_API OffsetTimecodeProvider : public UTimecodeProvider
{
    GENERATED_BODY()

public:
    FTimecode GetTimecode() const override;
    FQualifiedFrameTime GetQualifiedFrameTime() const override;
};

class FOffsetTimecodeProviderPluginModule : public IModuleInterface
{
public:

	/** IModuleInterface implementation */
	virtual void StartupModule() override;
	virtual void ShutdownModule() override;
};

I justed added the new class which inherits from UTimecodeProvider. VS already complaints weirdly:


(VS expects “;” … No clue why. All examples do it this way… Also the code from other classes which inherits UTimecodeProvider, but here it does not work ). When i compile, compiler also fails … expects “include “OffsetTimecodeProvider.generated.h”” at start of OffsetTimecodeProvider.h file… but there is no generated.h (also when i recreate solution files with *.uproject file). Would be very thankful if someone could shed some light.

Through this plugin I wanted to create a new UTimecodeProvider class i can set and use in a project. Thanks in advance.

Hi Daniel,

Those are just intellisense errors - they’re safe to ignore, they’re not part of the actual building process - in fact, you can remove them from you error list by selecting this option:

Hi, that was already helpful :slight_smile: thank you.
But it still does not compile. What i found so far: i can include the generated.h after all my includes (seems it gets generated during build process). Then i had to rename my new class from OffsetTimecodeProvider to UOffsetTimecodeProvider (some precheck in visual studio failed and directly prompted to rename the OffsetTimecodeProvider to UOffsetTimecodeProvider). So this part seems to be fine now. That is the code now:

// Copyright Epic Games, Inc. All Rights Reserved.

#pragma once

#include "CoreMinimal.h"
#include "Modules/ModuleManager.h"
#include "Engine/TimecodeProvider.h"

#include "OffsetTimecodeProviderPlugin.generated.h"

UCLASS()
class YOURPLUGIN_API UOffsetTimecodeProvider : public UTimecodeProvider
{
    GENERATED_BODY()

public:
    FTimecode GetTimecode() const override;
    FQualifiedFrameTime GetQualifiedFrameTime() const override;
};

class FOffsetTimecodeProviderPluginModule : public IModuleInterface
{
public:

	/** IModuleInterface implementation */
	virtual void StartupModule() override;
	virtual void ShutdownModule() override;
};

this is the cpp file:

// Copyright Epic Games, Inc. All Rights Reserved.

#include "OffsetTimecodeProviderPlugin.h"

#define LOCTEXT_NAMESPACE "FOffsetTimecodeProviderPluginModule"

FTimecode UOffsetTimecodeProvider::GetTimecode() const
{
	return FTimecode{};
}

FQualifiedFrameTime UOffsetTimecodeProvider::GetQualifiedFrameTime() const
{
	return FQualifiedFrameTime{};
}


void FOffsetTimecodeProviderPluginModule::StartupModule()
{
	// This code will execute after your module is loaded into memory; the exact timing is specified in the .uplugin file per-module
}

void FOffsetTimecodeProviderPluginModule::ShutdownModule()
{
	// This function may be called during shutdown to clean up your module.  For modules that support dynamic reloading,
	// we call this function before unloading the module.
}

#undef LOCTEXT_NAMESPACE
	
IMPLEMENT_MODULE(FOffsetTimecodeProviderPluginModule, OffsetTimecodeProviderPlugin)

However, but there are issues left:

  1. VS underlines the function implmeentation in cpp file stating “uncomplete types are not permitted” (hope i translated correctly to english):

  2. When i try to compile i get a ton of compiler errors:

27>[1/10] Resource Default.rc2
27>[2/10] Resource Default.rc2
27>[3/10] Compile [x64] SharedPCH.Engine.Cpp20.cpp
27>[4/10] Compile [x64] Module.OffsetTimecodeProviderPlugin.cpp
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Public\OffsetTimecodeProviderPlugin.h(12): error C2079: "UOffsetTimecodeProvider" verwendet undefiniertes class "YOURPLUGIN_API"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Public\OffsetTimecodeProviderPlugin.h(12): error C2143: Syntaxfehler: Es fehlt ";" vor ":"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Public\OffsetTimecodeProviderPlugin.h(12): error C2059: Syntaxfehler: "public"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Public\OffsetTimecodeProviderPlugin.h(13): error C2143: Syntaxfehler: Es fehlt ";" vor "{"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Public\OffsetTimecodeProviderPlugin.h(13): error C2447: "{": Funktionsheader fehlt - Parameterliste im alten Stil?
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(17): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(20): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(20): error C3861: "StaticPackage": Bezeichner wurde nicht gefunden.
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(20): error C2065: "StaticClassFlags": nichtdeklarierter Bezeichner
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(20): error C2061: Syntaxfehler: Bezeichner "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(23): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(23): error C2672: "StaticClass": keine übereinstimmende überladene Funktion gefunden
27>D:\UnrealEngine\UE_5.3\Engine\Source\Runtime\CoreUObject\Public\UObject\ReflectedTypeAccessors.h(13): note: kann "UClass *StaticClass(void)" sein
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(23): note: "UClass *StaticClass(void)": Das Vorlage-Argument für "ClassType" konnte nicht abgeleitet werden.
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(46): error C2923: "TCppClassTypeTraits": "UOffsetTimecodeProvider" ist kein gültiges Vorlage-Typargument für Parameter "CPPCLASS".
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Public\OffsetTimecodeProviderPlugin.h(12): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(46): error C2955: "TCppClassTypeTraits" : Für die Verwendung von Klasse Vorlage ist eine Vorlage-Argumentliste erforderlich
27>D:\UnrealEngine\UE_5.3\Engine\Source\Runtime\CoreUObject\Public\UObject\Class.h(2612): note: Siehe Deklaration von "TCppClassTypeTraits"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(46): error C4800: Implizite Konvertierung von "TCppClassTypeTraits<CPPCLASS>::<unnamed-enum-IsAbstract>" in einen booleschen Wert. Datenverlust möglich.
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(46): note: Verwenden Sie eine explizite Umwandlung oder einen Vergleich mit "0", um diese Warnung zu vermeiden.
27>D:\UnrealEngine\UE_5.3\Engine\Source\Runtime\CoreUObject\Public\UObject\Class.h(2615): note: Siehe Deklaration von "TCppClassTypeTraits<CPPCLASS>::<unnamed-enum-IsAbstract>"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(46): warning C4305: "Initialisierung": Verkürzung von "TCppClassTypeTraits<CPPCLASS>::<unnamed-enum-IsAbstract>" in "bool"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(49): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(49): error C2440: "Initialisierung": "overloaded-function" kann nicht in "UClass *(__cdecl *)(void)" konvertiert werden
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(49): note: Keine Funktion mit diesem Namen im Gültigkeitsbereich stimmt mit dem Zieltyp überein
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(72): error C2912: Explizite Spezialisierung "UClass *StaticClass<UOffsetTimecodeProvider>(void)" ist keine Spezialisierung einer Funktionsvorlage
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(73): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(73): error C2672: "StaticClass": keine übereinstimmende überladene Funktion gefunden
27>D:\UnrealEngine\UE_5.3\Engine\Source\Runtime\CoreUObject\Public\UObject\ReflectedTypeAccessors.h(13): note: kann "UClass *StaticClass(void)" sein
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(73): note: "UClass *StaticClass(void)": Das Vorlage-Argument für "ClassType" konnte nicht abgeleitet werden.
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(75): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(75): error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(75): error C2550: "{ctor}": Initialisierungslisten für Konstruktoren dürfen nur in Konstruktordefinition stehen
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(75): error C4508: "{ctor}": Funktion sollte einen Wert zurückgeben; Ergebnistyp "void" angenommen
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(76): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(76): error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(76): error C2550: "{ctor}": Initialisierungslisten für Konstruktoren dürfen nur in Konstruktordefinition stehen
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(76): error C4508: "{ctor}": Funktion sollte einen Wert zurückgeben; Ergebnistyp "void" angenommen
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(77): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(77): error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(77): error C4508: "{dtor}": Funktion sollte einen Wert zurückgeben; Ergebnistyp "void" angenommen
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(83): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(83): error C2440: "Initialisierung": "UClass *(__cdecl *)(void)" kann nicht in "UClass *(__cdecl *)(void)" konvertiert werden
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.gen.cpp(83): note: Keine Funktion mit diesem Namen im Gültigkeitsbereich stimmt mit dem Zieltyp überein
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Private\OffsetTimecodeProviderPlugin.cpp(7): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Private\OffsetTimecodeProviderPlugin.cpp(8): error C2270: "GetTimecode": Modifizierer für Funktionen, die keine Memberfunktionen sind, nicht zulässig
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Private\OffsetTimecodeProviderPlugin.cpp(12): error C2027: Verwendung des undefinierten Typs "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Intermediate\Build\Win64\UnrealEditor\Inc\OffsetTimecodeProviderPlugin\UHT\OffsetTimecodeProviderPlugin.generated.h(60): note: Siehe Deklaration von "UOffsetTimecodeProvider"
27>D:\UnrealEngine\Projects\VPStage_First\Plugins\OffsetTimecodeProviderPlugin\Source\OffsetTimecodeProviderPlugin\Private\OffsetTimecodeProviderPlugin.cpp(13): error C2270: "GetQualifiedFrameTime": Modifizierer für Funktionen, die keine Memberfunktionen sind, nicht zulässig
27>[5/10] Compile [x64] VPStage_First.cpp
27>[6/10] Link [x64] UnrealEditor-VPStage_First.lib
27>   Bibliothek "D:\UnrealEngine\Projects\VPStage_First\Intermediate\Build\Win64\x64\UnrealEditor\Development\VPStage_First\UnrealEditor-VPStage_First.lib" und Objekt "D:\UnrealEngine\Projects\VPStage_First\Intermediate\Build\Win64\x64\UnrealEditor\Development\VPStage_First\UnrealEditor-VPStage_First.exp" werden erstellt.
27>[7/10] Link [x64] UnrealEditor-VPStage_First.dll
27>   Bibliothek "D:\UnrealEngine\Projects\VPStage_First\Intermediate\Build\Win64\x64\UnrealEditor\Development\VPStage_First\UnrealEditor-VPStage_First.sup.lib" und Objekt "D:\UnrealEngine\Projects\VPStage_First\Intermediate\Build\Win64\x64\UnrealEditor\Development\VPStage_First\UnrealEditor-VPStage_First.sup.exp" werden erstellt.
27>Total time in Parallel executor: 26.24 seconds
27>Total execution time: 30.50 seconds
27>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets(50,5): error MSB3073: Der Befehl "D:\UnrealEngine\UE_5.3\Engine\Build\BatchFiles\Rebuild.bat VPStage_FirstEditor Win64 Development -Project="D:\UnrealEngine\Projects\VPStage_First\VPStage_First.uproject" -WaitMutex -FromMsBuild" wurde mit dem Code -1 beendet.
27>Die Erstellung des Projekts "VPStage_First.vcxproj" ist abgeschlossen -- FEHLER.
========== Alle neu erstellen: 47 erfolgreich, 1 fehlgeschlagen, 1 übersprungen ==========
========== Neu erstellen wurde am 21:38 gestartet und dauerte 34,827 Sekunden ==========

Iam a bit idealess tbh. Already tried the most minimal thing possible i think =/
Thanks

In your header file, before the UClass() line, try adding:

#define YOURPLUGIN_API DLLEXPORT

It can’t find a Plugin/module named YOURPLUGIN.

This part is used for exporting the class so it can be used in other Plugins or Modules so if you don’t use it in other modules you can simply delete the API macro YOURPLUGIN_API otherwise you should rename it to the name of your Plugin.

Rename YOURPLUGIN_API to OFFSETTIMECODEPROVIDERPLUGIN_API.

Yes that was it (both worked, with and without module name in front of class). Thank you :slight_smile:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.