PDA

View Full Version : MyComputer & ListView



دلفی زاده
شنبه 11 مرداد 1382, 00:05 صبح
با سلام خدمت دوستان عزیز

چطور می توان از داخل برنامه پنجره MyComputer (Windows Explorer ) را که توسط کاربر باز شده تشخیص داد و از طریق کد نویسی در برنامه اعمالی مثل خذف و یا تغییر نام و یا انتخاب را روی فایلهای همان پنجره انجام داد

houshmand
شنبه 11 مرداد 1382, 10:18 صبح
:lol: این برنامه بر روی کامپیوتر به دنبال پنجرهه My Computer و سپس Windows Explorer می گردد اگر انها را پیدا کرد بر اساس
WorkerA\ReBarWindow32\ComboBox
مسیر فعلی را بدست می آورد

/××××××××××××××××××××××××
برای حذف یا کپی می توان از توابع استاندارد دلفی استفاده بکنی
که پنجره My Computer به صورت اتوماتیک ریفرش(Refresh) میشود
یا می توانی تابع
ReFresh
را به آن بفرستی

/××××××××××××××××××××××××× ×××
:!: نکته : این برنامه با Win 98 نوشته شده است و به وسیله دیگر ویندوزها چک نشده است
/××××××××××××××××××××××××× ×××
:!: نکته 2: این برنامه را بکمک WinSight نوشته ام (از برنامه های همراه دلفی )
استفاده از آن ایده خوبی است برای اینگونه برتامه ها

بقیه اش را خودت کامل کن :oops:




procedure TForm1.Button1Click(Sender: TObject);
var
Hm,Hu:HWND;
p : array [0..35] of char;
begin
hm:= FindWindow ('CabinetWClass',Nil); //for My Computer Window
if hm=0 then
hm:= FindWindow ('ExploreWClass',Nil); //For Search Explorer Window

if hm>0 then
begin //WorkerA\ReBarWindow32\ComboBox
Hu := FindWindowEx (Hm,0,'WorkerA',nil);
Hu := FindWindowEx (Hu,0,'ReBarWindow32',nil);
Hu := FindWindowEx (Hu,0,'ComboBoxEx32',nil);

SendMessage (Hu,WM_GETTEXT ,sizeof(p),Integer(@P)); //get ComboBox Path
edit1.text:=String(p); //Path of Window
end;

end;


خوش باشید
:lol:

دلفی زاده
شنبه 11 مرداد 1382, 15:54 عصر
با سلام و تشکر فراوان از جنابعالی ممکن است کمی درباره winsight و نحوه کار با آن برایم توضیح دهید

houshmand
دوشنبه 13 مرداد 1382, 21:21 عصر
دیگر دوستان ادامه .... :oops: