My Blueprint library plugin for copy/paste doesnt work anymore

I made BL plugin few months ago for 5.3 but now i need to use it in project that was made in 5.4 i tried recreating it in 5.4 but code always get error on compile

.h

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

#pragma once

#include "Kismet/BlueprintFunctionLibrary.h"
#include "ClipboardFunctionsBPLibrary.generated.h"

UCLASS()
class UClipboardFunctionsBPLibrary : public UBlueprintFunctionLibrary
{
	GENERATED_BODY()

public:

		UFUNCTION(BlueprintCallable, meta = (DisplayName = "Copy to Clipboard"), Category = "Clipboard")
		static void CopyText(FString Text);

		UFUNCTION(BlueprintCallable, DisplayName = "Paste from Clipboard", Category = "Clipboard", BlueprintPure)
		static FString PasteText();
};

.cpp

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

#include "ClipboardFunctionsBPLibrary.h"
#include "ClipboardFunctions.h"

void UClipboardFunctionsBPLibrary::CopyText(FString Text) 
{

	FPlatformMisc::ClipboardCopy(*Text);

}

FString UClipboardFunctionsBPLibrary::PasteText() 
{

	FString LocalString;
	FPlatformMisc::ClipboardPaste(LocalString);
	return LocalString;

}

Add ApplicationCore to Build.cs
You’ll need this include
#include "HAL/PlatformApplicationMisc.h"

Finally use

FPlatformApplicationMisc::ClipboardCopy(*LocalString);
FPlatformApplicationMisc::ClipboardPaste(LocalString);

I updated it but i get this error on compile

---------- Creating patch ----------
Running F:\Unreal Engine\Unreal Engine\UE_5.4\Engine\Build\BatchFiles\Build.bat -Target="ClipboardProjectEditor Win64 Development -Project=""F:/Unreal Engine/Unreal Plugins/ClipboardProject/ClipboardProject.uproject""" -LiveCoding -LiveCodingModules="F:/Unreal Engine/Unreal Engine/UE_5.4/Engine/Intermediate/LiveCodingModules.json" -LiveCodingManifest="F:/Unreal Engine/Unreal Engine/UE_5.4/Engine/Intermediate/LiveCoding.json" -WaitMutex -LiveCodingLimit=100
  Using bundled DotNet SDK version: 6.0.302
  Running UnrealBuildTool: dotnet "..\..\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" -Target="ClipboardProjectEditor Win64 Development -Project=""F:/Unreal Engine/Unreal Plugins/ClipboardProject/ClipboardProject.uproject""" -LiveCoding -LiveCodingModules="F:/Unreal Engine/Unreal Engine/UE_5.4/Engine/Intermediate/LiveCodingModules.json" -LiveCodingManifest="F:/Unreal Engine/Unreal Engine/UE_5.4/Engine/Intermediate/LiveCoding.json" -WaitMutex -LiveCodingLimit=100
  Log file: C:\Users\mojno\AppData\Local\UnrealBuildTool\Log.txt
  Creating makefile for ClipboardProjectEditor (command line arguments changed)
  Building ClipboardProjectEditor...
  Using Visual Studio 2022 14.38.33139 toolchain (C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130) and Windows 10.0.19041.0 SDK (C:\Program Files (x86)\Windows Kits\10).
  [Adaptive Build] Excluded from ClipboardFunctions unity file: ClipboardFunctions.cpp, ClipboardFunctionsBPLibrary.cpp
  Determining max actions to execute in parallel (6 physical cores, 12 logical cores)
    Executing up to 6 processes, one per physical core
  Using Parallel executor to run 2 action(s)
  ------ Building 2 action(s) started ------
  [1/2] Compile [x64] Module.ClipboardFunctions.cpp
  [2/2] Compile [x64] ClipboardFunctionsBPLibrary.cpp
  Total time in Parallel executor: 0.84 seconds
  Total execution time: 3.57 seconds
File F:\Unreal Engine\Unreal Plugins\ClipboardProject\Plugins\ClipboardFunctions\Intermediate\Build\Win64\x64\UnrealEditor\Development\ClipboardFunctions\ClipboardFunctions.cpp.obj was modified or is new
File F:\Unreal Engine\Unreal Plugins\ClipboardProject\Plugins\ClipboardFunctions\Intermediate\Build\Win64\x64\UnrealEditor\Development\ClipboardFunctions\ClipboardFunctionsBPLibrary.cpp.obj was modified or is new
File F:\Unreal Engine\Unreal Plugins\ClipboardProject\Plugins\ClipboardFunctions\Intermediate\Build\Win64\x64\UnrealEditor\Development\ClipboardFunctions\Module.ClipboardFunctions.cpp.obj was modified or is new
Building patch from 3 file(s) for Live coding module F:\Unreal Engine\Unreal Plugins\ClipboardProject\Plugins\ClipboardFunctions\Binaries\Win64\UnrealEditor-ClipboardFunctions.dll
   Creating library F:\Unreal Engine\Unreal Plugins\ClipboardProject\Plugins\ClipboardFunctions\Binaries\Win64\UnrealEditor-ClipboardFunctions.patch_0.lib and object F:\Unreal Engine\Unreal Plugins\ClipboardProject\Plugins\ClipboardFunctions\Binaries\Win64\UnrealEditor-ClipboardFunctions.patch_0.exp
ClipboardFunctions.cpp.obj : error LNK2011: precompiled object not linked in; image may not run
F:\Unreal Engine\Unreal Plugins\ClipboardProject\Plugins\ClipboardFunctions\Binaries\Win64\UnrealEditor-ClipboardFunctions.patch_0.exe : fatal error LNK1120: 1 unresolved externals
Failed to link patch (0.000s) (Exit code: 0x460)
---------- Finished (0.000s) ----------

.h is the same

.cpp

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

#include "ClipboardFunctionsBPLibrary.h"
#include "ClipboardFunctions.h"
#include "HAL/PlatformApplicationMisc.h"

void UClipboardFunctionsBPLibrary::CopyText(FString Text)
{

	FPlatformApplicationMisc::ClipboardCopy(*Text);

}

FString UClipboardFunctionsBPLibrary::PasteText()
{

	FString LocalString;
	FPlatformApplicationMisc::ClipboardPaste(LocalString);
	return LocalString;

}

.build.cs

// Some copyright should be here...

using UnrealBuildTool;

public class ClipboardFunctions : ModuleRules
{
    public ClipboardFunctions(ReadOnlyTargetRules Target) : base(Target)
    {
        PCHUsage = ModuleRules.PCHUsageMode.UseExplicitOrSharedPCHs;

        PublicIncludePaths.AddRange(
            new string[] {
			}
        );

        PrivateIncludePaths.AddRange(
            new string[] {
			}
        );

        PublicDependencyModuleNames.AddRange(
            new string[]
            {
                "Core",
                "ApplicationCore",
			}
        );

        PrivateDependencyModuleNames.AddRange(
            new string[]
            {
                "CoreUObject",
                "Engine",
                "Slate",
                "SlateCore",	
			}
        );

        DynamicallyLoadedModuleNames.AddRange(
            new string[]
            {
			}
        );
    }
}

Actually just deleting Intermediate and Binaries folder fixed the issue, thank you a lot

1 Like

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