UE4 杂项笔记

这篇博客详细记录了UE4中的一些技术要点,包括FString如何赋值给TCHAR数组,使用MessageDialog创建弹窗,探讨模拟HTTP请求的可能性,获取Android的根目录路径,以及宏DeterminesOutputType和CommutativeAssociativeBinaryOperator的应用。此外,还涉及了纹理压缩、Rider下载、renderTarget绘制、启动/关闭外部进程的方法,联机游戏模式中的委托,以及异步任务和加载操作的实现。
摘要由CSDN通过智能技术生成

FString赋值给TCHAR数组

TCHAR *XXX= meesage.GetCharArray().GetData();

*FString就是TCHAR


MessageDialog弹窗

#include “Misc/MessageDialog.h”
FMessageDialog::Open(EAppMsgType::Ok, Content, &title);

在这里插入图片描述
在这里插入图片描述


想用socket模拟http请求。。暂时放着之后再看看

大概记录一下ue4发socket需要这些
,还有http报文的格式

PrivateDependencyModuleNames.AddRange(
			new string[]
			{
   
				"Sockets" ,			// for use sockets 
				"NetWorking"
			}
			);
#include "Sockets.h"
#include "SocketSubsystem.h"
#include "Networking/Public/Interfaces/IPv4/IPv4Address.h"

FSocket* Socket;
TSharedPtr<FInternetAddr> SendTarget;
//build socket 
	ISocketSubsystem* SocketSubsystem = ISocketSubsystem::Get(PLATFORM_SOCKETSUBSYSTEM);
	Socket = SocketSubsystem->CreateSocket(NAME_DGram, TEXT("Crash Send Socket"), true);
	
	// build address
	FIPv4Address TargetAddress;
	FIPv4Address::Parse(TEXT("192.168.1.33"), TargetAddress);
	if (SendTarget = SocketSubsystem->CreateInternetAddr())
	{
   
		SendTarget->SetPort(5555);
	    SendTarget->SetIp(TargetAddress.Value);
	}
// TCP test
    FString _strBuffer;
	//1、type
	_strBuffer.Append("POST /crash/post HTTP/1.1\r\n");
    //2、head
	_strBuffer.Append("Host: 192.168.1.33:5555\r\n");
	_strBuffer.Append("Content-Type: application/json\r\n");
	_strBuffer.Append("\r\n");
	int32 CententLen = UE_ARRAY_COUNT(GErrorHist) + 6;
	_strBuffer.Append("Content-Length: ");
	_strBuffer.Append(FString::FromInt(CententLen));
    //头和内容间要空行
	_strBuffer.Append("\r\n");
	_strBuffer.Append("\r\n");
	//3、concent
	_strBuffer.Append("stack=");
	_strBuffer.Append("1");
	_strBuffer.Append("\r\n");
	
	//cast
	_strBuffer[_strBuffer.Len()-1] = 0;
    int32 SrcLen =_strBuffer.Len(); 
	int32 SentLen = 0;
	char UTF8Buf[UE_ARRAY_COUNT(GErrorHist) * 2];
	const int32 DataLen = FTCHARToUTF8_Convert::ConvertedLength(*_strBuffer, SrcLen);
	UTF8Buf[DataLen] = 0;
	FTCHARToUTF8_Convert::Convert(UTF8Buf, _strBuffer.Len() * 2, *_strBuffer, _strBuffer.Len());
    //4、send
	Socket->SendTo((uint8*)UTF8Buf, DataLen + 
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值