paroa Skrevet 22. september 2006 Del Skrevet 22. september 2006 Hei, jeg sliter med å hente ut en bane fa filelist. Jeg vil at når brukeren trykker på en fil også trykker "OK" så skal filens bane automatisk bli limt inn i en shell komando, men dette får jeg ikke til. Noen som vet hva jeg skal gjøre? Private Sub Command1_Click() Shell cacls "(GetSelectedFile(FileBox As FileListBox) As String )" /G%USERPROFILE%:F End Sub Private Sub Command2_Click() Unload Me Form1.Show End Sub Private Sub Dir1_Change() File1.Path = Dir1.Path End Sub Private Sub Drive1_Change() Dir1.Path = Drive1.Drive End Sub Public Function GetSelectedFile(FileBox As FileListBox) As String If FileBox.ListIndex < 0 Then Exit Function End If GetSelectedFile = FileBox.Path & IIf(Right(FileBox.Path, 1) = "\", "", "\") & FileBox.FileName MsgBox GetSelectedFile(File1) End Function Lenke til kommentar
aadnk Skrevet 22. september 2006 Del Skrevet 22. september 2006 (endret) Antar det blir noe som følgende: ' ... Public Function GetSelectedFile(FileBox As FileListBox) As String If FileBox.ListIndex < 0 Then Exit Function End If GetSelectedFile = FileBox.Path & IIf(Right(FileBox.Path, 1) = "\", "", "\") & FileBox.FileName End Function Private Sub Command1_Click() ' Endre 'File1' til navnet på fillisteboksen din Shell "cacls " & Chr(34) & GetSelectedFile(File1) & Chr(34) & " /G%USERPROFILE%:F" End Sub Endret 22. september 2006 av aadnk Lenke til kommentar
paroa Skrevet 22. september 2006 Forfatter Del Skrevet 22. september 2006 Antar det blir noe som følgende: ' ... Public Function GetSelectedFile(FileBox As FileListBox) As String If FileBox.ListIndex < 0 Then Exit Function End If GetSelectedFile = FileBox.Path & IIf(Right(FileBox.Path, 1) = "\", "", "\") & FileBox.FileName End Function Private Sub Command1_Click() ' Endre 'File1' til navnet på fillisteboksen din Shell "cacls " & Chr(34) & GetSelectedFile(File1) & Chr(34) & " /G%USERPROFILE%:F" End Sub 6919430[/snapback] Takk, jeg vet ikke om det funker siden det bare blinket et par ganger, men det kommer ihvertfall ikke opp syntax error lenger. Visst man kjører denne kommandoen manuelt så må man bekrefte ved å trykke J også Enter, er det noe jeg også må legge inn i koden? Lenke til kommentar
paroa Skrevet 23. september 2006 Forfatter Del Skrevet 23. september 2006 Det fungerer desverre ikke. Jeg lurer på om %USERPROFILE% er feil og at det skal stå %USERNAME% istede? Man må jo også taste "J" å Enter for å bekrefte, er det noen måte man kan legge inn dette på? Lenke til kommentar
aadnk Skrevet 23. september 2006 Del Skrevet 23. september 2006 %USERPROFILE% er feil og at det skal stå %USERNAME% istede? 6921464[/snapback] Hm. Sistnevnte er nok riktig i denne konteksen. Man må jo også taste "J" å Enter for å bekrefte, er det noen måte man kan legge inn dette på? 6921464[/snapback] Jepp. Bruk CMD.exe til dette: Shell Environ$("comspec") & " /k echo y| cacls " & Chr(34) & GetSelectedFile(File1) & Chr(34) & " /G %USERNAME%:F" Lenke til kommentar
paroa Skrevet 25. september 2006 Forfatter Del Skrevet 25. september 2006 Jeg får opp cmd som du sa, men jeg får desverre ikke trykket "Y" siden det alerede står "Proceding file xxx" der. Må bare bytte om på rekkefølgen på de to. Det har jeg ikke fått til enda.. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå