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

    [C++] Conoscere il nome del file aperto da un programma

    Salve a tutti!
    La mia domanda è semplice, la risposta forse un po' meno:

    Ipotizziamo di avere un proramma aperto (del quale magari conosciamo il nome del processo..)
    Come capire quale file sta usando??

    Esempio: se ho MS Word aperto sul file input.doc,
    come faccio a conoscerne il nome?? (io.doc)

    Grazie per il tempo
    The Happyest Times
    Are The Ones
    That Are Shared

  2. #2
    In realtà quello che mi interessa veramente è sapere quando HA FINITO di lavorare su quel file,
    quindi potrei aprirlo io chiamandolo da console, per esempio: >msword.exe input.doc
    e poi mettermi in attesa per vedere quando tale processo termina, ma come implemento tutto ciò?
    Tuttavia così facendo sorge un ulteriore problema:
    l'utente potrebbe chiudere solo il file aperto (input.doc) senza chiudere word, e aprire da lì un altro file: questo non dovrebbe poter succedere senza che io me ne accorga!
    The Happyest Times
    Are The Ones
    That Are Shared

  3. #3
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    Se provi a cercare nelle API della shell di Windows ce ne qualcuno che ti notifica sui cambiamenti dei files. Forse ti potrebbe tornare utile.
    Per gli Spartani e Sparta usa spartan Il mio github

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Originariamente inviato da Nebula88

    quindi potrei aprirlo io chiamandolo da console, per esempio: >msword.exe input.doc
    e poi mettermi in attesa per vedere quando tale processo termina, ma come implemento tutto ciò?
    Con la CreateProcess e la WaitForSingleObject

    Tuttavia così facendo sorge un ulteriore problema:
    l'utente potrebbe chiudere solo il file aperto (input.doc) senza chiudere word, e aprire da lì un altro file: questo non dovrebbe poter succedere senza che io me ne accorga!
    Questo vuol dire che le specifiche che hai indicato prima non sono corrette. Quindi l'utente può non chiudere il processo ma solo il file. Quindi devi tentare di aprire periodicamente il file fino a che non hai più errore ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Non conosco le API di Windows anche se immaginavo mi sarebbero servite per una cosa del genere, c'è qualcosa di particolare che devo conoscere?
    Qualche consiglio sul materiale da studiare?

    Grazie
    The Happyest Times
    Are The Ones
    That Are Shared

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Ad esempio, quelle che ti ho indicato, per un tipo di soluzione, oppure, sempre ad esempio, la

    ReadDirectoryChangesW
    http://msdn.microsoft.com/en-us/library/aa365465(VS.85).aspx

    per la strada delle notifiche dei cambiamenti ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Ieri avevo provato a scaricare questo esempio (la cui funziona è similare al tuo link) http://www.relisoft.com/win32/watcher.html

    Tuttavia non sono riuscito a compilarlo su codebloks perchè ricevevo un errore sulc odice stesso.
    Poi ho provato su Visual Studio 2010 Express e ho avuto un altro errore.

    Adesso il problema è che io non ho proprio idea di come funzionino le API, delle librerie che servono, ecc..

    C'è qualche accorgimento in particolare che devo conoscere??

    In ogni caso pensavo di studiare da qui:
    http://www.aleax.it/TutWin32/tc.htm

    La mia paura è che non sia materiale troppo vecchio..
    The Happyest Times
    Are The Ones
    That Are Shared

  8. #8
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    Potresti vedere, se usi prodotti di un certo calibro, se hanno delle interfacce di notifica.
    Per gli Spartani e Sparta usa spartan Il mio github

  9. #9
    Si tratta di Openproj, è in Java! http://openproj.org/

    Ora che ci penso, gira su una JVM..
    Dunque non so se appare il processo vero e proprio! o no!?
    The Happyest Times
    Are The Ones
    That Are Shared

  10. #10
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    Alla VM java puoi accedere ance esternamente da c etc etc dovresti xo cercare su internet, JNI.
    Per gli Spartani e Sparta usa spartan Il mio github

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 © 2024 vBulletin Solutions, Inc. All rights reserved.