PDA

View Full Version : اجرای cmd‌به صورت مخفی



star61
یک شنبه 13 دی 1388, 18:10 عصر
سلام
من یه بچ فایل برا گرفتن بک آپ از اطلاعات سیستم استفاده می کنم که دستوراتش به صورت زیره:

@echo off
cls
title Creat BackUp
echo Attributes is Starting
echo ----------------------------------


attrib m:\1\*.* -s -h -r /s /d
echo Action Is Starting
echo -----------------------------------
xcopy m:\1 d:\11 /s /q /y /i
echo Action Is Compele
echo -----------------------------------
pause

وقتی برنامه رو اجرا می کنم پنجره cmd رو نوشن میده.
می خو.واستم بدونم آیا راهی وجود داره که این پنجره hidden (مخفی) بشه و نشون داده نشه یا نه؟
دستورات cmd این امکان رو نداره؟
تو وی بی چطور میشه فایل بچ رو به صورت مخفی اجرا کرد؟
ممنون.

xxxxx_xxxxx
یک شنبه 13 دی 1388, 21:13 عصر
Shell "MyFile.bat", vbHide

star61
دوشنبه 14 دی 1388, 09:49 صبح
Shell "MyFile.bat", vbHide

خیلی ممنون از جوابت.
یه سوال دیگه:
من کد زیر رو نوشتم.

Private Sub CmdStart_Click()
'for starting Batch
batpathCLR = App.Path
batStartCLR = "CLR.bat"
full_patht_batCLR = batpathCLR + "\" + batStartCLR


'--------------------------------
shelplayCLR = Shell(full_patht_batCLR, vbHide)
CmdStart.Caption = "Starting..."
CmdFinish.Enabled = True
End Sub



Private Sub CmdFinish_Click()
'for Cancel Batch
batpathCAN = App.Path
batStartCAN = "CAN.bat"
full_patht_batCAN = batpathCAN + "\" + batStartCAN
shelplayCAN = Shell(full_patht_batCAN, vbHide)
CmdStart.Caption = "Start"
CmdFinish.Enabled = False
End Sub


Private Sub CmdHide_Click()
Me.Hide
End Sub


Private Sub Form_Load()
CmdFinish.Enabled = False
End Sub


می خوام یه لیبل تو برنامه باشه. وقتی رو دکمه start کلیک کنم رو لیبل بنویسه "در حال اجرای عملیات" و وقتی فایلها کپی شدن بنویسه "عملیات با موفقیت به پایان رسید"
یا اینکه یه پروسس بار نشون بده که عملیات داره انجام میشه.
می خوام شروع و پایان عملیات مشخص باشه برام.


ممنون از راهنماییتون.

xxxxx_xxxxx
دوشنبه 14 دی 1388, 14:59 عصر
سلام،
در هر تاپیک به یک موضوع بپردازید. برای سؤالات دیگر خود تاپیک جدید ایجاد کنید (البته پس از جستجو) چون این مورد قبلاً مطرح شده.
جای این دو خط رو در برنامه تون عوض کنید:


shelplayCLR = Shell(full_patht_batCLR, vbHide)
CmdStart.Caption = "Starting..."

و همچنین این دو خط:


shelplayCAN = Shell(full_patht_batCAN, vbHide)
CmdStart.Caption = "Start"

star61
دوشنبه 14 دی 1388, 17:40 عصر
سلام،
در هر تاپیک به یک موضوع بپردازید. برای سؤالات دیگر خود تاپیک جدید ایجاد کنید (البته پس از جستجو) چون این مورد قبلاً مطرح شده.
جای این دو خط رو در برنامه تون عوض کنید:


shelplayCLR = Shell(full_patht_batCLR, vbHide)
CmdStart.Caption = "Starting..."

و همچنین این دو خط:


shelplayCAN = Shell(full_patht_batCAN, vbHide)
CmdStart.Caption = "Start"


سلام
باشه حتما.ممنون از جوابتون.
این چیزی که شما گفتید عمل نمی کنه.
برنامه از کجا می فهمه که بچ فایل اجرا شده و الان از حافظه خارج شده؟
چطور میشه فهمید که cmd کارش تموم شده و از لیست تسک منیجر خارج شده؟
فایل برنامه رو می زارم یه نگاهی بهش بنداز.
http://www.uplod.ir/download.php?file=457153
ممنون.:تشویق: