امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
بستن یه برنامه در حال پردازش
نویسنده پیام
sepahbod آفلاین
كاربر دو ستاره
**

ارسال‌ها: 79
موضوع‌ها: 34
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 0
( 22 تشکر در 20 ارسال )
ارسال: #1
بستن یه برنامه در حال پردازش
سلام بر دوستان عزیز
من یه مشکلی داشتم . من می خواستم یه برنامه درحال اجرا مثل اکسل را ببندم .
مثلا اگه برنامه اکسل را باز کنیم و کلیدهای Ctrl + Alt +Del را بزنیم و وارد سربرگ دوم Processes شویم اگه فایل EXCEL.EXE را end Processes کنیم برنامه اکسل بسته می شود . حال می خواستم بدانم که در ویژوال بیسیک 6 چگونه می توانم این فایل را end Processes کنم و در واقع برنامه اکسل باز را ببندم .
با تشکر از همکاری شما دوست عزیزم
۲۸-بهمن-۱۳۹۱, ۱۰:۲۴:۲۵
ارسال‌ها
پاسخ
sepahbod آفلاین
كاربر دو ستاره
**

ارسال‌ها: 79
موضوع‌ها: 34
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 0
( 22 تشکر در 20 ارسال )
ارسال: #2
RE: بستن یه برنامه در حال پردازش
از دوستان کسی نیست که بتونه مشکل من را حل کنه ؟
۰۱-اسفند-۱۳۹۱, ۱۰:۱۷:۴۵
ارسال‌ها
پاسخ
lord_viper غایب
مدیر کل انجمن
*****

ارسال‌ها: 3,949
موضوع‌ها: 352
تاریخ عضویت: بهمن ۱۳۸۴

تشکرها : 5193
( 9875 تشکر در 2650 ارسال )
ارسال: #3
RE: بستن یه برنامه در حال پردازش
باید از تابع TerminateProcess استفاده کنید مثال هم که الی ماشااله همه جا هست

[تصویر:  xshon.png]
از آن نماز که خود هیچ از آن نمی فهمی خدا چه فایده و بهره اکتساب کند
تفاخری نبود مر خدای عالم را که چون تو ابلهی او را خدا حساب کند
۰۱-اسفند-۱۳۹۱, ۱۰:۴۵:۳۷
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : babyy, WhiteNoise
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #4
RE: بستن یه برنامه در حال پردازش
دوست عزيز
همونطور كه مبين گفت راه حل براي شما خيلي زياده، از اون بيشتر سورس كد و تابع آماده و ... هست ،‌هم مي شه با

استفاده از توابع API اين كار رو كرد هم با استفاده از دستور كيل پروسس تو محيط داس، اما دستورات API جذابيت بيشتري داره!!

كدهاي زير رو داخل يك ماژول كپي كن :

کد:
Private Const MAX_PATH As Long = 260
Private Const TH32CS_SNAPPROCESS = &H2&
Private Const PROCESS_QUERY_INFORMATION As Long = (&H400)
Private Const PROCESS_TERMINATE As Long = (&H1)

Private Type PROCESSENTRY32
    dwSize As Long
    cntUsage As Long
    th32ProcessID As Long
    th32DefaultHeapID As Long
    th32ModuleID As Long
    cntThreads As Long
    th32ParentProcessID As Long
    pcPriClassBase As Long
    dwFlags As Long
    szExeFile As String * MAX_PATH
End Type

Private Declare Function CreateToolhelp32Snapshot Lib "kernel32.dll" (ByVal dwFlags As Long, ByVal th32ProcessID As Long) As Long
Private Declare Function CreateToolhelpSnapshot Lib "kernel32" Alias "CreateToolhelp32Snapshot" (ByVal lFlags As Long, ByVal lProcessID As Long) As Long

Private Declare Function Process32First Lib "kernel32.dll" (ByVal hSnapshot As Long, ByRef lppe As PROCESSENTRY32) As Long
Private Declare Function Process32Next Lib "kernel32.dll" (ByVal hSnapshot As Long, ByRef lppe As PROCESSENTRY32) As Long
Private Declare Function ProcessFirst Lib "kernel32" Alias "Process32First" (ByVal hSnapshot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function ProcessNext Lib "kernel32" Alias "Process32Next" (ByVal hSnapshot As Long, uProcess As PROCESSENTRY32) As Long

Private Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function TerminateProcess Lib "kernel32.dll" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long


Private Declare Function CloseHandle Lib "kernel32.dll" (ByVal hObject As Long) As Long
Private Declare Function GetExitCodeProcess Lib "kernel32.dll" (ByVal hProcess As Long, ByRef lpExitCode As Long) As Long


Sub KillProcess(ByVal sExeName As String)
Dim lSnapshot As Long, lNextProcess As Long
Dim tPE As PROCESSENTRY32

    ' Create Snapshot
    lSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0&)
    If lSnapshot <> -1 Then
        tPE.dwSize = LenB(tPE)
        ' Find first process
        lNextProcess = Process32First(lSnapshot, tPE)
        Do While lNextProcess
            ' Find specified process
            If UCase(sExeName) = UCase(Left(tPE.szExeFile, Len(sExeName))) And Len(sExeName) > 0 Then
                Dim lProcess As Long
                Dim lExitCode As Long
                                  
                ' Open Process
                lProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_TERMINATE, False, tPE.th32ProcessID)
                ' Get Exitcode
                GetExitCodeProcess lProcess, lExitCode
                ' Terminate Process
                TerminateProcess lProcess, lExitCode
                ' Close Handle
                CloseHandle (lProcess)
                Exit Do
            End If
            lNextProcess = Process32Next(lSnapshot, tPE)
        Loop
        ' Close Handle
        CloseHandle (lProcess)
    End If
End Sub
خوب حالا كافيه اسم هر پروسسي كه خواستي تو تابع بالا قرار بدي تا بسته بشه

کد:
KillProcess ("EXCEL.exe")

۰۲-اسفند-۱۳۹۱, ۰۹:۲۸:۲۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : babyy, Rain_Saeid
Ghoghnus آفلاین
مدیر بخش
*****

ارسال‌ها: 1,497
موضوع‌ها: 270
تاریخ عضویت: آذر ۱۳۸۸

تشکرها : 1652
( 3938 تشکر در 1453 ارسال )
ارسال: #5
RE: بستن یه برنامه در حال پردازش
این روش هم جواب میده!
کد:
shell"tskill taskmgr"
بجای taskmgr اسم برنامه ای که قرار هست بسته بشه بنویسید!

[تصویر:  a.jpg]

باور کنیم
همانگونه که در غیبت مقصریم در ظهور موثریم!
نیستیم؟

زیر شمشیر غمش رقص کنان باید رفت #  کان که شد کُشته ی او نیک سرانجام افتاد



 چشمک - بهینه شده برای ورژن جدید دانلود پروژه برنامه نويسي
(آخرین ویرایش در این ارسال: ۰۳-اسفند-۱۳۹۱, ۱۱:۴۷:۲۱، توسط Ghoghnus.)
۰۳-اسفند-۱۳۹۱, ۱۱:۴۲:۴۵
وب سایت ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  بستن برنامه اکسل در حال اجرا aleas 1 1,064 ۲۳-شهریور-۱۳۹۸, ۱۷:۲۴:۱۱
آخرین ارسال: Di Di
  [سوال] بستن یک پنجره در vb aban56 1 1,527 ۲۳-شهریور-۱۳۹۸, ۱۷:۱۹:۳۷
آخرین ارسال: Di Di
  پردازش تصوير gh68m 0 2,346 ۳۰-فروردین-۱۳۹۱, ۱۶:۳۷:۴۶
آخرین ارسال: gh68m
  [سوال] پردازش تصویر HamedFaa 2 3,540 ۲۲-خرداد-۱۳۹۰, ۲۲:۳۵:۲۱
آخرین ارسال: Payman62
  تبدیل عکس به متن (پردازش تصاویر) Mr.pRoGraMmer 13 19,003 ۲۸-اردیبهشت-۱۳۹۰, ۰۴:۰۵:۱۴
آخرین ارسال: HamedFaa
Cool بستن فرم Windos File Protection aliyarat 2 3,123 ۲۰-شهریور-۱۳۸۹, ۰۲:۴۷:۵۲
آخرین ارسال: Payman62
  دوربین در VB با پردازش تصویر MPC 15 8,759 ۱۸-شهریور-۱۳۸۹, ۱۶:۲۶:۳۹
آخرین ارسال: roboamol
  پردازش تصویر Ghoghnus 2 3,805 ۲۳-اردیبهشت-۱۳۸۹, ۱۲:۱۲:۴۵
آخرین ارسال: Ghoghnus
Question بستن پروسس با مسیر saeedvir 2 3,360 ۱۱-بهمن-۱۳۸۸, ۰۹:۱۷:۴۳
آخرین ارسال: mohamadpk
  بستن و اجرای مجدد برنامه Scorpion 8 5,761 ۱۸-مهر-۱۳۸۸, ۲۳:۲۸:۴۳
آخرین ارسال: Payman62

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS