- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I have written a C# program to redirect the bootable ISO file to the Intel AMT supported client and boot the client from the redirected bootable ISO file.It is not working as expected and I am seeing message "Can't find Boot Device by Boot Option!!" in the client after the system reset operation in the code. Below is the code I have used. Looking for help to resolve this issue.
using System; using Intel.Manageability; using Intel.Manageability.Exceptions; using Intel.Manageability.BootControl; using Intel.Manageability.Redirection; using System.Threading; namespace IntelAMTApp4 { class Program { static void Main(string[] args) { try { ConnectionInfoEX connection = new ConnectionInfoEX(args[0], args[1], args[2], false, string.Empty, ConnectionInfoEX.AuthMethod.Digest, null, null, null); IAMTInstance amt = AMTInstanceFactory.CreateEX(connection); amt.RedirectionIDER.SetInterfaceState(true); amt.RedirectionIDER.StartIDERCD("C:\\Temp\\boot.iso"); IDERState w = amt.RedirectionIDER.CurrentSessionState; Console.WriteLine("Current Set IDER State is: " + w); IDERStatistics statistics = amt.RedirectionIDER.GetStatistics(); Console.WriteLine("PacketsReceived: " + statistics.PacketsReceived); BootSource bootSource; FirmwareVerbosityEnum FWVerbosity; BootOptionsFlags bootOptionFlags; amt.BootControl.GetCurrentSettings(out bootSource, out bootOptionFlags, out FWVerbosity); Console.WriteLine("Current boot Options: " + bootOptionFlags.ToString()); Console.Write("Current boot Source: " + bootSource.Source.ToString()); Console.WriteLine(". index: " + bootSource.Index.ToString()); Console.WriteLine("Current Firmware Verbosity: " + FWVerbosity.ToString()); BootCapabilities bootCapabilities = amt.BootControl.BootCapabilities; if (bootCapabilities.IDER) { Console.WriteLine("Boot capability is " + bootCapabilities.IDER); bootSource = new BootSource(BootSourceEnum.IDERCD); } Thread.Sleep(5000); bootOptionFlags = BootOptionsFlags.NONE; if (bootCapabilities.IDER) bootOptionFlags |= BootOptionsFlags.UseSOL; FirmwareVerbosityEnum FWverbosity = FirmwareVerbosityEnum.NONE; if (bootCapabilities.FirmwareVerbosityVerbose) FWverbosity = FirmwareVerbosityEnum.Verbose; amt.BootControl.SetNextBoot(bootSource, bootOptionFlags, FWverbosity); amt.BootControl.GetCurrentSettings(out bootSource, out bootOptionFlags, out FWVerbosity); Console.WriteLine("Current Set boot Options: " + bootOptionFlags.ToString()); Console.Write("Current Set boot Source: " + bootSource.Source.ToString()); Console.WriteLine(". Set index: " + bootSource.Index.ToString()); Console.WriteLine("Current Set Firmware Verbosity: " + FWVerbosity.ToString()); Console.WriteLine("Current Set IDER State is: " + w); Thread.Sleep(5000); amt.Power.Reset(); } catch (ManageabilityException ex) { Console.WriteLine("\n" + ex.Message); return; } finally { Console.WriteLine("This is final block"); } } } }
Regards,
Sarfraz
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hey Sarfraz
Can you provide a system discovery xml so I can review details of the system.
To do this you get ACUConfig from the SCS download, then from the commandline enter "acuconfig.exe systemdiscovery", this will create a file, please send that file via PM to me.
Joe
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thank you for your help. I am able to get it work after removing the following lines from the above mentioned code
if (bootCapabilities.IDER) bootOptionFlags |= BootOptionsFlags.UseSOL;
Regards,
Sarfraz

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page