J'ai un morceau de code pour ouvrir une instance d'un objet COM et effectuer différentes tâches. Mon problème est que si l'application que j'ouvre avec COM est déjà en cours d'exécution puis je réutilise cette instance. Je voudrais toujours avoir une nouvelle instance et travailler avec cela et enfin fermer. De toute façon pour faire ça?Activator.CreateInstance mon instance?
Type t = System.Type.GetTypeFromProgID("QlikTech.QlikView");
QlikView.Application app = (QlikView.Application)Activator.CreateInstance(t);
app.OpenDocEx("c:\\test.qvw",1,false,null,null,null,true);
String script = app.ActiveDocument().GetScript();
StreamWriter outfile = new StreamWriter("c:\\test.qvw.txt");
outfile.Write(script);
outfile.Close();
app.Quit();
+1. Et dans certains cas, REGCLS_MULTIPLEUSE peut être requis, c'est-à-dire que le service fourni peut nécessiter que toutes les instances soient traitées à partir du même processus. – Joe