Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [C#] Invocare un metodo di un'altra applicazione

    Ciao a tutti, dalla mia applicazione ho bisogno di chiamare il metodo di un altro processo, conoscendo il suo riferimento di tipo Process. Come si fa?
    Asus M3A32-MVP Deluxe | AMD Athlon 64 X2 6400+ | ATI Radeon HD 5770 | 4x1GB DDR2-667 Kingston

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Il metodo di un altro processo? Ma cosa intendi?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Esempio:

    applicazione1.exe (ovviamente avviata)
    metodo pubblico: Messaggio(string testo)


    applicazione2.exe
    UnaCertaProcedura()
    {
    applicazione1.Messaggio("ciao");
    }


    Per questioni di logica del programma non posso mettere il metodo in una DLL invece che in un'altra applicazione.
    Asus M3A32-MVP Deluxe | AMD Athlon 64 X2 6400+ | ATI Radeon HD 5770 | 4x1GB DDR2-667 Kingston

  4. #4
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Forse comunque esiste una soluzione più semplice per il mio scopo...

    In pratica sto creando un lettore musicale. Il problema è che ogni volta che apro una canzone col programma, mi apre una nuova istanza invece di usare quella eventualmente già aperta, in questo modo se stava già riproducendo una canzone quella nuova viene riprodotta contemporaneamente all'altra da una nuova istanza.

    Vorrei fare in modo che, all'avvio dell'applicazione, se non c'è nessun'altra istanza aperta si apra normalmente, altrimenti che si avvii una procedura dell'istanza già aperta che ferma la canzone che sta riproducendo e carichi la nuova.

    Per il momento ho risolto che nel caso l'istanza fosse già aperta questa viene chiusa, e il programma si apre normalmente... ma è molto inefficiente così... ogni volta che si apre un file il programma si chiude e riapre...
    Asus M3A32-MVP Deluxe | AMD Athlon 64 X2 6400+ | ATI Radeon HD 5770 | 4x1GB DDR2-667 Kingston

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    69
    la soluzione di MItaly è la più corretta, se vuoi usare un workaround basta che all'avvio della nuova istanza controlli se ce ne è già una in esecuzione, se c'è fermi la vecchia e lasci che parta la nuova.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.