public bool Start(string sourceFile) { qxdmApplication = new QXDMAutoApplication(); qxdmWindow = qxdmApplication.GetAutomationWindow(); isfHandler = qxdmWindow.LoadItemStore(sourceFile); if (isfHandler == 0xFFFFFFFF) { Debug.WriteLine("Error: Failed to load input ISF: {0}", sourceFile); return(false); } uint itemCount = qxdmWindow.GetItemCount(); Debug.WriteLine("itemCount: " + itemCount); iClient = (AutomationClientInterface)qxdmWindow.GetClientInterface(isfHandler); if (iClient == null) { Debug.WriteLine("Unable to obtain ISF client interface"); qxdmWindow.CloseItemStore(); return(false); } clientHandler = iClient.RegisterClient(true); if (clientHandler == 0xFFFFFFFF) { Debug.WriteLine("Unable to register ISF client"); qxdmWindow.CloseItemStore(); return(false); } iConfig = (AutomationConfigClient)iClient.ConfigureClient(clientHandler); if (iConfig == null) { Debug.WriteLine("Unable to configure ISF client"); iClient.UnregisterClient(clientHandler); qxdmWindow.CloseItemStore(); return(false); } return(true); }