|
|
| Yazar | Mesaj |
XandLo
Nereden: Turkey Ankara |
#256054
2007-10-22 21:55 GMT
Arkadaşlar dökümanlardakini uygulayarak bi connector görünümlü bişey yaptım.Çıkış butonunda sorun yokta giriş butonunu nasıl yapıcam ? Girişe tıklanıldıgında cliente girmesini nasıl sağlıycam.
2.si : nasıl kaydedicem..
|
Nixdorf
Nereden: Israel tekirdag |
#256058
2007-10-22 22:59 GMT
Kod: Shell (App.Path & "\client.exe") neyi kaydetmek istediğini anlamadım
|
XandLo
Nereden: Turkey Ankara |
#256059
2007-10-22 23:02 GMT
exe olarak kaydedemedim tıklanmıyor kaydetme sekmesine ?
|
Nixdorf
Nereden: Israel tekirdag |
#256061
2007-10-22 23:04 GMT
make project1.exe tıklanmıo diosun..
|
XandLo
Nereden: Turkey Ankara |
#256062
2007-10-22 23:11 GMT
evet :S aynen öyle
|
Nixdorf
Nereden: Israel tekirdag |
#256066
2007-10-22 23:14 GMT
projeni kaydet.. setup ı varsa visual basic i sil bidaha yükle derim.
|
XandLo
Nereden: Turkey Ankara |
#256069
2007-10-22 23:22 GMT
Setup değil Portable ?
|
Axons
Nereden: Cyprus , Girne |
#276657
2008-01-30 23:10 GMT
Kod: Shell (App.Path & "\client.exe") Denedim işlemio vb 6.0 benim version
|
Rymelhone
Nereden: Turkey Balıkesir |
#276660
2008-01-30 23:18 GMT
Kod: Shell "exeadi.exe" Usttekını kllan apppath kllanman ıse yaramaz. app path kullanmak ıcıın ılk once apppath ı blırlemen gerekli ![]() ama en kolayı Visual basic ile registry ıslemlerını ogren. Ultima Onlıne her bılgısayara kurulurken bır regedit keyı atar sısteme bu keyı okutur ve ultima onlıne klasorunun nerede oldugunu bulursun Malum herkes c:/ ye kurmuyor kımisi i: , h: vs suruculerıne kuruyor.
||Web Tasarım Yapılır| |
Axons
Nereden: Cyprus , Girne |
#276737
2008-01-31 02:06 GMT
Connector ile client in kapanmasi ne idi ? şimdiden tşkr
|
neo75
Nereden: Turkey Kayseri |
#276739
2008-01-31 02:09 GMT
Bka şimdi Ctrl + R yaptığında çıkan yerde sağ tuşla tıklayıp Add > Module diyeceksin.İçine şu kodu aynen yapıştır...
Kod: Option Explicit Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long 'Process APIs 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 'User defined types 'Process Public Type PROCESSENTRY32 pe32Size As Long pe32Usage As Long pe32ProcessID As Long ' This process pe32DefaultHeapID As Long pe32ModuleID As Long ' Associated exe pe32Threads As Long pe32ParentProcessID As Long ' This process's parent process pe32PriClassBase As Long ' Base priority of process threads pe32Flags As Long pe32ExeFile As String * 260 ' MAX_PATH End Type 'Operating system Public Type OSVERSIONINFO oviOSVersionInfoSize As Long oviMajorVersion As Long oviMinorVersion As Long oviBuildNumber As Long oviPlatformId As Long '1 = Windows 95. '2 = Windows NT oviCSDVersion As String * 128 End Type 'Constants 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& ' Used to kill a process Public Function KillProgramme(strProgrammeName As String) As Boolean '**************************************** 'Purpose : Kill programme from process list 'Input : Programme name 'Output : - 'Date : 07.05.2002 'Author : Murat Aras '**************************************** 'Get windows version Select Case GetVersion() Case 1 'Windows 95/98 Dim lngReturn As Long 'Return value Dim strName As String 'Process image name Dim lngSnap As Long 'Snapshot value (smiling :-) ) Dim pe32Process As PROCESSENTRY32 'Process value 'Process snapshot (smiling :-)) lngSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0) 'If nothing exit sub If lngSnap = lngNull Then Exit Function 'Get process size pe32Process.pe32Size = Len(pe32Process) 'Iterate through the processes lngReturn = Process32First(lngSnap, pe32Process) 'Start do-loop to find our file Do While lngReturn 'Prepear image name to match 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 'If no, continue 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 'Get the array containing the process id's for each process object 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 'Start for - next For lngCounter = 1 To lngNumElements 'Get a handle to the Process lngProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, arrProcessIDs(lngCounter)) 'Got a Process handle If lngProcess <> 0 Then 'Get an array of the module handles for the specified process lngReturn2 = EnumProcessModules(lngProcess, arrModules(1), 200, lngCBNeeded2) 'If the Module Array is retrieved, Get the ModuleFileName If lngReturn2 <> 0 Then 'Prepear module name to match strModuleName = Space(MAX_PATH) lngSize = 500 lngReturn2 = GetModuleFileNameExA(lngProcess, arrModules(1), strModuleName, lngSize) strModuleName = Trim(Replace(strModuleName, Chr(0), "")) 'Is it our file 'If yes If Right(strModuleName, Len(strProgrammeName)) = strProgrammeName Then 'Hey yeaah, kill it man If KillProcess(arrProcessIDs(lngCounter)) Then KillProgramme = True 'Operation completed , let's go Exit Function End If End If End If 'Close the handle to the process lngReturn2 = CloseHandle(lngProcess) 'Return Next End Select End Function Public Function KillProcess(lProcessID As Long) As Boolean '**************************************** 'Purpose : Kill Target Dll 'Input : Targetdll.exe process id 'Output : - 'Date : 07.05.2002 'Author : Murat Aras '**************************************** Dim lngHandle As Long 'Handle to a process Dim lngReturn As Long 'Return value for API calls Dim lngExitCode As Long 'Exit code ' First we need to create a handle to the desired process lngHandle = OpenProcess(PROCESS_TERMINATE, 0, lProcessID) ' Get the process' exit code lngReturn = GetExitCodeProcess(lngHandle, lngExitCode) ' Terminate the process! This might lead to screwy results, so be warned lngReturn = TerminateProcess(lngHandle, lngExitCode) ' Close the handle lngReturn = CloseHandle(lngHandle) ' Set function value If lngReturn <> 0 Then KillProcess = True End Function Public Function ProgrammeIsRunning(strProgrammeName) As Long '**************************************** 'Purpose : Control programme is running 'Input : Programme name 'Output : if yes ; programme process id, else = 0 'Date : 07.05.2002 'Author : Murat Aras '**************************************** 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) ' Iterate through the processes 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 'Get the array containing the process id's for each process object 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 'Get a handle to the Process lngProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, arrProcessIDs(hProcess)) 'Got a Process handle If lngProcess <> 0 Then 'Get an array of the module handles for the specified process lngReturn2 = EnumProcessModules(lngProcess, arrModules(1), 200, lngCBNeeded2) 'If the Module Array is retrieved, Get the ModuleFileName 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 'Close the handle to the process lngReturn2 = CloseHandle(lngProcess) Next End Select End Function Function ClearString(strString As String) As String '**************************************** 'Purpose : Remove null character and clear the string 'Input : String 'Output : String 'Date : 07.05.2002 'Author : Murat Aras '**************************************** ClearString = Left$(strString, Len(strString) - 1) End Function Public Function GetVersion() As Long '**************************************** 'Purpose : Get windows version 'Input : - 'Output : Windows version 'Date : 07.05.2002 'Author : Murat Aras '**************************************** Dim oviOSInfo As OSVERSIONINFO Dim lngReturn As Integer oviOSInfo.oviOSVersionInfoSize = 148 oviOSInfo.oviCSDVersion = Space$(128) lngReturn = GetVersionExA(oviOSInfo) GetVersion = oviOSInfo.oviPlatformId End Function Sonra normal formunun kodlarından "Çıkış" buttonunun kodlarına şunu ekle if ProgrammeIsRunning ("asdas.exe") ' Buraya çalıştığında işlemlerde görülen .exe adını yazacaksın. KillProgramme ("asdas.exe") ' Clientı kapattırdık. Unload me ' Formu kapattırdık. End ' Program sonlandı 1.si Portable kullanmanı tavsiye etmem boşa kasarsın boş yere ocs bulma derdiyle en güzeli 75 mb a indir internette her yerde var. 2. si App.path için herhangi bir şey belirlemene gerek yok app.path senin programının yüklü olduğu klasördür.shell "ad.exe" gibi yapamazsın çünkü bu yöntm sadece iexplore,tasmgr,calc.exe gibi temel windows işlemlerinde gerçekleşir.Onlarda c;\\Program Files gibisinden tanımlama ypaman gerekir. Ayrıca şöyle bir şey var girişe tıklayınca client açacaksa connector kapalıyken client açılmasını engellemen gerekir bunun bir çok çözüm yolu var. Örneğin clientı connectorun içine gömerek onun görünmez dosya şeklinde çıkıp açılmasını con. kapatıldığında silinmesini vs. sağlayabilirsin ama bunlar için kodları iyice öğrenip işe başla bence. Bi de kendine kurnazca yollar ara ;)
|
Axons
Nereden: Cyprus , Girne |
#276741
2008-01-31 02:12 GMT
Kodlari Bilmim İste Bİlsem Oğrenirim
|
neo75
Nereden: Turkey Kayseri |
#276743
2008-01-31 02:16 GMT
Sonradan editleyip gerekli cevabı yukarıda verdim.
|
Axons
Nereden: Cyprus , Girne |
#276750
2008-01-31 03:03 GMT
Error Veri o Kirmizi Oluo module
|
neo75
Nereden: Turkey Kayseri |
#276765
2008-01-31 09:58 GMT
Pardon ilk satırı sileceksin.Şimdi düzeltiyorum.
|
Axons
Nereden: Cyprus , Girne |
#276773
2008-01-31 10:54 GMT
Tamam İşlettim Şimdi Sorun timer de timer koycam bu bu .exe leri kapatsin connector açilinca
|
neo75
Nereden: Turkey Kayseri |
#276775
2008-01-31 11:12 GMT
Hangi exe leri kapatmasını istiyorsun ?
Imzadaki adres msn değil ayrıca.PM den at kendi MSN ini anlatayım sana.
|
Axons
Nereden: Cyprus , Girne |
#276777
2008-01-31 11:21 GMT
Attim Pm
Ornek msn ve taskmgr kapatsin geri kalani bn yaparim
|
neo75
Nereden: Turkey Kayseri |
#276778
2008-01-31 11:24 GMT
Taskmgr için :
if programmeisrunning ("taskmgr.exe") killprogramme ("taskmgr.exe") end if Msn için de if programmeisrunning ("msnmsgr.exe") killprogramme ("msnmsgr.exe") end if İkisi aynı anda olsun diyosan if programmeisrunning ("taskmgr.exe") killprogramme ("taskmgr.exe") elseif programmeisrunning ("msnmsgr.exe") killprogramme ("msnmsgr.exe") end if ps : Unutma bunların çalışması için yukarda verdiğim modülün projende olması lazım.
|
Axons
Nereden: Cyprus , Girne |
Saol Pm ye bak pm den yazişalim
|











