Avatar billede themanronnie Nybegynder
06. december 2001 - 20:15 Der er 13 kommentarer og
1 løsning

Shell (Forkert sti = fejl og luk ned)

Hvordan gør man så der ikke kommer en fejl ved f.eks
hvis man skrive
shell (\"noteLad.exe\") svarer den
filen blev ikke fundet...
og lukker ned, hvodan gør man så der f.eks bare kommer en msgbox og siger \"Forkert Filnavn/Sti???\"
Avatar billede terry Ekspert
06. december 2001 - 20:17 #1
try using shellExec instead this returns an error
Avatar billede themanronnie Nybegynder
06. december 2001 - 20:17 #2
trying...
Avatar billede themanronnie Nybegynder
06. december 2001 - 20:19 #3
den kender ikke ShellExec i\':

Dim koer As String
koer = InputBox(\"Enter Location To a Program It_ MUST Be 100% correct before the program can run_ it\", \"Kør\")
Shellexec koer, vbNormalFocus
Avatar billede themanronnie Nybegynder
06. december 2001 - 20:20 #4
undescores er forkert sat i sprgsm, ikke i vb
Avatar billede terry Ekspert
06. december 2001 - 20:22 #5
Public Declare Sub Sleep Lib \"kernel32\" (ByVal dwMilliseconds As Long)
Public Declare Function ShellExecute Lib \"shell32.dll\" Alias \"ShellExecuteA\" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Public Const SW_HIDE = 0
Public Const SW_SHOW = 5


Dim result As Integer
result = ShellExecute(0, \"Open\", \"C:\\Path\\notepad.exe\", \"\", \"\", SW_SHOW)
Avatar billede themanronnie Nybegynder
06. december 2001 - 20:24 #6
er der ikke en mere simpel kode, (kan i det her i hovedet???!!!!) jeg er newbie i VB
Avatar billede terry Ekspert
06. december 2001 - 20:31 #7
place the declaration in a module so that all forms have access to it. Copy and paste it EXACTLY as it is then forget it (you dont need to worry about it)!

Public Declare Function ShellExecute Lib \"shell32.dll\" Alias \"ShellExecuteA\" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Public Const SW_HIDE = 0
Public Const SW_SHOW = 5


Then in a form you can use the following, change Path to the full path to the program you are opening.

Dim result As Integer
result = ShellExecute(0, \"Open\", \"C:\\Path\\notepad.exe\", \"\", \"\", SW_SHOW)

    If result < 32 Then
        MsgBox \"Ikke fundet ...\", vbExclamation
    end if

Avatar billede terry Ekspert
06. december 2001 - 20:32 #8
REF: (kan i det her i hovedet???!!!!) No, we just know where to cut/paste from!
Avatar billede themanronnie Nybegynder
06. december 2001 - 20:34 #9
TchaChing!
Works.. Thankz...
how do you rember this Shi*!???
points awarded
Avatar billede themanronnie Nybegynder
06. december 2001 - 20:36 #10
k :)
Avatar billede terry Ekspert
06. december 2001 - 20:38 #11
thanks :o)
Avatar billede sjh Nybegynder
06. december 2001 - 20:41 #12
Private Sub Command1_Click()
On Error Resume Next

  Shell \"noteLad.exe\"

End Sub

eller

Private Sub Command1_Click()
On Error GoTo ErrorHandler

  Shell \"fdsfdsfdsfdsfsdf\", vbNormalFocus

Exit Sub
ErrorHandler:
MsgBox \"Error \" & Err.Number & vbCrLf & \"Description: \" & Err.Description, , \"Error\"
End Sub
Avatar billede terry Ekspert
06. december 2001 - 20:44 #13
hi sjh!

But shellexec can more than shell can. It opens the specific file, for example a .Doc file in the program which is associated with that file type, in this case Word!
Avatar billede themanronnie Nybegynder
06. december 2001 - 20:56 #14
thanks both of you... :)
i like the kewl module...
(im a nooB)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester