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

    JAVA: Controllo finestra esterna

    Buongiorno a tutti,
    Ho un piccolo problema e spero nel vostro aiuto.
    Nella mia applicazione apro una finestra di Outlook tramite un Outlook Connector che ho trovato in rete e che fa bene il suo mestiere.

    Avrei bisogno di sapere qualche metodo per conoscere quando la finestra viene chiusa o perché la mail è stata inviata oppure perché la finestra è stata chiusa.

    Ho cercato se c'era qualche listener nel connector che facesse questo lavoro ma purtroppo non c'è.

    Adesso cerco qualche idea o metodo per capire se quella finestra di outlook è stata chiusa o meno.

    spero avervi fatto capire.

    Grazie x ogni idea/consiglio
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Non credo che la cosa sia così semplice: tu apri un processo completamente diverso che viene gestito dal sistema operativo (cosa di cui la JVM non sa e non deve sapere nulla).

    Quello che puoi fare è ottenere un InputStream per leggere dallo standard output del processo o un OutputStream per scrivere sullo standard input del processo.
    Quando il processo muore, questi stream vengono, ovviamente, chiusi e l'applicazione Java ne può ricevere notifica attraverso il sollevamento di un eccezione.
    Nulla di più.

    Non hai modo, in puro Java, di controllare il processo esterno. Lo puoi fare se riesci a scrivere del codice nativo da usare dentro al programma Java.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Era proprio ciò che temevo o andare a lavorare su jni oppure
    visto che mi interessa solo se la finestra è aperta o chiusa potrei vedere con le Input/Otput Stream
    Grazie del consiglio LeleFT
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  4. #4
    ultimo piccolo consiglio.

    Visto che il processo non viene chiamato tramite la Runtime.getProcess, come faccio a creare gli InputStream/OutputStream senza il riferimento al processo?
    Ovvero da dove posso predere tale riferimento?

    Grazie
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da schumy2000
    ultimo piccolo consiglio.

    Visto che il processo non viene chiamato tramite la Runtime.getProcess, come faccio a creare gli InputStream/OutputStream senza il riferimento al processo?
    Ovvero da dove posso predere tale riferimento?

    Grazie
    Ah, beh.. se è questa libreria esterna che effettua il lavoro, dovrai vedere se tra le API di tale libreria esiste qualcosa per ottenere le info che cerchi.

    Pensavo che tu, con un Runtime.getRuntime().exec() lanciassi questo Outlook Connector; come se questo Connector fosse un'applicazione esterna...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.