I wrote a virtual box frontend in C# using com api. I haven't touched my code for about a year. During that year I've moved to a laptop from pc. Last time run my code it worked fine. Now I cannot access IDisplay because it's null;
here is my code:
Code: Select all
var vb = new VirtualBoxClass();
_machine = vb.FindMachine(machineName);
var monitors = _machine.MonitorCount;
Monitors = new MMFFrameBuffer[monitors];
for (byte i = 0; i < monitors; i++)
{
var name = string.Format("monitor{0}", i + 1);
Monitors[i] = MMFFrameBuffer.CreateNew(name);
}
_session = new SessionClass();
_machine.LockMachine(_session, LockType.LockType_Shared);
for (int i = 0; i < MonitorsCount; i++)
{
_session.Console.Display.SetFramebuffer((uint) i, Monitors[i]);
}
My current version of Vbox is the latest: 4.2.8 r83876. I can't remember the exact version on which my code ran correctly. I can only say It was the latest one about 1 year ago. Host OS is Win7 pro x64 (same as it was on my previous PC)
I'm completely clueless about my issue. Any help would be highly appreciated!