Focus su finestra/applicazione (so molto poco di c#)

di Anonimizzato25358 il
19 risposte
Ciao a tutti,

non so se sia corretto scrivere in questa sezione, ma dato che non ho idea da dove cominciare forse ho capito che con c# posso risolvere, premesso che non ho mai sviluppato in c#.
Sostanzialmente avrei bisogno di un processo sempre attivo che identifichi l'input da tastiera (in realtà è da una pistola che legge bar code ma ho capito che l'input è lo stesso) ed a seconda del codice letto sposti il focus su una finestra/applicazione attiva passando alla stessa il codice letto.
Spero di essere stato abbastanza chiaro nella descrizione.

Grazie a tutti.

19 Risposte

  • Provo ad integrare con uno scenario di esempio:

    Ho diversi programmi aperti (quindi finestra/applicazioni su Windows) se con la pistola sparo un determinato codice vorrei che il focus andasse sul programma A, se sparo un altro tipo di codice va sul programma B, se il codice non rientra nelle mie casistiche non succede nulla.
  • Se avessi un solo programma con più finestre(form) potresti avere la "finestra che legge" che si occupa di assegnare valori a campi e proprietà (pubbliche) delle altre finestre dell'applicazione,è questo il caso?
    se hai più programmi distinti puoi trovare informazioni in questa discussione https://www.iprogrammatori.it/forum-programmazione/vbnet/leggere-scrivere-proprieta-text-una-textboxt-form-altra-applicazione-t42782.html
  • Purtroppo no, parliamo di applicazioni diverse, una è access, l'altra è una applicazione che non conosco non sviluppata da me
  • Devo proprio astrarmi dal discorso applicazione, dovrebbe girare tipo un agent ed intercettare l'input che arriva dalla pistola, ovvero il codice a barre letto
  • Quello che chiedi non è affatto banale.

    Devi scrivere un programma che sta in ascolto continuamente ed esamina il codice ricevuto. Una volta riconosciuto lo invia ad un altro processo con i meccanismi di scambio dati interprocesso classici (api di windows che inviano dati a finestre di altri processi) e poi torna ad accettare un altro input.

    Un bel papocchio abbastanza complesso da realizzare e dal funzionamento non proprio sicuro.

    Fossi in te seguirei altre strade o rinuncerei.
  • "una è access, l'altra è una applicazione che non conosco non sviluppata da me",
    di queste due applicazioni hai o puoi avere il codice sorgente?
  • oregon ha scritto:


    Quello che chiedi non è affatto banale.

    Devi scrivere un programma che sta in ascolto continuamente ed esamina il codice ricevuto. Una volta riconosciuto lo invia ad un altro processo con i meccanismi di scambio dati interprocesso classici (api di windows che inviano dati a finestre di altri processi) e poi torna ad accettare un altro input.

    Un bel papocchio abbastanza complesso da realizzare e dal funzionamento non proprio sicuro.

    Fossi in te seguirei altre strade o rinuncerei.
    Infatti la mia idea era proprio quella di realizzare una sorta di agent (ma come si fa ) che sta lì in attesa dell'input e poi una volta decodificato lo stesso attiva la finestra di destinazione, se necessario, sennò non fa nulla
  • surfernet ha scritto:


    "una è access, l'altra è una applicazione che non conosco non sviluppata da me",
    di queste due applicazioni hai o puoi avere il codice sorgente?
    L'access è una cassa realizzata da me, l'altro è un programma che gira su una pagina web
  • Ah pure su web .. ancora peggio
  • " l'altro è un programma che gira su una pagina web" ,è un applicazione web oppure un Activex? ,per visualizzare il dato dovrai modificare l'applicazione web.Una via,non priva di difetti,potrebbe essere salvare il valore del codice a barre su un db ( o su un file) e farlo leggere dalle applicazioni utilizzando dei timer che in modo temporizzato (magari 1 o 2 secondi) vanno a recuperare il valore,ci saranno delle situazioni di lock ma al limite il dato verrà letto il "giro" dopo ( forse )
  • Non si modifica l'applicazione web lato server. E come farebbe? Semmai si inserisce l'informazione nel browser nel campo apposito
  • Mi correggo, anche l'altro è un programma, non un sito web, scusate, di cui però comunque non ho il codice...
  • Quindi sono solo due?

    Ma scusa, come mai questa necessità? Mai sentito che devi avere un lettore e due programmi.

    Quasi quasi sarebbe molto più facile avere due lettori ed utilizzare quello che ti serve con il programma che ti serve a seconda del codice.
  • Sono solo 2, perchè sono due programmi che in realtà sono 2 casse distinte, una per un tipo di prodotto ed una per un altro.
Devi accedere o registrarti per scrivere nel forum
19 risposte