PDA

View Full Version : لینک در دلفی



hamidpro
یک شنبه 27 شهریور 1384, 01:54 صبح
سلام
چه جوری میشه تو دلفی لینکداد
مثلا یه دکمه داریم می خوایم با زدن این دکمه یه فایل exe یا یه عکس باز بشه

لطفا نگید که برو تو انجمن ها بگرد
ممنون

vcldeveloper
یک شنبه 27 شهریور 1384, 02:52 صبح
برو توی بخش دلفی دنبال ShellExecute بگرد.

Developer Programmer
یک شنبه 27 شهریور 1384, 10:47 صبح
ضمنا بورلند کلی زحمت کشیده و Help ساخته که نیاین از این سوالهای ابتدایی بپرسین!

hamedr
یک شنبه 27 شهریور 1384, 12:49 عصر
با دستورزیر
shellexecute
البته این دستور را در کمک دلفی جستجوکنید تا با متغیر های مورد نیاز این دستور اشنا شوید
و در

عبارت زیر را وارد کنیدuses
shellapi

hamidpro
سه شنبه 29 شهریور 1384, 02:35 صبح
دستتون درد نکنه
بچه های دلفی کار چرا اینقدر خشن هستند؟
من اصلا اشتباه کردم
شما درست میگید

babak869
سه شنبه 29 شهریور 1384, 11:59 صبح
با سلام
این مطلب بارها پرسیده شده و دوستان جواب هم دادند .به هر حال در قسمت Uses این رو بنویس
ShellApi
و در قسمت Onclick دگمه بنویس

shellexecute(handle,'open','http://www.google.com',nil,nil,sw_show);

بجای آدرس سایت هم می تونی آدرس Local یعنی یک فایل روی هارد رو بدی

vcldeveloper
چهارشنبه 30 شهریور 1384, 02:12 صبح
بچه های دلفی کار چرا اینقدر خشن هستند؟
دوست عزیز، کسی اینجا خشن نیست، اما شما خودتو بزار جای ما...هر روز که میایم اینجا، یه عالمه سوال تکراری می بینیم...مسئولین سایت هم سعی می کنند به طرق مختلف کاربران رو تشویق به استفاده از امکانات جستجو سایت و پرهیز از سوال تکراری بکنند، اما باز هم هر کی از راه میرسه، ساده ترین کار رو انجام میده و بدون انجام یه جستجو ساده، یه تاپیک جدید ایجاد میکنه و سوالی رو که قبلا 100 بار جواب داده شده برای 101 امین بار مطرح میکنه، در حالی که نسبت به همین مسئله در قوانین سایت هم هشدار داده شده...شما اگه جای ما بودی چه جوابی به او کاربر میدادی؟!

jamal1384
چهارشنبه 30 شهریور 1384, 22:16 عصر
حرف اینا رو گوش نکن.چون من خودم یه روش دارم
2تا تابع زیر رو تو برنامت بزار:
Procedure TMain.SendWeb;
var
Tmp : array[0..255] of Char;
begin
Lowercase(Destination);
if Pos('http://',Destination)<>1 then
Destination:='http://'+Destination;
StrPCopy(Tmp,Destination);
ShellExecute(0, 'open', 'iexplore.exe', tmp, nil, SW_SHOWDEFAULT);
end;

procedure TMain.Label2Click(Sender: TObject);
begin
SendWeb('http://www.mashatan.com');
end;

vcldeveloper
پنج شنبه 31 شهریور 1384, 00:44 صبح
حرف اینا رو گوش نکن.چون من خودم یه روش دارم
2تا تابع زیر رو تو برنامت بزار:
هیچ لزومی نداره که شما در تابع بالا وجود http در رشته رو بررسی بکنید و سپس IE را توسط ShellExecute اجرا کنید. میشه خیلی راحت فقط با یک خط دستور لینک مورد نظر را در Browser پیش فرض کاربر باز کرد. وقتی از ShellExecute استفاده می کنید، Shell ویندوز خودش بطور اتوماتیک اجرا کننده مرتبط با آدرس داده شده را پیدا می کند، مثلا اگه بجای Destination آدرس یک فایل doc. را بدهید، Word بطور اتوماتیک اجرا میشه.
در نتیجه شما کد تابع شما فقط وقت برنامه نویس و منابع سیستم رو تلف می کنه.

موفق باشید

Developer Programmer
پنج شنبه 31 شهریور 1384, 16:38 عصر
در نتیجه شما کد تابع شما فقط وقت برنامه نویس و منابع سیستم رو تلف می کنه

به عبارتی سربار cpu رو زیاد می کنه

hamidpro
یک شنبه 03 مهر 1384, 00:50 صبح
دستتون درد نکنه
ممنون