Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Problem beim benutzen von CreateProcessA und dem Arbeitsverzeichnis

Mitglied: miniversum

miniversum (Level 3) - Jetzt verbinden

15.10.2008, aktualisiert 10:18 Uhr, 3296 Aufrufe, 1 Kommentar

Hallo
Ich arbeite mit einem Excel 2003 unter Windows xp sp3.
In einem Excelmakro möchte ich ein Externes Programm starten und warten bis dieses beendet ist.
Das mache ich mit diesem Teil des Codes (nur mal der relevante Teil). Soweit funktioniert das auch.
01.
Private Declare Function CreateProcessA Lib "kernel32" (ByVal lpApplicationName As Long, _
02.
ByVal lpCommandLine As String, ByVal lpProcessAttributes As Long, _
03.
ByVal lpThreadAttributes As Long, ByVal bInheritHandles As Long, _
04.
ByVal dwCreationFlags As Long, ByVal lpEnvironment As Long, _
05.
ByVal lpCurrentDirectory As Long, lpStartupInfo As STARTUPINFO, _
06.
lpProcessInformation As PROCESS_INFORMATION) As Long
07.
Private Const NORMAL_PRIORITY_CLASS = &H20&
08.

09.
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
10.

11.

12.
Sub ShellAndWait(ByVal Filename As String)
13.
Dim RetVal As Long
14.
Dim proc As PROCESS_INFORMATION
15.
Dim StartInf As STARTUPINFO
16.

17.
StartInf.cb = Len(StartInf)
18.

19.
'Angegebenes Programm starten
20.
RetVal = CreateProcessA(0&, Filename, 0&, 0&, 1&, NORMAL_PRIORITY_CLASS, 0&, 0&, StartInf, proc)
21.

22.
'Das eigene Programm anhalten, bis das fremde beendet wurde
23.
RetVal = WaitForSingleObject(proc.hProcess, INFINITE)
24.
RetVal = CloseHandle(proc.hProcess)
Mein Problem ist nun, dass das aufgerufene Programm als Arbeitsverzeichnis "Eingene Dateien" verwendet. Wie kann ich das ändern?
Ichhabe schon versucht ihm das Verzeichnis des Programms als "lpCurrentDirectory" mit zu übergeben. Das bekomme ich aber einfach nicht hin. Weder direkt als String "C:\Verzeichnis" (führt zu einem Fehler, ist auch klar, war ein Versuch), noch als StrPtr("C:\Verzeichnis") (Programm startet einfach garnicht, Keine Fehlermeldung).
Meine Suche im Internet ergab auch keine Lösung. Hat das schonmal jemand gemacht und kann mit helfen?

miniversum
Mitglied: miniversum
15.10.2008 um 10:18 Uhr
Hat sich erledigt.
Bei der Funktionsdeklaration kann man den Parameter "lpCurrentDirectory" nicht nur as Long sondern auch as String angeben. Danach ist eine Direkte Zuweisung als String möglich.
Bitte warten ..
Ähnliche Inhalte
Windows Server

Probl. b. Programminst. nach Netzlaufwerksbuchst.: invalid directory name specified or the removable media is not properly inserted

gelöst Frage von departure69Windows Server4 Kommentare

Hallo. Situation: - SBS 2008 AD-Domäne - versch. Memberserver, teils phys. teils virtuell, alle im selben Netz - Clients ...

Neue Wissensbeiträge
Firewall
Übernahme von SOPHOS durch Thoma Bravo
Information von Dilbert-MD vor 16 StundenFirewall1 Kommentar

Kam die Tage per Newsletter: Zitat: " Das Sophos Board of Directors hat gestern bekanntgegeben, dass die Private-Equity-Investment-Firma Thoma ...

Windows Netzwerk

Ereignis-ID 20226 RasClient Ursachencode 829 VPN Verbindung wird abgebrochen

Anleitung von Hardstyles vor 6 TagenWindows Netzwerk

Hallo zusammen, nach Stundenlanger Analysen und test konnten wir den Fehler Lösen. es geht um folgende Fehler Meldung in ...

Windows 10

Windows 10 Version 1903: Update KB4522015 blockt VMware Workstation

Information von kgborn vor 10 TagenWindows 10

Nur eine kurze Information für Leute, die schon Windows 10 Version 1903 in Betrieb haben und dort VMware Workstation ...

VB for Applications

Fritzbox Telefonbuch - XML-Importdatei aus Excel erstellen

Tipp von PeterleB vor 10 TagenVB for Applications1 Kommentar

Das Thema geistert schon seit Jahren durch verschiedene Foren. Habe mich jetzt mal damit etwas intensiver befasst und hoffe, ...

Heiß diskutierte Inhalte
Switche und Hubs
24 Rasperry PI vernetzen, was nimmt man da?
gelöst Frage von clkdivSwitche und Hubs25 Kommentare

Hallo, ich möchte 24 Raspberries vernetzen. Bis jetzt waren es 4 Stück, ich habe dafür einen cheap-o-cheap Edimax-Hub benutzt, ...

LAN, WAN, Wireless
Hausnetzwerk mit Routern
Frage von perhaps-labs.comLAN, WAN, Wireless22 Kommentare

Hallo an Alle, ich habe ein Riesenhaus erworben und möchte nun überall ein Netzwerk dafür installieren. Das Haus hat ...

E-Mail
Optionen des Mails-Empfangs
Frage von SchauerE-Mail19 Kommentare

Hallo an Alle. ich habe die Aufgabe bekommen zu recherchieren, welche Optionen sich anbieten Mails zu empfangen. Klingt banal, ...

Windows 10
Windows 10 start mit SSD
Frage von karla123Windows 1016 Kommentare

Liebes Forum, ich habe mir eine SSD-Platte gegönnt und auch gleich Windows 10 darauf installiert. Nun habe ich eine ...