|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2008
Messaggi: 80
|
Dannata shell-Windows7 l'anti shell
Maledizione ho installato quella specie di frociata di window7 pieno di stupidate, tranne quello che seve, strumenti nascosti, finestrine qui e la, ti avverte qui, di dice di la, ma sei davvero sicuro??? ci vogliono i diritti di amministratore, il sito che visiti ha dei rischi, ettcccc.
Ho scritto dei programmi in vba che ora non girano, in particolare ho la seguente sintassi che va bene su xp e win 2000 ma su win7 non ne vuole sapere: Cleaver_Plugin_Command = "clever load " Total_Command = (Cleaver_Plugin_Command) & apice & (File_To_Play) & apice Shell (Total_Command) 1) vorrei eseguire in shell il comando che ho precedentemente costruito e inserito in variabile. Quello che dovrebbe eseguire e' via shell: clever.exe load "F:\music\queen\track-01.wav) Come diavolo faccio a fargli eseguire sta cosa elementare? Se le cose elemetari non funzionano, allora le cose difficili come si fanno????? 2) esiste una funzione tale che creo un pulsante su una form che cliccandolo mi copia il contenuto testuale di una textbox all'interno di una form, nella clipboard ? in modo poi da farci incolla su altre applicazioni??? si puo' spiegare in breve come farlo?? Grazie |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2001
Messaggi: 12862
|
Innanzitutto, essendo su un forum di un certo livello tecnico, sei pregato di esprimerti in maniera consona, dato che non siamo più all'asilo.
Seconda cosa, se non sai usare Windows 7 perché l'hai appena installato, allora impara a farlo prima di trarre giudizi basati sul nulla. Windows 7 non è come i Windows precedenti, e questo l'hai capito. L'autorizzazione ti viene chiesta perché evidentemente fai operazioni di tipo amministrativo, ed è giusto che sia così, come accade in altri sistemi come GNU/Linux e MacOS. Questo significa che eseguibili potenzialmente dannosi che cercano di installare drivers oppure modificare file di sistema non potranno farlo senza il consenso dell'utente e questo perché tali operazioni non rappresentano "la norma", ma "l'eccezione". Detto ciò se vuoi una mano posta il codice VBS per intero e qualcuno che saprà aiutarti lo troverai di sicuro. |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Jan 2008
Messaggi: 80
|
stupidagginerie e varie
Non so se tu sia o meno programmatore, a me serve di eseguire su una shell un output variabilizzato, nulla di piu' postare il codice mi sembra del tutto suoperfluo se scrivo A="ls -l"; b="/usr/bin/bash";$a $b devo poter eseguire il comando $a $b
Cioe' ls -l /usr/bin/bash nulla di piu' devo solo sapere perche' shell davanti non funziona e cosa devo scrivere al posto di shell visto che con il comando shell via xp e w2k funziona. Detto cio' piu' namo avanti qui e piu' facciamo interfacce da copertina e mandiamo a farsi friggere le funzionalita'. Se prendo un file da una chiavetta e voglio sovrascriverlo non mi devono servire i permessi di amministratore mi deve solo servire che lo faccia senza tante esitazioni altre domande e fronzoli con corbellerie varie. Grazie a chi mi aiutera'. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: May 2001
Messaggi: 12862
|
Piuttosto che usare VBScript, dovresti provare ad usare Powershell, già integrata in Windows 7.
Puoi assegnare le variabili ed usarle come meglio credi, ad esempio: Codice:
PS C:\Users\Giulio> $a = "hello " PS C:\Users\Giulio> $b = "world" PS C:\Users\Giulio> echo $a$b hello world Inoltre definisce molti alias per comandi unix in modo tale da rendere il passaggio meno traumatico (ad esempio sono disponibili comandi come cat e ls...). I parametri dei comandi tuttavia non sono quelli classici, perché cercano di essere più comprensibili, ad esempio: Codice:
PS C:\Users\Giulio> ls -Filter "d*"
Directory: C:\Users\Giulio
Mode LastWriteTime Length Name
---- ------------- ------ ----
d-r-- 03/02/2011 21.55 Desktop
d-r-- 01/02/2011 21.19 Documents
PS C:\Users\Giulio>
In giro comunque si dovrebbero trovare dei tutorial. Comunque tanto per la cronaca non è normale che Windows 7 ti chieda i permessi per un file su una periferica rimovibile, evidentemente i permessi su quella pennetta sono stati settati in malo modo dalle precedenti versioni di Windows. Ultima modifica di WarDuck : 07-02-2011 alle 18:36. |
|
|
|
|
|
#5 |
|
Member
Iscritto dal: Jan 2008
Messaggi: 80
|
Non posso usare La PS on the fly la devo poter richiamare
Grazie per la risposta.
Tutta la faccenda qui viene da una form excel che identifica e raccoglie certi valori in delle "text box" dai valori presenti al momento nella text box devo poter richiamare la shell che mi esegue il comando finale, (simile a ls -l /export/home/dev1/) dove /export/home/dev1/ rappresenta uno dei valori variabili di volta in volta presenti nelle varie celle excel) Codice:
Private Sub CommandButton_Play_Single_Song_Click()
'please put clever winamp plugin in registered path windows. ex. /windows/
Dim Cleaver_Plugin_Command As String
Dim File_To_Play As String
Dim Total_Command As String
Dim apice As String
Dim Run_Winamp As String
Run_Winamp = Environ("ProgramFiles") & "\Winamp\winamp.exe" 'path_of_winamp.exe
'Si mette nella variabile File_To_Play il valore visualizzato e presente nella Text_box
File_To_Play = Show_Current_Path_And_Filename.Text
If File_To_Play = "" Then
MsgBox " Please Insert Link Of Single Audio File, In Sideways Text Box "
Exit Sub
End If
ActiveCell.Offset(1, 0).Select
Cleaver_Plugin_Command = "clever load "
'gli apici servono per proteggere path e nomifiles, in caso di nomifile contenenti spazi.
apice = """"
Total_Command = (Cleaver_Plugin_Command) & apice & (File_To_Play) & apice
Shell (Run_Winamp)
'Shell ("""%programfiles%\Winamp\winamp.exe""")
Shell (Total_Command)
End Sub
Come richiamo l'equivalente di shell che funziona su win xp ma non su Win7 ???? Many thankkkksss |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: May 2001
Messaggi: 12862
|
La shell va creata a quanto pare:
http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx Esempio: Codice:
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "%windir%\notepad " & WScript.ScriptFullName
|
|
|
|
|
|
#7 |
|
Member
Iscritto dal: Jan 2008
Messaggi: 80
|
Ricomincio da 0 -- Niente shell command with argument
Con quelle informazioni anche leggendo l'articolo su microMegazzozz non si riesce a far nulla.
Al massimo riesco a lanciare una applicazione "C:\Program Files\winamp\winamp.exe" Infatti a differenza di xp bisogna lanciare la stringa con apici --estratto script Run_Winamp = """C:\Program Files\Winamp\winamp.exe""" Set wshshell = CreateObject("Wscript.Shell") wshshell.Run Run_Winamp EOF Chiaramente la lunga,tediosa porcata se funziona su win7 non va su xp perche' xp non accetta questi argomenti-comandi. quindi: >> shell script (due semplici comandi per lanciare una applicazione-Capirai che script....)??? --si !!! >>Su 2 sistemi operativi diversi win7 e Xp??? --Si !!! >>Allora 2 shell script !!!!! Evviva 2) non riesco ancora a lanciare nulla con argomenti il cui argomento e' rappresentato da una variabile. Molti utenti ho letto in giro sono alle prese con questi problemi ho provato a passarlo con con "clever load" W:\pink floyd - Echoes oppure con """clever load W:\pink floyd - Echoes""" """clever load""" """W:\pink floyd - Echoes"""" Il comando corretto su cmd e' clever load "W:\pink floyd - Echoes" che poi sarebbe uguale a fare: cd "C:\Maui" Non so che inventarmi Ma che bellezza e pensare che su unix bastava fare $a $b Bello.... pare davvero di stare alle elemetari, ricominciamo da zero spaccato |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: May 2001
Messaggi: 12862
|
Considerato che non conosco VBScript e che quindi ho dovuto imparare i comandi:
Codice:
Set Shell = WScript.CreateObject("Wscript.Shell")
command = """C:\Program Files (x86)\Mozilla Firefox\firefox.exe"" "
argument = "http://www.hwupgrade.it"
toRun = command & argument
'WScript.Echo toRun
Shell.Run(toRun)
L'accortezza che devi avere è semplicemente quella che quando ci sono argomenti o comandi che contengono degli spazi, devi virgolettarli con i tripli apici. Ultima modifica di WarDuck : 11-02-2011 alle 12:12. |
|
|
|
|
|
#9 |
|
Member
Iscritto dal: Jan 2008
Messaggi: 80
|
Ti ringrazio per l'interesse dimostrato e la dedizione.
Ho provato a modificare la mia routine secondo il tuo schema e non ci sono riuscito, mi da errore in riga >>> Shell.Run(toRun) allora ho creato una macro nuova di sana pianta con il tuo codice in ctrl+c ctrl+v correggendo l'apice ....firefox.exe"" "...togliendo lo spazio... e mi da errore evidenziando: Set Shell = ponendomi: (argomento non facoltativo) ho provato anche a cambiare set shell con set ascella e poi richiamando ascella.run stesso problema. Ho office 2003 Comunque guarda..... io ti ringrazio !!! Ma IO non ho parole........... Per lanciare 2 comandi in CROCE ma ti rendi conto?? Te stesso hai scritto 5 righe, quando ragionevolmente si poteva fare con 3 a= (Variabile1) b= (variabile2) run (a) & (b) Tutto cio' e' annichilente, non e' ne normale ne logico cio ho perso 3 ore + il forum senza concludere un non nulla. ora vedro che si puo' fare, altrimenti che ti devo dire .... si comincera' a sputtanare windows_7 mi sembra inevitabile.... per il sistema che e', ma non fa.... sembra un virus......... Ultima modifica di mauimaui4 : 11-02-2011 alle 13:40. Motivo: Revisione |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:51.



















