Estoy creando un programa (C#) que descarga archivos binarios usando archivos NZB, solo puede haber una instancia de mi aplicación ejecutándose en cualquier momento.C#: cómo - ¿aplicación de instancia única que acepta nuevos parámetros?
Así que cuando un usuario hace doble clic en un archivo .nzb y mi programa no se está ejecutando, debería iniciarlo y procesarlo (fácil, registro de archivos). Ahora, si mi programa ya se está ejecutando, NO quiero iniciar una segunda instancia; quiero que la instancia que ya está ejecutándose recupere el archivo especificado.
Haciendo que mi aplicación de una sola instancia se pueda hacer usando la DLL de Visual Basic con el truco .IsSingleInstance, pero no quiero ir allí.
La forma correcta parece ser utilizar un mutex para asegurar que mi aplicación sea de instancia única, pero ahora estoy atascado en cómo pasar el parámetro especificado (el archivo .nzb) a la instancia que ya se está ejecutando.
¡La ayuda sería apreciada! :-)
Probablemente esté al tanto de esto, pero puede que esté reinventando la rueda con su aplicación. http://sourceforge.net/projects/sabnzbd/ es solo un ejemplo – dss539
Yup, y hay un sinnúmero de ;-) Es un proyecto de hobby solo para doblar mis dedos con C#, y si me gusta el resultado, el mundo puede ¡termina con solo otro freeware NZB-downloader! :-) – Led
¿Por qué no quiere usar SingleInstanceController de Microsoft.VisualBasic.dll? Es una asamblea dentro del marco como cualquier otra persona. El hecho de que el nombre sea VisualBasic no se usará. Si Microsoft lo hubiera llamado Microsoft.Foo.dll ¡todos lo usarían! – Oliver