using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.IO;
|
|
using System.Runtime.InteropServices;
|
|
using UnityEngine;
|
|
|
|
namespace LuaFramework
|
|
{
|
|
public static class INIReader
|
|
{
|
|
[DllImport("kernel32")]
|
|
private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retval, int size, string filePath);
|
|
private static string Section = "AppConstConfig";
|
|
public static string fileName = "engine.ini";
|
|
|
|
public static void InitConfig()
|
|
{
|
|
if (Application.platform == RuntimePlatform.WindowsEditor || Application.platform == RuntimePlatform.WindowsPlayer)
|
|
{
|
|
if (IniReadValue("releaseMode").Equals("1"))
|
|
{
|
|
AppConst.DebugMode = false;
|
|
AppConst.WindowDataPath += IniReadValue("customDataPath");
|
|
}
|
|
else
|
|
{
|
|
AppConst.StandaloneDebugMode = true;
|
|
#if UNITY_EDITOR
|
|
var useLocalResourceStr = IniReadValue("useLocalResource");
|
|
if (useLocalResourceStr != "")
|
|
AppConst.UseLocalResource = Int32.Parse(useLocalResourceStr);
|
|
var printLoadLocalResStr = IniReadValue("printLoadLocalRes");
|
|
if (printLoadLocalResStr != "")
|
|
AppConst.PrintLoadLocalRes = Int32.Parse(printLoadLocalResStr);
|
|
var useLocalPathCache = IniReadValue("useLocalPathCache");
|
|
if (useLocalPathCache == "1")
|
|
AppConst.IsUseLocalPathCache = true;
|
|
#endif
|
|
}
|
|
}
|
|
}
|
|
|
|
public static string IniReadValue(string Key)
|
|
{
|
|
string iniPath = Application.dataPath + "/" + fileName;
|
|
if (File.Exists(iniPath))
|
|
{
|
|
StringBuilder tag = new StringBuilder(100);
|
|
GetPrivateProfileString(Section, Key, "default", tag, 100, iniPath);
|
|
return tag.ToString();
|
|
}
|
|
return "";
|
|
}
|
|
}
|
|
}
|