Ho un'applicazione C# che ha alcune funzioni che eseguono l'automazione JMP. Quando l'utente avvia l'applicazione C#, verifica che JMP sia installato sul sistema dell'utente.Avevo contattato il supporto tecnico di JMP su questo problema su come sapere se JMP è installato su un sistema.La soluzione era cercare una chiave di registro.
Nel codice C#, ho un bool per verificare se JMP è installato:
bool jmpExists = Registry.ClassesRoot.OpenSubKey("TypeLib\\{DCD36DE0-78F8-11CF-9E68-0020AF24E9FE}\\1.0\\0\\win32", false) != null;
Finora almeno 2 PC (Windows 10 e JMP 13 installati) non hanno questa chiave di registro, mentre 10 PC hanno la chiave di registro.
Su un PC con chiave di registro mancante, ho provato a eseguire l'automazione JMP (ignorando la chiave di registro mancante) e non è stato possibile avviarlo su questo PC. Successivamente, ho disinstallato JMP 13 e quindi reinstallato JMP 13 e dopodiché la chiave di registro era presente e l'automazione di JMP ha funzionato correttamente.
Questo è il codice C# per creare un'istanza di JMP / automazione
utilizzando System.Runtime.InteropServices;
JMP.Application myJMP = nuovo JMP.Application();
Ma molti degli utenti che potrebbero utilizzare il mio software hanno molte possibilità di personalizzazione di JMP e l'idea di disinstallare e reinstallare JMP è decisamente indesiderabile! (Il loro JMP funziona bene altrimenti)
Qualche idea sul perché questa chiave di registro non sia presente sui computer di alcune persone? (PC Windows 7 con JMP 13 in esecuzione)
Qualche modo per risolvere questo problema oltre a reinstallare JMP?Non sono sicuro che si tratti solo di copiare la chiave di registro sui computer che non ce l'hanno? Non sono esattamente sicuro di come copiare e installare una chiave di registro, se questa è la soluzione.
Se JMP a 32 bit è installato su una versione a 64 bit, la loro chiave potrebbe apparire nell'hive di Wow.Quindi, la chiave in questione si troverebbe in:
HKEY_CLASSES_ROOT\WOW6432Node\TypeLib\{DCD36DE0-78F8-11CF-9E68-0020AF24E9FE}\1.0\0\win32
Brian Corcoran
Sviluppo JMP
Ripristino delle associazioni di file Dovrebbe reimpostare quella chiave di registro.
File > Preferenze > Specifiche di Windows
Se ciò non funziona per qualche motivo, puoi creare tu stesso la chiave di registro in Regedit.
Tieni presente che la tua variabile jmpExists in realtà significa "JMP è installato E JMP può essere automatizzato".