static void Run() { string pathToAssetServer = Path.Combine(Application.dataPath, "Scripts/Plugins/AssetBundleManager/Editor/AssetBundleServer.exe"); string pathToApp = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/')); KillRunningAssetBundleServer(); BuildScript.WriteServerURL(); string args = Path.Combine(pathToApp, "AssetBundles"); args = string.Format("\"{0}\" {1}", args, Process.GetCurrentProcess().Id); ProcessStartInfo startInfo = ExecuteInternalMono.GetProfileStartInfoForMono(MonoInstallationFinder.GetMonoInstallation("MonoBleedingEdge"), "4.0", pathToAssetServer, args, true); startInfo.WorkingDirectory = Path.Combine(System.Environment.CurrentDirectory, "AssetBundles"); startInfo.UseShellExecute = false; Process launchProcess = Process.Start(startInfo); if (launchProcess == null || launchProcess.HasExited == true || launchProcess.Id == 0) { //Unable to start process UnityEngine.Debug.LogError("Unable Start AssetBundleServer process"); } else { //We seem to have launched, let's save the PID instance.m_ServerPID = launchProcess.Id; } }
static void Run() { string pathToAssetServer = Path.GetFullPath("Assets/AssetBundleManager/Editor/AssetBundleServer.exe"); string assetBundlesDirectory = Path.Combine(Environment.CurrentDirectory, "AssetBundles"); KillRunningAssetBundleServer(); BuildScript.CreateAssetBundleDirectory(); BuildScript.WriteServerURL(); string args = assetBundlesDirectory; args = string.Format("\"{0}\" {1}", args, Process.GetCurrentProcess().Id); ProcessStartInfo startInfo = ExecuteInternalMono.GetProfileStartInfoForMono(MonoInstallationFinder.GetMonoInstallation("MonoBleedingEdge"), GetMonoProfileVersion(), pathToAssetServer, args, true); startInfo.WorkingDirectory = assetBundlesDirectory; startInfo.UseShellExecute = false; Process launchProcess = Process.Start(startInfo); if (launchProcess == null || launchProcess.HasExited == true || launchProcess.Id == 0) { //Unable to start process UnityEngine.Debug.LogError("Unable Start AssetBundleServer process"); } else { //We seem to have launched, let's save the PID instance.m_ServerPID = launchProcess.Id; } }
static void Run() { string pathToAssetServer = Path.Combine(Application.dataPath, "AssetBundleManager/Editor/AssetBundleServer.exe"); string pathToApp = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/')); KillRunningAssetBundleServer(); BuildScript.WriteServerURL(); string bundleFolder = AssetBundleManager.UseGraphToolBundle ? "GraphToolBundles" : "AssetBundles"; string args = Path.Combine(pathToApp, bundleFolder); if (!Directory.Exists(args)) { UnityEngine.Debug.LogError("Directory does not exist. Build asset bundles first and create directory to run local server:" + args); return; } args = string.Format("\"{0}\" {1}", args, Process.GetCurrentProcess().Id); ProcessStartInfo startInfo = ExecuteInternalMono.GetProfileStartInfoForMono(MonoInstallationFinder.GetMonoInstallation("MonoBleedingEdge"), "4.0", pathToAssetServer, args, true); startInfo.WorkingDirectory = Path.Combine(System.Environment.CurrentDirectory, bundleFolder); startInfo.UseShellExecute = false; Process launchProcess = Process.Start(startInfo); if (launchProcess == null || launchProcess.HasExited == true || launchProcess.Id == 0) { //Unable to start process UnityEngine.Debug.LogError("Unable Start AssetBundleServer process"); } else { UnityEngine.Debug.LogFormat("Local Server started with arg:{0}", args); //We seem to have launched, let's save the PID instance.m_ServerPID = launchProcess.Id; } }