Anasayfa > Kodlar > Visual Basic 6 ile Shell’de çalışan bir programı beklemek

Visual Basic 6 ile Shell’de çalışan bir programı beklemek


Shell’de çalışan bir programı beklemek

Shellde çalışan bir programı beklemek ve kendi uygulamanızı bekletmek için aşağıdaki kodu kullanabilirsiniz.

Böylece kendi programlarınızdan çağıracağınız diğer programları bekleyebilirsiniz.
Tüm kodu fare ile seçip copy yapın ve MS Visual Basic’i açıp General Declerations kısmından itibaren paste edin


Private Type STARTUPINFO

cb As Long

lpReserved As String

lpDesktop As String

lpTitle As String

dwX As Long

dwY As Long

dwXSize As Long

dwYSize As Long

dwXCountChars As Long

dwYCountChars As Long

dwFillAttribute As Long

dwFlags As Long

wShowWindow As Integer

cbReserved2 As Integer

lpReserved2 As Long

hStdInput As Long

hStdOutput As Long

hStdError As Long

End Type

Private Type PROCESS_INFORMATION

hProcess As Long

hThread As Long

dwProcessID As Long

dwThreadID As Long

End Type

Private Declare Function WaitForSingleObject Lib “kernel32” (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long

Private Declare Function CreateProcessA Lib “kernel32” (ByVal lpApplicationName As Long, ByVal lpCommandLine As String, ByVal lpProcessAttributes As Long, ByVal lpThreadAttributes As Long, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, ByVal lpEnvironment As Long, ByVal lpCurrentDirectory As Long, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long

Private Declare Function CloseHandle Lib “kernel32” (ByVal hObject As Long) As Long

Private Const NORMAL_PRIORITY_CLASS = &H20&

Private Const INFINITE = -1&

Public Sub ExecCmd(cmdline$)

Dim proc As PROCESS_INFORMATION

Dim start As STARTUPINFO

start.cb = Len(start)

‘ Shell the Application:

ret& = CreateProcessA(0&, cmdline$, 0&, 0&, 1&, NORMAL_PRIORITY_CLASS, 0&, 0&, start, proc)

‘ Wait for the shelled application to finish:

ret& = WaitForSingleObject(proc.hProcess, INFINITE)

ret& = CloseHandle(proc.hProcess)

End Sub

‘—————————————————–

Private Sub Command1_Click()

Dim today

Dim MyDate

today = Now ‘ önce bugünü bir değişkende saklıyoruz.

MyDate = #7/14/1999#  ‘programın çalışacağı tarih

Date = MyDate   ‘ Change system date.

ExecCmd “notepad.exe” ‘istenen programın çalışması

MsgBox “Program sonlandırıldı.”, vbExclamation, “Terminated!” ‘program kapandıktan sonra mesaj çıkıyor.

Date = today ‘ tarih eski zamanına alınıyor.

End Sub

Command1 isimli fonksiyonu bir tuşa bağlayacaksınız.

Bu arada isterseniz zamanıda kendi istediğiniz bir tarihe çekebilirsiniz. Bunun için MyDate değişkenine istenen bir tarih yazılabilir. >:)

Gurkan YENICERI


TD Software


  1. Henüz yorum yapılmamış.
  1. No trackbacks yet.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: