You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
1.8 KiB
74 lines
1.8 KiB
using System.Net;
|
|
using System.Diagnostics;
|
|
using Sog;
|
|
|
|
namespace SMAgent
|
|
{
|
|
public static class SMAgentUtils
|
|
{
|
|
private static ServerApp m_app;
|
|
private static PacketSender m_packetSender;
|
|
|
|
public static SMAgentConfig Config;
|
|
|
|
public static string HostName { get; private set; }
|
|
|
|
public static void Init(ServerApp app)
|
|
{
|
|
m_app = app;
|
|
|
|
m_packetSender = new PacketSender();
|
|
|
|
HostName = Dns.GetHostName();
|
|
|
|
TraceLog.Trace("SMAgentUtils.Init name {0} center ip {1}", HostName, Config.centerip);
|
|
}
|
|
|
|
public static ProtoBufPacker GetProtoPacker()
|
|
{
|
|
return ProtoPackerFactory.Instance.GetProtoBufPacker();
|
|
}
|
|
|
|
public static PacketSender GetPacketSender()
|
|
{
|
|
return m_packetSender;
|
|
}
|
|
|
|
public static long GetTimeMs()
|
|
{
|
|
return m_app.Time.GetTime();
|
|
}
|
|
|
|
public static long GetTimeSecond()
|
|
{
|
|
return m_app.Time.GetTimeSecond();
|
|
}
|
|
|
|
public static uint GetAppID()
|
|
{
|
|
return m_app.ServerID;
|
|
}
|
|
|
|
public static ServerApp GetApp()
|
|
{
|
|
return m_app;
|
|
}
|
|
|
|
public static void StartProcess(string filename, string workpath, string param)
|
|
{
|
|
ProcessStartInfo startInfo = new ProcessStartInfo(filename, param);
|
|
startInfo.CreateNoWindow = true;
|
|
startInfo.WorkingDirectory = workpath;
|
|
//startInfo.UseShellExecute = true;
|
|
|
|
//开启子进程
|
|
using (Process proc = new Process())
|
|
{
|
|
proc.StartInfo = startInfo;
|
|
proc.EnableRaisingEvents = true;
|
|
|
|
proc.Start();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|