نیشان دادنی فایلهای پاک شوده

ali guard

Member
سلام دوستا ن ان نمونة من ابلود كردم با اجراى ئان فايلهاى زكر نام شود در usb removableباك ميكنة ميخواهم فايلها كة بيدا ميشة و باك ميشة در ليست باك و هم در باراگراف نيشون بدة

مسلن فايلى comand.ini در درايو G باك شود در ليست باكس و بارا گراف بنويسد

1-G:\ comand .ini باك شود
خيلى ممنونم نمونة ببينن و كامل كنن
 

پیوست ها

  • usb file remover.rar
    361.2 کیلوبایت · بازدیدها: 85
آخرین ویرایش:

evil_gates

اين نيز بگذرد ...
بعد از اینکه از دستور حذف فایل رو صادر کردید. تو خط بعد یک متغیر رشته ای ایجاد کنید. مثل ' res$=' this file has been deleted بعد با دستور LoadText این متغیر رو تو پاراگراف یا با دستور ListBoxAddItem این متغیر رو در لیست باکس نمایش بدید.
 

ali guard

Member
بعد از اینکه از دستور حذف فایل رو صادر کردید. تو خط بعد یک متغیر رشته ای ایجاد کنید. مثل ' res$=' this file has been deleted بعد با دستور loadtext این متغیر رو تو پاراگراف یا با دستور listboxadditem این متغیر رو در لیست باکس نمایش بدید.

نة نميشة دوست عزيز من از دستور for ايستفاد كردم اطر فايل بيدا نشود و ديليت نشود نبايت در ليست باكس نيشون بدة
من جند فايل در يك حلقة سرج كردم ميخواهم اطر هر كدم از انها بيدا شود و هم حزف شود در ليست با كس و باراكراف نيشون بدة لطفا نمونة ببينيد كة ابلود كردم خيلى ممنون
 

evil_gates

اين نيز بگذرد ...
نة نميشة دوست عزيز من از دستور for ايستفاد كردم اطر فايل بيدا نشود و ديليت نشود نبايت در ليست باكس نيشون بدة
من جند فايل در يك حلقة سرج كردم ميخواهم اطر هر كدم از انها بيدا شود و هم حزف شود در ليست با كس و باراكراف نيشون بدة لطفا نمونة ببينيد كة ابلود كردم خيلى ممنون

دوست عزیز
اولا استفاده از حلقه برای تکرار یکسری عملیات هست نه بررسی شرط. دوما شما وقتی از یک حلقه استفاده میکنید یکسری دستورات از 1 تا n مرتبه تکرار خواهند شد به شرط اینکه یکجا برای خروج از حلقه شرطی رو تعیین کرده باشید.

من الان دسترسی ندارم که بخوام نمونه شما رو ببینم. اما طبق فرمایش خودتون حلقه شما باید برای اینکه خاتمه پیدا کنه شرطی داشته باشه که میگه اگه فایل پیدا شد.

مثلا
کد:
For i=1 to n

   search my file 

   If (file found) Then

	delete file with my plugin

	result$='this file has been deleted'
	LoadText ("paragraph" , "result$")
        Return()

   End

Next i
بعد اینکه فایل پیدا شد چه اتفاقی میفته؟

خب قاعدتا باید با پلاگین مورد نظرتون دستور حذف فایل رو صادر کنید.

بنابراین بعد از این خط میتونید یک متغیر رشته با عبارتی که گفتم یا هر چیز دیگه ای رو بعنوان گزارش حذف صادر کنید که با دستور LoadText این گزارش تو پاراگراف شما نمایش داده میشه.

امیدوارم تونسته باشم منظورم رو برسونم.

موفق باشید
 

ali guard

Member
دوست عزیز
اولا استفاده از حلقه برای تکرار یکسری عملیات هست نه بررسی شرط. دوما شما وقتی از یک حلقه استفاده میکنید یکسری دستورات از 1 تا n مرتبه تکرار خواهند شد به شرط اینکه یکجا برای خروج از حلقه شرطی رو تعیین کرده باشید.

من الان دسترسی ندارم که بخوام نمونه شما رو ببینم. اما طبق فرمایش خودتون حلقه شما باید برای اینکه خاتمه پیدا کنه شرطی داشته باشه که میگه اگه فایل پیدا شد.

مثلا
کد:
for i=1 to n
 
   search my file 
 
   if (file found) then
 
    delete file with my plugin
 
    result$='this file has been deleted'
    loadtext ("paragraph" , "result$")
        return()
 
   end
 
next i
بعد اینکه فایل پیدا شد چه اتفاقی میفته؟

خب قاعدتا باید با پلاگین مورد نظرتون دستور حذف فایل رو صادر کنید.

بنابراین بعد از این خط میتونید یک متغیر رشته با عبارتی که گفتم یا هر چیز دیگه ای رو بعنوان گزارش حذف صادر کنید که با دستور loadtext این گزارش تو پاراگراف شما نمایش داده میشه.

امیدوارم تونسته باشم منظورم رو برسونم.

موفق باشید

سلام دوست من اطر فرست كرديد نمونرا ببينيد
من از اين كد استفادة كردم
***********************
pluginrun("getusbid","method1")

pluginget("getusbid","ids$")
usb_drive$=strcopy(ids$,1,1)

**usb_drive$=usb_drive$+':\\'

usb_drive$[1]=usb_drive$+':\comand.ini'

usb_drive$[2]=usb_drive$+':\ali.exe'

usb_drive$[3]=usb_drive$+':\sys.inf'

for i=1to3

pluginset("miscy","usb_drive$")
pluginrun("miscy","deletefilex")
********

next i

ميخواهم اطر هر كدوم از فايلها بيدا شود و يا حزف شد در ليست باك و باركراف نيشون بدة .اكر بيدا نشود يك مساج بوكس نيشون بكة كة فايل بيدانشود. شايد فايلها بيشتر كنم يانى با يد اكر فايلها بيدا شود و حزف شود نيشون بدة ممونم
 
آخرین ویرایش:

evil_gates

اين نيز بگذرد ...
سلام دوست من اطر فرست كرديد نمونرا ببينيد
من از اين كد استفادة كردم
***********************
ميخواهم اطر هر كدوم از فايلها بيدا شود و يا حزف شد در ليست باك و باركراف نيشون بدة .اكر بيدا نشود يك مساج بوكس نيشون بكة كة فايل بيدانشود. شايد فايلها بيشتر كنم يانى با يد اكر فايلها بيدا شود و حزف شود نيشون بدة ممونم

دوست عزيز
متاسفانه چند روزي رو جايي هستم كه جز يك اينترنت كم سرعت و وحشتناك دسترسي ديگه اي ندارم.

تا جايي كه يادم مياد تو پلاگين miscY بعد از صدور دستور حذف فايل با PluginGet ميتونيد يك مقدار بازگشتي حاصل از اجراي اين فرمان رو داشته باشيد و اون مقدار رو با شرط بررسي كنيد كه در صورت صحت شرط يعني فايل پاك شده و در صورتي كه شرط غيرصحيح بود عمل حذف فايل انجام نشده.

اما اينكه ببينيد آيا اصلا چنين فايلي هست كه پلاگين بخواد حذفش كنه يا نه بايد قبل از فرمان delete اول با FileExist چك كنيد كه آيا فايل وجود داره يا نه.

در صورت وجود فايل دستور مربوطه رو صادر و بعد هم گزارش حذف رو بگيريد. وگرنه يك پيغام به message box بفرستيد.

من حلقه شما رو اينطوري اصلاح ميكنم:
کد:
For i=1 To 3

   FileExist("usb_drive$[i]","x")

   If (x=1) Then 
 
      pluginset("miscy","usb_drive$[i]")
      pluginrun("miscy","deletefilex")
      pluginGet("miscy","get")

      If (get=1) Then
         Message("This file has been deleted","")
      Else
         Message(" delete fiald","")
      End

   Else
      Message("This file not found","")
   End

Next i
 
آخرین ویرایش:

ali guard

Member
دست من اين كدجواب نميدة يانى فال هنوز باك نميشة ولى قبلى هاش باك ميكرد لطفا يك دوست همكار كند ميخواهم هايلهاى بك شودة يا بيداشودة در ليست باك و بارا كراف نيشون بدة ممنون
 

m javad

کاربر متخصص
راهنمایی

سلام:rose:
براي انجام اين کار اصلا نيازي به اين همه دردسر نيست.اصلا نياز به استفاده از اين پلاگينا نيست که اين همه حجمش زياده ( tray.dll-124 KB و MiscY.dll - 236 KB و GetUSBID.dll - 12 KB ) که اصلا نميدونم tray.dll قراره چکار بکنه و تو اين نمونه جز اينکه حجم فايل رو برا دانلود زياد کرده چيکار ميکنه..!!!!
برا انجام کارتون بهتره کاملا اصولي پيش بريد تا بعدا دچار مشکل نشيد ( با توجه به پيغامي که برام فرستاده بوديد ميدونم چه کار ميخواهيد انجام بديد ، به همين خاطر اينو ميگم) پس بهتره تمامي شرايط رو بررسي کنيد.
نظرم اينه که به جاي اين پلاگينا از پاگين MFilesAndFolders با حجم 72 کيلو بايت استفاده کنيد که همه ي کاراي فوق رو براتون انجام بده.

من يه نمونه براتون گذاشتم.
اميدوارم به دردتون بخوره.
 

پیوست ها

  • usb file remover1.zip
    68.6 کیلوبایت · بازدیدها: 24

ali guard

Member
خيلى ممنون از مسالتون دستت تون درد نكنت استفادة از بلاطينى تراى براى اينكار ايستفادة كردم وقتى كابر يك يو اس بى وصل كردى برنامة جيكش كند
بس دوو سوال
براى اين نمونةى شوما ميشة احجم فايل مشخس كر د باد از ان باكش كند
مسلن اطر فايل ali.exe حجمش 17754 byte نبود باكشون نكند ولى درليست باكس نيشون بدة

2 ميشة يك جك باكس اظافة بشة اكر جيك باكس فعال بود درتمام دايركتورى هاى درايو سرج كند دومبالى فايلها
اكر فرست كرديد ميسال بزنى خيلى ممنونم ممنونم استاد مابشى جون تو اين كارمن الان دمبالش هستم شوما بيشينة داريد
 
آخرین ویرایش:

ali guard

Member
سلام يك از دوستا ن لتف كند ان مسال اقا جواد تغير بد تا تمام دايركتوريها جيك كند اين ميسال تنها درايوها جك ميكنة ميخواهم sub directore ها هم جيك كند ممنون اين مشكيل حل كنن
 

evil_gates

اين نيز بگذرد ...
سلام يك از دوستا ن لتف كند ان مسال اقا جواد تغير بد تا تمام دايركتوريها جيك كند اين ميسال تنها درايوها جك ميكنة ميخواهم sub directore ها هم جيك كند ممنون اين مشكيل حل كنن

دوست عزیز

فکر میکنم مشکل اصلی شما اینه که نمیتونید تحلیل صحیحی از مسئله داشته باشید و به راهنمایی دوستان هم توجه نمیکنید.

تا جایی که بنده از توضیحات شما تو این مبحث و مباحث قبلی که مطرح کردید متوجه شدم. به نظر میرسه همونطور که جناب nevercom هم قبلا اشاره کردن شما قصد دارید نوعی آنتی ویروس بسازید که فایلهای خاصی رو روی درایوهای usb شناسایی و لیست اونها رو نمایش بده و با انتخاب دستی توسط کاربر اون فایلها حذف بشه.

پیشنهاد میکنم اول مسئله رو تفکیک کنید به بخشهای کوچک تر و جزء به جزء پیش برید تا در نهایت برنامتون رو تکمیل کنید.

به مباحثی که تا به حال ایجاد کردید و دوستان راهنماییتون کردن رجوع کنید.

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

تو یکی از پستهایی که زدید این پاسخ وجود داره که چجوری نام تمام درایوها رو با نوعشون توسط پلاگین MicrobeFile and Folder بدست بیارید.

بخش دوم: چجوری درایوهای usb رو شناسایی و تفکیک کنید.

تو یکی دیگه از پاسخ ها بنده راهنماییتون کردم که چجوری با استفاده از یک شرط نام درایو usb مورد نظر رو بدست بیارید.

بخش سوم: فایل مورد نظر رو تو اون درایو جستجو کنید

تو یکی دیگه از پاسخها جناب nevercom با یک مثال توضیح دادن که چجوری دنبال فایل مورد نظر در مسیر تعیین شده بگردید.

بخش چهارم: نتیجه جستجو رو تو ListBox نمایش بدید.

باز تو همون مثال جناب nevercom این امکان وجود داره.

بخش پنجم: فایلی که از ListBox انتخاب میشه حذف بشه.

بنده تو یکی دیگه از پستها راهنماییتون کردم که چجوری فایل انتخاب شده رو حذف کنید.

بخش آخر: گزارش عملیات حذف رو بده.

باز هم تو یکی دیگه از پستها راهنمایی شدید که چجوری با استفاده از یک متغیر رشته مقادیر بازگشتی از فرامینی که به پلاگین صادر میکنید رو دریافت کنید و نمایش بدید.

دوست من
توصیه میکنم به راهنمایی ها با دقت توجه کنید و فقط دنبال حل اون چیزی که ذهن شما رو فعلا مشغول کرده نباشید. اینطوری خیلی دیر به نتیجه میرسید.

بهتر نیست به جای اینکه دوستان بهتون یک ماهی بدن، ماهیگیری یاد بگیرید؟

اگه مرجع آموزشی کاملی که جناب silvercover ارائه کردن در کنار این راهنمایی هایی که تو مباحث مختلف مطرح شده رو با دقت مطالعه کنید، میتونید برنامتون رو بسازید.

موفق باشید
 

ali guard

Member
دوست عزیز

فکر میکنم مشکل اصلی شما اینه که نمیتونید تحلیل صحیحی از مسئله داشته باشید و به راهنمایی دوستان هم توجه نمیکنید.

تا جایی که بنده از توضیحات شما تو این مبحث و مباحث قبلی که مطرح کردید متوجه شدم. به نظر میرسه همونطور که جناب nevercom هم قبلا اشاره کردن شما قصد دارید نوعی آنتی ویروس بسازید که فایلهای خاصی رو روی درایوهای usb شناسایی و لیست اونها رو نمایش بده و با انتخاب دستی توسط کاربر اون فایلها حذف بشه.

پیشنهاد میکنم اول مسئله رو تفکیک کنید به بخشهای کوچک تر و جزء به جزء پیش برید تا در نهایت برنامتون رو تکمیل کنید.

به مباحثی که تا به حال ایجاد کردید و دوستان راهنماییتون کردن رجوع کنید.

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

تو یکی از پستهایی که زدید این پاسخ وجود داره که چجوری نام تمام درایوها رو با نوعشون توسط پلاگین MicrobeFile and Folder بدست بیارید.

بخش دوم: چجوری درایوهای usb رو شناسایی و تفکیک کنید.

تو یکی دیگه از پاسخ ها بنده راهنماییتون کردم که چجوری با استفاده از یک شرط نام درایو usb مورد نظر رو بدست بیارید.

بخش سوم: فایل مورد نظر رو تو اون درایو جستجو کنید

تو یکی دیگه از پاسخها جناب nevercom با یک مثال توضیح دادن که چجوری دنبال فایل مورد نظر در مسیر تعیین شده بگردید.

بخش چهارم: نتیجه جستجو رو تو ListBox نمایش بدید.

باز تو همون مثال جناب nevercom این امکان وجود داره.

بخش پنجم: فایلی که از ListBox انتخاب میشه حذف بشه.

بنده تو یکی دیگه از پستها راهنماییتون کردم که چجوری فایل انتخاب شده رو حذف کنید.

بخش آخر: گزارش عملیات حذف رو بده.

باز هم تو یکی دیگه از پستها راهنمایی شدید که چجوری با استفاده از یک متغیر رشته مقادیر بازگشتی از فرامینی که به پلاگین صادر میکنید رو دریافت کنید و نمایش بدید.

دوست من
توصیه میکنم به راهنمایی ها با دقت توجه کنید و فقط دنبال حل اون چیزی که ذهن شما رو فعلا مشغول کرده نباشید. اینطوری خیلی دیر به نتیجه میرسید.

بهتر نیست به جای اینکه دوستان بهتون یک ماهی بدن، ماهیگیری یاد بگیرید؟

اگه مرجع آموزشی کاملی که جناب silvercover ارائه کردن در کنار این راهنمایی هایی که تو مباحث مختلف مطرح شده رو با دقت مطالعه کنید، میتونید برنامتون رو بسازید.

موفق باشید
حر ف شوما دروست هست تمامى سوالات من شود ان كة جور تمامى دايركتوريها سرج كنم
البتة تمامى تايبك هاى بخش ام ام بى ديدم توش ميسالى نيست يا من نتونستم بيدا كنم
__تنها منوند اظافة كردنى sub directory يانى سرج توى تمامى فلدر ها


PluginRun
("MFilesAndFolders","Get_Number_Of_Drives")

PluginGet
("MFilesAndFolders","NumDr$")
Number=
VAL(NumDr$)

For
z=1 To Number
infviraddress$=
''

set$=
CHAR(z)
PluginSet("MFilesAndFolders","set$")
PluginRun("MFilesAndFolders","Get_Drive_Letter")
PluginGet("MFilesAndFolders","get1$")
PluginSet("MFilesAndFolders","get1$")
PluginRun("MFilesAndFolders","Get_Drive_Type")
PluginGet("MFilesAndFolders","get2$")
If (get2$='Removable'|get2$='Fixed'&get1$<>'A') Then

For h=1 To 3

**************************

If (h=1) Then

fil$=get1$+
':'+E$+'comand.ini'

set$=fil$+
'|byte'

PluginSet("MFilesAndFolders","set$")
PluginRun("MFilesAndFolders","Get_File_Size")
PluginGet("MFilesAndFolders","get$")
If (get$='6262q') Then

RunScript("addtolist")
End

End

**************************

If (h=2) Then

fil$=get1$+
':'+E$+'ali.exe'

set$=fil$+
'|byte'

PluginSet("MFilesAndFolders","set$")
PluginRun("MFilesAndFolders","Get_File_Size")
PluginGet("MFilesAndFolders","get$")
If (get$='1150461') Then

RunScript("addtolist")
End

End

***************************

If (h=3) Then

fil$=get1$+
':'+E$+'sys.inf'

set$=fil$+
'|byte'

PluginSet("MFilesAndFolders","set$")
PluginRun("MFilesAndFolders","Get_File_Size")
PluginGet("MFilesAndFolders","get$")
If (get$='108944') Then

RunScript("addtolist")
End

End

************************

Next h
End
Next
z

If
(found=0) Then

** s$='No exist file in usb drive.!!!'

** Message("Error","s$")

fi$=
'No exist file in usb drive.!!!'

DisplayValue("Paragraph","fi$")

End

**ScriptTimer("S1","100")

اطر يكى لظف كند ديكة نميبرسم
 

evil_gates

اين نيز بگذرد ...
... تنها منوند اظافة كردنى sub directory يانى سرج توى تمام ...

دوست عزیز مگه پلاگین Searcher که جناب nevercom معرفی کردن مشکلتون رو حل نمیکنه؟

دستور IncludeSubDirs تو این پلاگین تمام زیرشاخه ها رو هم در بر میگیره . راهنمای دستورات این پلاگین رو مطالعه بفرمایید.
 

ali guard

Member
دوست عزیز مگه پلاگین Searcher که جناب nevercom معرفی کردن مشکلتون رو حل نمیکنه؟

دستور IncludeSubDirs تو این پلاگین تمام زیرشاخه ها رو هم در بر میگیره . راهنمای دستورات این پلاگین رو مطالعه بفرمایید.
دوست عزيز اين plugin اين مشكيل دارد تا تمامى فلدر ها جيك ميكنة برنامة مشغول هست بعزى بارها تا سرج تمام ميشة دكمة هاى برنامة غيربصرى ميشة

با بلاك اين MFilesAndFolders كار انجام ميشة راهى هست براى اين plugin زيرشاخةها هم سرج كند
اكر نيست plugin ديكة با جاى ان هست بغير shercher ??
 

evil_gates

اين نيز بگذرد ...
بله تو خود پلاگین هم توضیح داده جستجو زیرشاخه ها باعث کاهش سرعت میشه طوری که ممکنه برای چند لحظه برنامه شما هنگ کنه. به طور کلی عملیات جستجو در یک مسیر و زیرشاخه هاش کار نسبتا طولانی هست.

برای جلوگیری از این وضعیت پیشنهاد میکنم یک Loading بسازید و با ScriptTimer همزمان با شروع عملیات جستجو Loading رو هم فعال کنید.

اما اینکه با پلاگین MFilesAndFolder زیر شاخه ها رو جستجو کنید. تا جایی که بنده اطلاع دارم خیر این پلاگین چنین امکانی نداره.
 

ali guard

Member
بله تو خود پلاگین هم توضیح داده جستجو زیرشاخه ها باعث کاهش سرعت میشه برای جلوگیری از این وضعیت پیشنهاد میکنم یک loading بسازید و با scripttimer همزمان با شروع عملیات جستجو loading رو هم فعال کنید.

امکانی نداره.
اطر بتوانيد يك نمونة بسازيد ممنونم مسلن تا سرج تمام ميشة ي لودينك بربشة راستى نميتوانم اينكار بكنم خيلى ممنون
 

evil_gates

اين نيز بگذرد ...
دوست عزیز
برای اینکه نوار پیشرفتی بسازید که از صفر تا صد در حال تکمیل شدن باشه نیاز به پارامترهای مختلفی داره که ساختنش با mmb به طور مستقیم امکان پذیر نیست.

پیشنهاد میکنم از یک شبه Loading استفاده کنید. مثل نمونه فلشی که من برای این دوستمون تو این پست ساختم.

http://forum.majidonline.com/showthread.php?t=137181
 

ali guard

Member
يانى نميشة move object يا move to ايستفادة كرد مسلن تا سرج تمام ميشة اين بشة سد درسد اطر نمشة كة هيج

بس اطر يك درمورد سرج با يك plugin ديكة سراغ دارد لطف كند يك نمونة بزرد تا زير فلدر ها سرج كند
 

evil_gates

اين نيز بگذرد ...
دوست عزیز

قبلا هم گفتم برای ساختن یک نوار پیشرفت از صفر تا صد نیاز به پارامترهای مختلفی هست. مثل داشتن سرعت سیستم مقصد، حجم عملیاتی که باید پردازش بشه، محاسبه مدت زمان انجام عملیات بر اساس سرعت سیستم مقصد و ... که لازمه با زبانهای قدرتمندتری نوشته بشه

استفاده از فرمان MoveTo یا MoveObject خیلی سادس و فقط میتونه شی رو از یک نقطه به یک نقطه دیگه منتقل کنه اونم تو بازه زمانی که تعریف میشه.

ضمن اینکه استفاده از فرمان MoveTo از سرعت پردازش سیستم کم میکنه و یا عملیات جستجو شما متوقف میشه تا زمانی که دستور MoveTo به اتمام برسه یا حرکت شی متوقف میشه تا زمانی که عملیات جستجو تموم شه.

پس نمیتونید با این فرمان نوار پیشرفت بسازید.

فعلا راه حل دیگه ای به ذهنم نمیرسه جز اون پیشنهادی که تو پست قبلی دادم.
 

جدیدترین ارسال ها

بالا