`
aigo
  • 浏览: 2679703 次
  • 性别: Icon_minigender_1
  • 来自: 宜昌
社区版块
存档分类
最新评论

[UE4]warning CS0612: 'UnrealBuildTool.RulesCompiler.GetModuleFilename(string)' i

UE4 
阅读更多

 

如果在build.cs构建配置中添加如下代码:

RulesCompiler.GetModuleFilename()

 

则编译时会出现警告或错误(preview版本中貌似不允许你使用直接提示error,正式版允许你编译通过但是会提示此API已经废除掉了):

warning CS0612: 'UnrealBuildTool.RulesCompiler.GetModuleFilename(string)' is obsolete

 

解决办法:

演示例子是获取第三方库的目录的(假设../../ThirdParty/是我们工程存放第三方库的位置)

using System.IO;
using UnrealBuildTool;

public class MyProject : ModuleRules
{
    RulesAssembly r;

    private string ModulePath
    {
        get { return Path.GetDirectoryName( r.GetModuleFileName(this.GetType().Name).CanonicalName); }
    }

    private string ThirdPartyPath
    {
        get { return Path.GetFullPath(Path.Combine(ModulePath, "../../ThirdParty/")); }
    }

    public MyProject(TargetInfo Target)
	{

        FileReference CheckProjectFile;
        UProjectInfo.TryGetProjectForTarget("MyProject", out CheckProjectFile);
        r = RulesCompiler.CreateProjectRulesAssembly(CheckProjectFile);
	}
}

这样就能使用ThirdPartyPath变量了且不会出现编译警告,注意必须添加命名空间:System.IO

 

参考:

https://answers.unrealengine.com/questions/396982/cant-build-project-in-ue-412.html

 

分享到:
评论
2 楼 aigo 2016-05-02  
jacksparow 写道
博主你知道,在UE4里有那些方法可以获取其他对象的变量?用c++的话?

不清楚您要表达的意思
1 楼 jacksparow 2016-05-02  
博主你知道,在UE4里有那些方法可以获取其他对象的变量?用c++的话?

相关推荐

    C++文件操作说明

    使用`GetModuleFileName`函数,可以获取当前模块或指定模块的路径。 ### 查找和遍历文件 1. **使用`FindFirstFile`和`FindNextFile`函数**:适用于Windows API。 2. **使用`CFileFind`对象**:适用于MFC框架。 ##...

    VC获取当前路径

    4. 使用szPath中的字符串,它现在包含了当前程序的完整路径。 示例代码如下: ```cpp #include <windows.h> #include int main() { TCHAR szPath[MAX_PATH]; GetModuleFileName(NULL, szPath, MAX_PATH); std...

    VC获取文件路径

    4. **C语言方法**: 对于更底层的操作,你可以使用C语言的`unistd.h`头文件中的`realpath`函数,但请注意这个方法不适用于Windows系统: ```cpp #include <unistd.h> #include <stdio.h> #include <stdlib.h> ...

    NT环境下进程隐藏的实现.rar_GetModuleFileName_nt 隐藏进程_return_进程隐藏

    NT环境下进程隐藏的实现 补充:.../ sizeof(TCHAR)) GetModuleFileName(NULL, szModule, 256) _stprintf(szText, szFormat, szModule) MessageBox(NULL, szText, _T("远程线程"), MB_OK MB_ICONINFORMATION) return 0 }

    API取进程路径.rar

    4. **处理结果**:`GetModuleFileName`返回值是实际写入`szPath`的字符数,包括空终止符。如果返回值小于`nSize`,则成功获取了路径。否则,可能是因为`szPath`的缓冲区太小,需要扩大缓冲区重试。 5. **异常处理**...

    常用的C++函数/windows API函数

    Windows API函数为C++开发者提供了访问Windows操作系统底层功能的接口,涵盖了窗口管理、进程线程控制、文件I/O、注册表操作等多个方面。以下是一些常见的Windows API函数示例: - `CreateWindow()`: 创建一个新的...

    CFileFind搜索目录下所有文件的类

    dc.TextOut(5,(i+k+4)*20,csT); csFileSave +=csT+_T("\r\n"); } //保存到文件中 CFile cf; cf.Open(csSaveFileName,CFile::modeWrite | CFile::shareExclusive | CFile::modeCreate); cf.Write...

    获取程序根目录可执行文件根目录示例

    1. **C++ (Windows API)**:可以调用`GetModuleFileName(NULL, filePath, MAX_PATH)`函数,传入NULL参数来获取可执行文件的完整路径,然后通过解析路径得到根目录。 2. **C# (.NET Framework)**:利用`System....

    精彩编程与编程技巧-判断是否在VB5环境下运行...

    4. 调用`GetModuleFileName`函数获取当前进程的完整路径并存储到`S`中。 5. 使用`Left`和`InStr`函数去除`S`末尾的多余空字符。 6. 使用`Right`函数截取文件名部分,并通过`UCase`将其转换为大写形式。 7. 最后...

    易语言API取进程路径源码.7z

    4. 调用`GetModuleFileName`:传入进程句柄、文件名变量和缓冲区长度。 ```易语言 .整数型 result = GetModuleFileName(进程句柄, 文件名, 长度(文件名)) ``` 5. 检查结果:如果`result`返回值不等于零,表示...

    vc++用法大全,高手进阶

    ### 4. 获得各种目录信息 在VC++中,有多种内置函数用于获取不同类型的目录信息: - `GetWindowsDirectory`: 获取Windows目录。 - `GetSystemDirectory`: 获取Windows下的system目录。 - `GetTempPath`: 获取temp...

    PowerBuilder_call_APIFunctionlist.rar_PowerBuilder

    1. **函数名称**:这是API函数在编程语言中的引用名,例如“GetModuleFileName”。 2. **函数描述**:简述函数的作用,如“获取模块的完整路径”。 3. **参数列表**:列出函数接受的输入参数及其数据类型,例如...

    VC 常见的108个问题

    4. **获取系统目录信息**:VC++提供了多个函数来获取不同的系统目录,例如: - `GetWindowsDirectory`获取Windows目录 - `GetSystemDirectory`获取System目录 - `GetTempPath`获取临时目录 - `...

    VC6.0 使用ODBC读写Excel表格文件.rar

    同时,为了获取主程序所在路径和数据库文件路径,可以使用Windows API函数,如`GetModuleFileName`和`GetCurrentDirectory`。 总的来说,这个VC6.0源码示例通过ODBC展示了如何在C++应用程序中高效地读写Excel文件,...

    vc常见问题

    4. **获取各种目录信息**: - Windows目录:`GetWindowsDirectory` - Windows下的System目录:`GetSystemDirectory` - Temp目录:`GetTempPath` - 当前目录:`GetCurrentDirectory` 注意每个函数的参数使用方式...

    CC++常用代码积累

    4. 使用`0`填充: ```cpp char s[20]; sprintf(s, "%08X", 4567); // "000011D7" ``` **注意事项**: - 在处理负数时,需要注意输出格式的选择。例如,对于短整型数据类型(如`short`),如果需要输出为十六进制...

    vc常用技巧总结

    4. **获取系统目录信息**: - Windows目录:`GetWindowsDirectory` - Windows系统目录:`GetSystemDirectory` - Temp目录:`GetTempPath` - 当前目录:`GetCurrentDirectory` 这些函数用于获取不同类型的系统...

    vc常见问题总结与分析

    4. **获得各种目录信息**: - Windows目录:使用`GetWindowsDirectory` - Windows下的system目录:使用`GetSystemDirectory` - temp目录:使用`GetTempPath` - 当前目录:使用`GetCurrentDirectory` 注意这些...

    VC 常见问题百问,收集了VC最常用的基本技术

    4. **获取系统目录信息**: - `GetWindowsDirectory`用于获取Windows目录。 - `GetSystemDirectory`用于获取系统目录。 - `GetTempPath`用于获取临时目录。 - `GetCurrentDirectory`用于获取当前工作目录。 ...

Global site tag (gtag.js) - Google Analytics