/// <summary> /// Recursive scan directories on the Xbox for files, and copy them to the PC. /// </summary> /// <param name="xboxPath">Root path to files on the Xbox</param> /// <param name="localPathRoot">Directory on PC to copy files to</param> private void LoadDiscDirectoryRecursive(string xboxPath, string localPathRoot) { if (xboxPath.Contains("$SystemUpdate")) { // Don't include contents of system update directory, if present return; } IXboxFiles files = this.xboxDevice.XboxConsole.DirectoryFiles(xboxPath); foreach (IXboxFile file in files) { string fileName = file.Name; if (file.IsDirectory) { this.LoadDiscDirectoryRecursive(fileName, localPathRoot); } else { if (fileName.EndsWith(".xex") || fileName.EndsWith(".exe") || fileName.EndsWith(".dll")) { // Preserve the path string destinationFile = Path.Combine(localPathRoot, fileName.Substring(5)); string destinationDirectory = Path.GetDirectoryName(destinationFile); DirectoryInfo dirInfo = new DirectoryInfo(destinationDirectory); dirInfo.Create(); this.xboxDevice.XboxConsole.ReceiveFile(destinationFile, fileName); } } } }
static private string getBestExe() { try { string consoleExe = @""; IXboxFiles f = XenonInterface.mDefaultConsole.DirectoryFiles(mConsoleDir); string[] appNames = new string[] { @"xgameF.xex", @"xgameP.xex", @"xgameD.xex" }; bool found = false; for (int i = 0; i < 3; i++) { foreach (IXboxFile t in f) { if (Path.GetFileName(t.Name) == appNames[i]) { consoleExe = appNames[i]; found = true; break; } } if (found) { break; } } return(consoleExe); } catch { } return(""); }
public string[] GetFiles(string directory) { IXboxFiles files = this.Xbox_Console.DirectoryFiles(directory); List <string> list = new List <string>(); foreach (IXboxFile file in files) { if (!file.IsDirectory) { list.Add(file.Name); } } return(list.ToArray()); }
public static List <string> GetDirectories(string dir) { List <string> result = new List <string>(); IXboxFiles files = jtag.DirectoryFiles(dir); foreach (IXboxFile file in files) { if (file.IsDirectory) { result.Add(file.Name.Substring(dir.Length)); } } return(result); }
public string[] GetFiles(string directory) { IXboxFiles xboxFiles = this.Xbox_Console.DirectoryFiles(directory); List <string> fileNames = new List <string>(); foreach (IXboxFile xboxFile in xboxFiles) { if (!xboxFile.IsDirectory) { fileNames.Add(xboxFile.Name); } } return(fileNames.ToArray()); }
public static ListItem GetXboxProfileFile(IXboxConsole xboxConsole, Form owner) { List<ListItem> consoleProfiles = new(); List<string> consoleProfilesPaths = new(); IXboxFiles xboxFiles = xboxConsole.DirectoryFiles(@"Hdd:\Content\"); foreach (IXboxFile file in xboxFiles) { if (file.IsDirectory) { MessageBox.Show(file.Name); if (!file.Name.Contains("0000000000000000")) { consoleProfilesPaths.Add(file.Name); } } } foreach (string profile in consoleProfilesPaths) { string profilePath = @$"Hdd:\Content\{profile.Replace(@"Hdd:\Content\", "")}\FFFE07D1\00010000\"; try { foreach (IXboxFile file in xboxConsole.DirectoryFiles(profilePath)) { if (!file.IsDirectory) { string profileName = profile.Replace(@"Hdd:\Content\", "").Replace(@"\FFFE07D1\00010000\", ""); consoleProfiles.Add(new() { Name = profileName, Value = file.Name }); } } } catch { // Profile file doesn't exist, so skip to next one continue; } }