vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Probleme beim Shell-Aufruf 
Autor: Cerberus
Datum: 26.05.04 13:31

Hallo,
ich habe ein kleines(?) Problem mit einem Programm unter Win98SE

Wenn ich folgenden Code ausführen will:

als Übergabeparameter habe ich:

sfile= cmd /c regedit /e TheBat.reg.dat HKEY_CURRENT_USER\Software\RIT
wstyle=vbnormal


(den Wert für sfile wandle ich vorher noch in kurze Pfadangaben um)

'Zum Pausieren des Programmablaufs
Private Declare Function WaitForSingleObject Lib "kernel32.dll" _
(ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
 
'Zum ermitteln der kurzen Dateinamen
Private Declare Function GetShortPathName Lib "kernel32.dll" _
Alias "GetShortPathNameA" (ByVal lpszLongPath As String, _
ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long
 
'zunächst die benötigten API-Deklarationen
Private Declare Function CloseHandle Lib "kernel32.dll" _
  (ByVal hObject As Long) As Long
 
Private Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess _
  As Long, _
  ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
 
Private Const INFINITE = &HFFFF
Private Const SYNCHRONIZE = &H100000
 
'Warten bis Anwendung beendet
Public Sub AppStartAndWait(ByVal sFile As String, _
  ByVal wStyle As VbAppWinStyle)
 
  'Parameterbeschreibung
  'sFile:  Anwendung, die gestartet werden soll
  'wStyle: Darstellungsart des Anwendungsfensters
 
  Dim lRetVal As Long
  Dim lHandle As Long
  Dim lRet As Long
 
On Error GoTo Wait_Fehler
 
1:  lRetVal = Shell(sFile, wStyle)
2:  If lRetVal <> 0 Then
3:    lHandle = OpenProcess(SYNCHRONIZE, 0, lRetVal)
4:    If lHandle <> 0 Then
5:      lRet = WaitForSingleObject(lHandle, INFINITE)
6:      CloseHandle (lHandle)
    End If
  End If
 
End If
 
Exit Sub
 
Wait_Fehler:
 
Select Case Err.Number
 
Case Else:  Call Log_schreiben("Fehler", Err.Number, " Fehler in Sub Wait for" & _
  "App in Zeile: " & Erl & Space(1) & Err.Description)
            Exit Sub
End Select
 
End Sub
bekomme ich die folgende Fehlermeldung:

"Fehler-Nr.: 53 Fehler in Sub Wait for App in Zeile: 1 Datei nicht gefunden"

Unter Win2k und WinXP funktioniert das aber problemlos.
Was mache ich falsch?


Danke
Cerberus

Hier muss ich mir noch etwas schlaues f?r suchen

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Probleme beim Shell-Aufruf1.008Cerberus26.05.04 13:31
Re: Probleme beim Shell-Aufruf401ModeratorMartoeng26.05.04 15:25
Re: Probleme beim Shell-Aufruf443Cerberus26.05.04 15:55
Re: Probleme beim Shell-Aufruf399ModeratorMartoeng26.05.04 16:31
Re: Probleme beim Shell-Aufruf375Cerberus26.05.04 16:45
Re: Probleme beim Shell-Aufruf360Cerberus26.05.04 17:30
Re: Probleme beim Shell-Aufruf411ModeratorMartoeng26.05.04 19:29
Re: Probleme beim Shell-Aufruf412Cerberus26.05.04 19:35

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel