PDA

View Full Version : ازکارانداختن کپی و Cut در ویندوز



Delphi7_love
چهارشنبه 11 اسفند 1389, 14:43 عصر
آیا میشه از کپی کردن فیال ها و پوشه ها جلوگیری کرد؟
یعنی برنامه ای داشته باشیم که تا اون برنامه مجوز کپی گرفتن از اطلاعات در سیستم رو نداده باشه نتونیم عمل کپی اطلاعات را انجام بدیم

joker
چهارشنبه 11 اسفند 1389, 14:58 عصر
مرتب حافظه کلیپ بورد را خالی کن. عملا از کار می افته :)

Felony
چهارشنبه 11 اسفند 1389, 17:30 عصر
مرتب حافظه کلیپ بورد را خالی کن. عملا از کار می افته :)
خیر !
اگر کاربر فایل رو Drag کنه چی ؟
اگر با CMD کپی کنه چی ؟
اگر ...

باید پیغام های Copy و Move رو به صورت Global هوک کنید .

Delphi7_love
چهارشنبه 11 اسفند 1389, 17:40 عصر
ممنون چطور میشه این کارو کرد؟
و اگه بخوام فقط روی فلش کپی نشه چی ؟

Felony
چهارشنبه 11 اسفند 1389, 18:21 عصر
ممنون چطور میشه این کارو کرد؟
و اگه بخوام فقط روی فلش کپی نشه چی ؟
گفتم که هوک !
در انجمن چند بار صحبت شده ، البته اگر میخواین به نتیجه قطعی برسید دنبال مطلب فارسی نباشید ، در مورد عدم کپی رو فلش باید ببینید اون پیغام ها که قرار هست هوکشون کنید چه پارامترهایی رو و چطور رد و بدل میکنن ، تو اون پارامترها آدرس مبداء و مقصد باید به نحوی ذکر شده باشه ، شما آدرس مقصد رو میگیری و درایوش رو به دست میارید و بعد با تابع GetDriveType بررسی میکنی فلش هست یا نه اگر فلش بود عملیات کپی رو لغو میکنی .

البته اطلاعی ندارم این عملیات Copy و Cut در User Mode کنترل میشه یا Kernel Mode ؛ احتمال زیاد User Mode هست و مشکلی نخواهید داشت ولی اگر Kernel Mode باشه پیشنهاد میکنم فعلا شما بیخیالش شید !

tdkhakpur
چهارشنبه 11 اسفند 1389, 21:53 عصر
وقتی عملیات در مورد کلیپبورد انجام میگیره دو پیغام مهم WM_DRAWCLIPBOARD و WM_CHANGECBCHAIN همواره کنترل میشه .
شما میتوانید این دو پیغام رو هوک عمومی کنید یعنی توسط dll کد برنامه هوک رو بصورت عمومی بارگزاری کنید تا سایر برنامه ها هم نتونن روی برنامه شما کنترلی از لحاظ دسترسی به کیپبورد داشته باشند.
داخل تالار نمونه برای کیبورد هست میتونید برای خواسته خودتان هم تغییر جزئی درش بدید.