1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
'-Begin-------------------------------------------------------------------
Private WinAPI Function CreateProcess Lib "kernel32.dll" _
Alias "CreateProcessA" (ByVal lpApplicationName As String, _
ByVal lpCommandLine As String, lpProcessAttributes As Long, _
lpThreadAttributes As Long, bInheritHandles As Long, _
dwCreationFlags As Long, lpEnvironment As Long, _
lpCurrentDriectory As Long, lpStartupInfo As Long, _
lpProcessInformation As Long) As Long
Private Const NORMAL_PRIORITY_CLASS As Long = &H20
Public Sub main(ByJava args() As String)
Dim myArgs() As String
myArgs = args
Dim VarPtr As New VarPtr()
VarPtr.Init()
'>Startupinfo<
Dim si As Long
si = VarPtr.CreateVar("si", "Array", 68)
VarPtr.SetArrayLong("si", 0, 68)
'>Processinformation<
Dim pi As Long
pi = VarPtr.CreateVar("pi", "Array", 16)
Dim res As Boolean
res = CreateProcess(Null, "notepad.exe", 0, 0, False, _
NORMAL_PRIORITY_CLASS, 0, 0, si, pi)
'-Here you get the PID-----------------------------------------------
Debug.Print(VarPtr.GetArrayLong("pi", 8))
Sleep 5000
VarPtr.DestroyVar("si")
VarPtr.DestroyVar("pi")
VarPtr.UnInit()
End Sub
'-End--------------------------------------------------------------------
|