Precedente :: Successivo |
Autore |
Messaggio |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 15 Ago 2006 01:54 Oggetto: * shorcut per attivare disattivare microfono |
|
|
salve, per ora faccio velocemente
tasto windows + r
sndvol32
e attivo/disattivo il microfono.
Volevo sapere se la cosa si poteva fare ancora + velocemente tramite, che ne so un shortcut, file bat o vbs o roba simile.
grazie |
|
Top |
|
 |
ioSOLOio Amministratore


Registrato: 12/09/03 19:01 Messaggi: 16342 Residenza: in un sacco di...acqua
|
Inviato: 15 Ago 2006 09:15 Oggetto: Re: shorcut per attivare disattivare microfono |
|
|
kluster ha scritto: | salve, per ora faccio velocemente
tasto windows + r
sndvol32
e attivo/disattivo il microfono.
Volevo sapere se la cosa si poteva fare ancora + velocemente tramite, che ne so un shortcut, file bat o vbs o roba simile.
|
scusa, ma non hai il classico altoparlantino giallo sulla tray icon? In quel caso è ancora più veloce della tua procedura: doppio clic e apri il controllo volume complessivo (il sndvol32), clic singolo e apri la mascherina per regolare il volume o toglierlo del tutto.
Comunque..con una shortcut potresti ottenere di lanciare direttamente sndvol32 anzichè andare in start -> esegui (che è ciò che fai utilizzando la scorciatoria da tastiera indicata) e quindi non miglioreresti di molto.
Per cui, anche se non so come, l'opzione logica sarebbe di dare l'istruzione che toglie il volume tramite un file bat.
Vediamo se qualcuno ci illumina. |
|
Top |
|
 |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 15 Ago 2006 09:36 Oggetto: |
|
|
si, capisco quello che vuoi dire, ma sappi che io sono quasi anti-mouse, tendo molto a fare tutto con la tastiera, mi rendo conto che il controllo sulla sys tray è comodo, ma l'obbiettivo è che devo lanciare un'applicazione e mi serve che sia attivato il microfono e alla chiusura che sia disattivato.
Ora il problema non sono tanto io, l'applicazione è per mio padre (70 anni) e se gli dico "doppio click li sopra" ancora ancora anche se mi guarda storto, lo fa, ma se invece gli dico di attivare il microfono (anche se gli faccio vedere la procedura) si butta giu' dalle scale.
P.s non posso lasciare il microfono accesso sempre |
|
Top |
|
 |
ioSOLOio Amministratore


Registrato: 12/09/03 19:01 Messaggi: 16342 Residenza: in un sacco di...acqua
|
Inviato: 15 Ago 2006 10:01 Oggetto: |
|
|
ok, era per inquadrare il problema, a volte magari "scompare" una icona o ci sono motivi diversi.
Occorre quindi creare una istruzione che renda possibile il mute cioè volume on/volume off.
Credo sia possibile...provo a pensarci perchè mi pare di ricordare di aver visto qualcosa di simile [e speriamo che passi qualcuno più veloce/competente di me...] |
|
Top |
|
 |
ioSOLOio Amministratore


Registrato: 12/09/03 19:01 Messaggi: 16342 Residenza: in un sacco di...acqua
|
Inviato: 15 Ago 2006 10:13 Oggetto: |
|
|
intanto mi son ricordato di alcune utility..ok, lo so, non risolvono il problema nei termini da te posti..ma li cito a futura memoria..
WheelsOfVolume
Volumouse a suo tempo citata da GrayWolf nella lista dei programmi stand-alone
Volume Tray |
|
Top |
|
 |
chemicalbit Dio maturo


Registrato: 01/04/05 18:59 Messaggi: 18597 Residenza: Milano
|
Inviato: 15 Ago 2006 12:45 Oggetto: |
|
|
kluster ha scritto: | ma sappi che io sono quasi anti-mouse, tendo molto a fare tutto con la tastiera | Al collegamento (tanto sul desktop che nel menù di avvio) puoi associare una combinazione di tasti come scelta rapida (es. ctrl+shift+A = attiva , xtrl+shift+D = disattiva. Occhio a non usare combinazioni già in uso in altri programmi, perché diventerbbero inutilizzabili perhcé "sovrascritte" da quste create da te)
tasto destro -> proprietà -> scheda collegamento -> tasti di scelta rapida (questo con Windows XP, con altre verisioni magari può essere un po' diverso) kluster ha scritto: | ma l'obbiettivo è che devo lanciare un'applicazione e mi serve che sia attivato il microfono e alla chiusura che sia disattivato. | Un file batch penso potrebbe funzionare
(non conosco i vbs. Penso che possano fare più cose, ma che siano un po' più compelssi da scrivere. Se tu consoci i vbs, vedi tu se ti trovi più comodo).
Apri con un blocco note, scrivi qualcosa tipo (ovviamente è un esempio, tu sostituisci coi reali comandi) Codice: | comando per attivare il micorofono
comando per eseguire il programma
comando per disattivare il microfono |
e poi salvalo con un nome che finisca in .BAT
Vedi se funziona.
Normalmente i comandi vengono eseguiti uno dopo l'altro,
ma in questo caso il secondo viene eseguito in un'altra finestra, per cui non so se viene atteso che il programma termini per eseguire quello successivo o se venga eseguito subito (disattivando quindi il microfono).
(io conosco i file batch di uando usavo il DOS (e che non avevano comandi particolari per poter gestire le finestre di windos3.1.
Con win95 e successivi i file batch sono diventati meno necessari e frequenti.
Per cui non ho mai avuto a che fare con un problema simile).
Se non funzionasse avvisaci che vediamo come fare. |
|
Top |
|
 |
ioSOLOio Amministratore


Registrato: 12/09/03 19:01 Messaggi: 16342 Residenza: in un sacco di...acqua
|
Inviato: 15 Ago 2006 13:29 Oggetto: |
|
|
chemicalbit ha scritto: |
Apri con un blocco note, scrivi qualcosa tipo (ovviamente è un esempio, tu sostituisci coi reali comandi) Codice: | comando per attivare il micorofono
comando per eseguire il programma
comando per disattivare il microfono |
|
credo che per Kluster il problema sia proprio l'istruzione comando per attivare/disattivare il microfono
Per lanciare il programma quale che sia basta indicare il percorso all'eseguibile...idem per aprire l'interfaccia volume...ma è il comando per levare/mettere il volume che non saprei scrivere..come detto mi pare di aver letto qualcosa in proposito una volta, ma non ricordo... |
|
Top |
|
 |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 15 Ago 2006 17:37 Oggetto: |
|
|
infatti è proprio quello che mi manca.
Via bat la vedo difficile.
Forse con un vbs via regwrite si puo' fare, ho gia' rifatto qualcosa ma mi mancano proprio le chiavi da modificare ed il valore da attribuire
un ipotetico esegui.vbs
Codice: |
Dim objShell,objProg, strChiave, strAppPath, strCmd
' Chiave regedit da modificare
strChiave = "HKLM\[SONASEGADAQUIINPOI]"
' Nome del programma da lanciare (nome escapato DOS)
strAppPath = "C:\Progra~1\VoiceM~1\VoiceM~1.exe"
Set objShell = CreateObject("WScript.Shell")
' uso start altrimenti rimane aperta la finestra del command
' fino a che non si chiude il programma lanciato
strCmd = "%ComSpec% /C " & "start " & strAppPath
' Attivo o disattivo la chiave che credo sara' una
' chiave stringa (REG_SZ) da mettere ad 1 o 0
' a seconda che sia da attivare o disattivare
' objShell.RegWrite strChiave, [VALORE], [TIPO_CHIAVE (REG_SZ|REG_DWORD)]
'Lancio il programma
Set objProg = objShell.Exec(comando)
'Pulitura
Set objShell = nothing
Set objProg = nothing
|
|
|
Top |
|
 |
chemicalbit Dio maturo


Registrato: 01/04/05 18:59 Messaggi: 18597 Residenza: Milano
|
Inviato: 16 Ago 2006 10:12 Oggetto: |
|
|
chemicalbit ha scritto: | Apri con un blocco note, scrivi qualcosa tipo (ovviamente è un esempio, tu sostituisci coi reali comandi) Codice: | comando per attivare il micorofono
comando per eseguire il programma
comando per disattivare il microfono |
e poi salvalo con un nome che finisca in .BAT
Vedi se funziona.
Normalmente i comandi vengono eseguiti uno dopo l'altro,
ma in questo caso il secondo viene eseguito in un'altra finestra, per cui non so se viene atteso che il programma termini per eseguire quello successivo o se venga eseguito subito (disattivando quindi il microfono). | Infatti non funziona ... (ho fatto le prove con dei programmi a caso. Per un più faciel debugging al posto di far attivare e disattivare il microfono, ho fatto visualizzare delle righe nella finestra di consolle col comando batch "echo" )
cambia in
Codice: | @echo off
rem la riga precedente serve a non far comparire sullo
rem schermo i comandi del file batch comando per attivare il micorofono
rem
comando per attivare il micorofono
start /wait comando per eseguire il programma
comando per disattivare il microfono |
piccola nota: se il nome del programma avesse uno spazio dovresti racchiuderlo tra virgolette (ad es. "c:\miei programmi\nome programma").
Ho imparato a mie spese nel fare le prove, il problema che la sintassi di start usa le virgolette per l'opzione che permette di specificare ul titolo da mettere nella barra della finestra (usare un'opzione /TITLE era troppo intelligente ). Nel caso dovessi usare necesariamente le virgolette nel nome del programma, puoi risolvere specificando un titolo(prima del comando) ad es.
Codice: | start "titolo che farei meno di mettere ma sono obbligato" /wait "c:\miei programmi\nome programma" |
Problema 2: con alcuni programmi coi quali ho provato, non funziona comunque.
Presumo sia perché il programma che avvio in realtà fa una serie di operazioni (inzializzare qualcosa, ecc. ecc.) e poi avvia un altro programma e poi esce.
Spero non sia il tuo caso.
ioSOLOio ha scritto: | credo che per Kluster il problema sia proprio l'istruzione comando per attivare/disattivare il microfono | Pensavo fosse quello che kluster citava nel suo prmo mesasgio:
sndvol32
ora controllo. |
|
Top |
|
 |
chemicalbit Dio maturo


Registrato: 01/04/05 18:59 Messaggi: 18597 Residenza: Milano
|
Inviato: 16 Ago 2006 10:13 Oggetto: |
|
|
kluster ha scritto: | Forse con un vbs via regwrite si puo' fare, ho gia' rifatto qualcosa ma mi mancano proprio le chiavi da modificare ed il valore da attribuire |
Quidni tu vai ad agire direttamente sulle chiavi di registro, al posto di lanciare un programma che faccia la cosa?
Il problema e' che non conosco il vbs
Le righe che inziano con ' sono commenti, giusto?
strCmd = "%ComSpec% /C " & "start " & strAppPath
E' un'assegnazione alla variabile, giusto? Ma poi dov'è che la utilizzi?
E le righe che inziano con "Set", sono assegnaizoni a variabili anche quelle, o sono esecuzioni di "programmi"? |
|
Top |
|
 |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 16 Ago 2006 11:17 Oggetto: |
|
|
si hai ragione ho sbagliato, scrivendo a mano poi avevo cambiato il nome della variabile (riga incriminata Set objProg = objShell.Exec(strCmd) )
il codice corretto è questo
Codice: |
Dim objShell,objProg, strChiave, strAppPath, strCmd
' Chiave regedit da modificare
strChiave = "HKLM\[SONASEGADAQUIINPOI]"
' Nome del programma da lanciare (nome escapato DOS)
strAppPath = "C:\Progra~1\VoiceM~1\VoiceM~1.exe"
Set objShell = CreateObject("WScript.Shell")
' uso start altrimenti rimane aperta la finestra del command
' fino a che non si chiude il programma lanciato
strCmd = "%ComSpec% /C " & "start " & strAppPath
' Attivo o disattivo la chiave che credo sara' una
' chiave stringa (REG_SZ) da mettere ad 1 o 0
' a seconda che sia da attivare o disattivare
' objShell.RegWrite strChiave, [VALORE], [TIPO_CHIAVE (REG_SZ|REG_DWORD)]
'Lancio il programma
Set objProg = objShell.Exec(strCmd)
'Pulitura
Set objShell = nothing
Set objProg = nothing
|
prendi questo codice e lo salvi in .vbs
cambi la string strAppPath = "C:\Progra~1\VoiceM~1\VoiceM~1.exe" per far partire il programma che ti interessa
si, le righe che iniziano con ' sono commenti per ora è disabilitao l'accesso al regwrite perchè non conosco la chiave |
|
Top |
|
 |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 16 Ago 2006 11:29 Oggetto: |
|
|
chemicalbit ha scritto: | kluster ha scritto: | Forse con un vbs via regwrite si puo' fare, ho gia' rifatto qualcosa ma mi mancano proprio le chiavi da modificare ed il valore da attribuire |
Quidni tu vai ad agire direttamente sulle chiavi di registro, al posto di lanciare un programma che faccia la cosa?
Il problema e' che non conosco il vbs
Le righe che inziano con ' sono commenti, giusto?
strCmd = "%ComSpec% /C " & "start " & strAppPath
E' un'assegnazione alla variabile, giusto? Ma poi dov'è che la utilizzi?
E le righe che inziano con "Set", sono assegnaizoni a variabili anche quelle, o sono esecuzioni di "programmi"? |
si il vbs è una versione lite di visual basic, ossia vbscript.
il Dim serve per dichiarare preventivamente la variabile (non è necessario)
l'assegnazione è atipizzata quindi basta un
v = "pippo" o x = 1
e lui riconosce se è una stringa o un numero
per l'assegnazione delle variabili oggetto invece devi utilizzare un set
quindi
v = objShell.Exec(strCmd) sbagliato
set v = objShell.Exec(strCmd) sbagliato
a questo punto tutto sta nell'utilizzare gli oggetti integrati nel linguaggio che si creano con un createObject("PROGID.CLASSID)
es. filesystem
set oggettoFileSystem = CreateObject("Scripting.FylesystemObject")
e poi ognuno ha i suoi metodi, alcuni dei quali restituiscono ulteriori oggetti con relativi metodi, un es. spicciolo:
Set oggettoFile = oggettoFileSystem.GetFile("miofile.txt")
oggettoFile .Delete
set myDir = oggettoFileSystem.GetDirectory(PATH) |
|
Top |
|
 |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 16 Ago 2006 11:31 Oggetto: |
|
|
edit.
testa dura che sono:
set v = objShell.Exec(strCmd) sbagliato ho scritto verde ma intendevo che è giusto. |
|
Top |
|
 |
|