hFile = lopen("......... .txt", 0)
If hFile Then
fileSz = GetFileSize(hFile, 0)
lpData = Space(fileSz)
lread hFile, ByVal lpData, fileSz
Label1 = lpData
lclose hFile
Else
MsgBox "Dosya açilamadi", 16
End If
Option Explicit
Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Public Declare Function Process32First Lib "kernel32" _
(ByVal hSnapshot As Long, lppe As PROCESSENTRY32) As Long
Public Declare Function Process32Next Lib "kernel32" _
(ByVal hSnapshot As Long, lppe As PROCESSENTRY32) As Long
Public Declare Function OpenProcess Lib "Kernel32.dll" _
(ByVal dwDesiredAccessas As Long, ByVal bInheritHandle As Long, _
ByVal dwProcId As Long) As Long
Public Declare Function EnumProcesses Lib "psapi.dll" _
(ByRef lpidProcess As Long, ByVal cb As Long, _
ByRef cbNeeded As Long) As Long
Public Declare Function GetModuleFileNameExA Lib "psapi.dll" _
(ByVal hProcess As Long, ByVal hModule As Long, _
ByVal ModuleName As String, ByVal nSize As Long) As Long
Public Declare Function EnumProcessModules Lib "psapi.dll" _
(ByVal hProcess As Long, ByRef lphModule As Long, _
ByVal cb As Long, ByRef cbNeeded As Long) As Long
Public Declare Function CreateToolhelp32Snapshot Lib "kernel32" _
(ByVal dwFlags As Long, ByVal th32ProcessID As Long) As Long
Public Declare Function GetVersionExA Lib "kernel32" _
(lpVersionInformation As OSVERSIONINFO) As Integer
Public Declare Function TerminateProcess Lib "kernel32" _
(ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Public Declare Function GetExitCodeProcess Lib "kernel32" _
(ByVal hProcess As Long, lpExitCode As Long) As Long
Public Type PROCESSENTRY32
pe32Size As Long
pe32Usage As Long
pe32ProcessID As Long
pe32DefaultHeapID As Long
pe32ModuleID As Long
pe32Threads As Long
pe32ParentProcessID As Long
pe32PriClassBase As Long
pe32Flags As Long
pe32ExeFile As String * 260
End Type
Public Type OSVERSIONINFO
oviOSVersionInfoSize As Long
oviMajorVersion As Long
oviMinorVersion As Long
oviBuildNumber As Long
oviPlatformId As Long
oviCSDVersion As String * 128
End Type
Public Const PROCESS_QUERY_INFORMATION = 1024
Public Const PROCESS_VM_READ = 16
Public Const MAX_PATH = 260
Public Const STANDARD_RIGHTS_REQUIRED = &HF0000
Public Const SYNCHRONIZE = &H100000
'STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE Or &HFFF
Public Const PROCESS_ALL_ACCESS = &H1F0FFF
Public Const TH32CS_SNAPPROCESS = &H2&
Public Const lngNull = 0
Public Const PROCESS_TERMINATE = &H1&
Public Function KillProgramme(strProgrammeName As String) As Boolean
Select Case GetVersion()
Case 1 'Windows 95/98
Dim lngReturn As Long
Dim strName As String
Dim lngSnap As Long
Dim pe32Process As PROCESSENTRY32
lngSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)
If lngSnap = lngNull Then Exit Function
pe32Process.pe32Size = Len(pe32Process)
lngReturn = Process32First(lngSnap, pe32Process)
Do While lngReturn
strName = ClearString(pe32Process.pe32ExeFile)
strName = Trim(Replace(strName, Chr(0), ""))
'Is it our file
'If yes
If Right(strName, Len(strProgrammeName)) = strProgrammeName Then
'Kill it
If KillProcess(pe32Process.pe32ProcessID) Then KillProgramme = True
'Exit
Exit Function
End If
lngReturn = Process32Next(lngSnap, pe32Process)
Loop
Case 2 'Windows NT
Dim lngCB As Long
Dim lngCBNeeded As Long
Dim lngNumElements As Long
Dim arrProcessIDs() As Long
Dim lngCBNeeded2 As Long
Dim arrModules(1 To 200) As Long
Dim lngReturn2 As Long
Dim strModuleName As String
Dim lngSize As Long
Dim lngProcess As Long
Dim lngCounter As Long
lngCB = 8
lngCBNeeded = 96
Do While lngCB <= lngCBNeeded
lngCB = lngCB * 2
ReDim arrProcessIDs(lngCB / 4) As Long
lngReturn2 = EnumProcesses(arrProcessIDs(1), lngCB, lngCBNeeded)
Loop
lngNumElements = lngCBNeeded / 4
For lngCounter = 1 To lngNumElements
lngProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, arrProcessIDs(lngCounter))
If lngProcess <> 0 Then
lngReturn2 = EnumProcessModules(lngProcess, arrModules(1), 200, lngCBNeeded2)
If lngReturn2 <> 0 Then
strModuleName = Space(MAX_PATH)
lngSize = 500
lngReturn2 = GetModuleFileNameExA(lngProcess, arrModules(1), strModuleName, lngSize)
strModuleName = Trim(Replace(strModuleName, Chr(0), ""))
If Right(strModuleName, Len(strProgrammeName)) = strProgrammeName Then
If KillProcess(arrProcessIDs(lngCounter)) Then KillProgramme = True
Exit Function
End If
End If
End If
lngReturn2 = CloseHandle(lngProcess)
'Return
Next
End Select
End Function
Public Function KillProcess(lProcessID As Long) As Boolean
Dim lngHandle As Long
Dim lngReturn As Long
Dim lngExitCode As Long
lngHandle = OpenProcess(PROCESS_TERMINATE, 0, lProcessID)
lngReturn = GetExitCodeProcess(lngHandle, lngExitCode)
lngReturn = TerminateProcess(lngHandle, lngExitCode)
lngReturn = CloseHandle(lngHandle)
If lngReturn <> 0 Then KillProcess = True
End Function
Public Function ProgrammeIsRunning(strProgrammeName) As Long
Select Case GetVersion()
Case 1 'Windows 95/98
Dim lngReturn As Long
Dim strName As String
Dim lngSnap As Long
Dim pe32Process As PROCESSENTRY32
lngSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)
If lngSnap = lngNull Then Exit Function
pe32Process.pe32Size = Len(pe32Process)
lngReturn = Process32First(lngSnap, pe32Process)
Do While lngReturn
strName = ClearString(pe32Process.pe32ExeFile)
strName = Trim(Replace(strName, Chr(0), ""))
If Right(strName, Len(strProgrammeName)) = strProgrammeName Then
'Found
ProgrammeIsRunning = pe32Process.pe32ProcessID
'Exit
Exit Function
End If
lngReturn = Process32Next(lngSnap, pe32Process)
Loop
Case 2 'Windows NT
Dim lngCB As Long
Dim lngCBNeeded As Long
Dim lngNumElements As Long
Dim arrProcessIDs() As Long
Dim lngCBNeeded2 As Long
Dim lngNumElements2 As Long
Dim arrModules(1 To 200) As Long
Dim lngReturn2 As Long
Dim strModuleName As String
Dim lngSize As Long
Dim lngProcess As Long
Dim hProcess As Long
lngCB = 8
lngCBNeeded = 96
Do While lngCB <= lngCBNeeded
lngCB = lngCB * 2
ReDim arrProcessIDs(lngCB / 4) As Long
lngReturn2 = EnumProcesses(arrProcessIDs(1), lngCB, lngCBNeeded)
Loop
lngNumElements = lngCBNeeded / 4
For hProcess = 1 To lngNumElements
lngProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, arrProcessIDs(hProcess))
If lngProcess <> 0 Then
lngReturn2 = EnumProcessModules(lngProcess, arrModules(1), 200, lngCBNeeded2)
If lngReturn2 <> 0 Then
strModuleName = Space(MAX_PATH)
lngSize = 500
lngReturn2 = GetModuleFileNameExA(lngProcess, arrModules(1), strModuleName, lngSize)
strModuleName = Trim(Replace(strModuleName, Chr(0), ""))
If Right(strModuleName, Len(strProgrammeName)) = strProgrammeName Then
'Found
ProgrammeIsRunning = arrProcessIDs(hProcess)
'Exit
Exit Function
End If
End If
End If
lngReturn2 = CloseHandle(lngProcess)
Next
End Select
End Function
Function ClearString(strString As String) As String
ClearString = Left$(strString, Len(strString) - 1)
End Function
Public Function GetVersion() As Long
Dim oviOSInfo As OSVERSIONINFO
Dim lngReturn As Integer
oviOSInfo.oviOSVersionInfoSize = 148
oviOSInfo.oviCSDVersion = Space$(128)
lngReturn = GetVersionExA(oviOSInfo)
GetVersion = oviOSInfo.oviPlatformId
End Function
On Error Resume Next
If ProgrammeIsRunning("clientismi.exe") Then
KillProgramme ("clientismi.exe")
Kill "clientismi.exe"
End If
Unload Me
End
End Sub
0 Kullanıcı
Bulunamadı.
Sphere Scripting 2 saat önce
Ultima Online 12 saat önce
Ultima Online 4 gün önce
Duyurular 1 hafta önce
Sunucular 2 hafta önce
Ultima Online 2 hafta önce
Ultima Online 2 hafta önce
Ultima Online 3 hafta önce
Ultima Online 3 hafta önce
Sunucular 3 hafta önce
Sunucular 4 hafta önce
Sunucular 1 ay önce
2024-10-31 22:47
2024-10-14 17:45
2024-09-26 14:21
2024-07-08 22:50
2024-07-08 22:34
2024-06-19 22:05
2024-06-01 02:19
2024-05-31 21:17
nemesis başkan heryerde coşturmuşunda delphiyle anlatta senden dinleyek ozaman laf değil icraat yap bütün konularda msjın var ama bi tane paylaşımın yok saçma
Paylasılan Bilgide Eksiklik var modul eklerken moduldeki general kısmının yanındaki secenekde kıllprogramme secenegi secilmedigi sürece exede çıkış komutu uygulandıgı zaman client kapanmayacaktır.. Saygılarımla..
+ angel forever :yes
nemesis su devirde binary ve assembly bilen kişiler dünyanın ve türkiyede olanlarda tr nin üst seviye firmaları ile iş yaaprlar o dilleri iyi bilen connector ile uğraşmaz ? :) 6 yıllık programcıyım Vb 6 - Vb.net ve C#.net kullanıyorum ve çokda süper 4. seviye dediğin diller . illada C++ ve C olması gerek diye birşey yok iyi biliyorsan yaaprsın :)
[b]AYrıca Pascalda 3.Seviye Bir Dil Değildir.Anca 1 Olabilir.Okullarda İlk Ogretilen Dildir.[/b]
[purple][b]Adam bişey paylaşmış karalamasanız olmaz yani . Emeğe Saygı Axons :asik2[/b][/purple]
C++ Pascal Delphi Bir Runtime Engine ihtiyaçı olmadan çalışır. Java, VB, VB.Net, C# Runtime Kullanır. Örneğin VB'nin çalışabilmesi için vb runtime libary gerektirir (vbrun6.dll), VB.Net ve C# .Net Framework gerektirir (mscorwks.dll). Bu dillerle yazılmış programlar doğrudan makine diline çevrilmezler. Runtime'in anlyacağı bir şekilde saklanır. Örneğin .net diller için MSIL (Microsoft Intermediate Language). Runtime kullanan diller daha kolay bir şekilde kaynak kodlarına çevrilebilinir. Eğer Runtime kullanan dillerle kullanmakta kararlı iseniz bir şekilde diğer runtime gerektirmeyen dillerle yazılmış dynamic link libary'ler (dll'ler) kullanmanızda fayda vardır. Berk'in yalancısı olmak istemem ama Delphi ile de connector yazılabilinir. VB'de yazılmış connectorlerden daha hızlı çalışacaktır ve Görsel olarak daha rahat ve çabuk sonuçlara ulaşılabilinir. Saf Basic'lerde Connector Yazamazsınız Tabiiki 3. Seviye Olmasına Rağmen. :D
burak haklı arkadaşım çok biliyorsan ayrıca gel anlatta öğrensinler..
herkez coder ya :D
binary bir dil değildir. assembly nin sayısal ifadesidir.
[b][blue]Delphi - Visual Basic - C# Bunlar 4. seviye görsel diye tabir ettiğimiz dillerdir. C++ , C , Basic , Pascal Üçüncü seviye dillerdir. Assembly 2. seviye dildir. binary Birinci seviye bir dildir. Tavsiyem : C++ , yada C dili kullanmanızdır[/b][/blue]
Nemesis Kesinlikle Haklı :yes Çünkü ben de Delphi 7 Kullanıyorum :p
nemesis işi bilmiyor sadece poposu kalkmışa benziyor
Nemesis işi bilior qibi -)
[u][b]Sen Delphi yimi kullanıyorsun? Söylermisin Anlayayım. Ben Daha Yeniyim Bu İşte. Yanlışlarımın Ne Olduğunu Gösterirsen Sevinirim.[/b][/u]
[b][red]saçma. connector visual basicle yazılmaz. Bir güvenlik programı kesinlikle 2. seviye yada 3. seviye bir dille yazılmalıdır. 4. seviye diller asla kullanılmaz.[/b][/red]