View Full Version : مبتدی: چگونه با دلفی پورت های ویندوز را کنترل کنم؟
عقاب سیاه
شنبه 21 مرداد 1391, 23:46 عصر
درود
من می خوام برای یکی از پورت ها ویندوز مثلا 500 یک فایل html یا php را برای خروجیش تنظیم کنم!
تا مثلا ادرس: 127.0.0.1:500 اون فایل مورد نظر منا نشون بده!
سپاس
BORHAN TEC
یک شنبه 22 مرداد 1391, 00:21 صبح
در ساده ترین حالت برای این کار می توانید از IntraWeb استفاده کنید. توجه داشته باشید که برای اینکه بتوانید یک پورت را به آن اختصاص دهید حداقل باید از نسخه Standard مربوط به IntraWeb استفاده نمایید. البته دریافت سریال و ارتقا به نسخه Standard به صورت رایگان است.
توجه داشته باشید که این فقط یکی از روشها است. به عبارتی دیگر شما با استفاده از Web Broker و DataSnap و RemObjects SDK و چندین مورد دیگر هم می توانید این کارها را انجام دهید.
عقاب سیاه
یک شنبه 22 مرداد 1391, 00:22 صبح
ممنون میشه بگید با کدوم یک از کامپوننت ها و یا یک مثالی چیزی هم بزنید
BORHAN TEC
یک شنبه 22 مرداد 1391, 00:33 صبح
کامپوننت خاصی لازم نداره، شما می تونید یک پروژه از نوع VCL For The Web ایجاد کنید.
عقاب سیاه
یک شنبه 22 مرداد 1391, 14:11 عصر
در مورد نحوه انجام این کار با این ابزارهایی که گفتید ( Web Broker و DataSnap و RemObjects SDK) مستنداتی یا مثالی نیست؟
یا این کار در داخل خود vcl امکان پذیر نیست؟ چون پروژه من تکمیل شده و حالا می خوام این قسمت را بهش اضافه کنم!
BORHAN TEC
پنج شنبه 26 مرداد 1391, 20:43 عصر
یا این کار در داخل خود vcl امکان پذیر نیست؟ چون پروژه من تکمیل شده و حالا می خوام این قسمت را بهش اضافه کنم!
خیلی عجیبه، چون فکر می کردم که به این تاپیک جواب داده ام! :گیج:
در پاسخ باید بدونید که برای این کار روش های مختلفی وجود داره. به عنوان مثال به عنوان یکی از روش ها مراحل زیر را طی کنید. (من این مراحل را در دلفی XE می گویم).
1- به منوی file>new>other بروید. در پنجره New Items گزینه WebBroker و سپس از آیتمهای سمت راست Web Server Application را انتخاب کنید.
2- حال در پنجره ای که باز می شود یکی از گزینه ها(در اینجا Indy VCL Application) را انتخاب کنید.
3- همانطور که میبینید در اینجا یک پروژه جدید ایجاد می شود که شامل 2 فرم است. که یکی از آنها مربوط به یک فرم VCL و دیگری مربوط به یک شی از کلاس TWebModule است.
4- به یونیتی که مربوط به WebModule است بروید. حال در آن کدی مثل کد زیر را خواهید دید:
procedure TWebModule2.WebModule2DefaultHandlerAction(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
Response.Content := '<html><heading/><body>Web Server Application</body></html>';
end;
حال کد بالا را می توانید با یک کد دیگر مثلاً این کد جایگزین کنید:
procedure TWebModule2.WebModule2DefaultHandlerAction(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
Response.SendRedirect('http://www.google.com');
end;
برای آموزش هم لینک های زیادی در این مورد وجود داره مثلاً:
http://edn.embarcadero.com/article/41322
http://etutorials.org/Programming/mastering+delphi+7/Part+IV+Delphi+the+Internet+and+a+.NET+Preview/Chapter+20+Web+Programming+with+WebBroker+and+WebS nap/Delphi+s+WebBroker+Technology/
عقاب سیاه
سه شنبه 31 مرداد 1391, 11:14 صبح
درود
استاد جان من یه مشکلی پیدا کردم اگه مقدار فارسی برای خروجی مشخص کنیم علامت سوال نشون میده:
Response.Content := '<html><heading/><body>دلفی</body></html>';
اما نکته جالب اینکه وقتی توی مرورگر انکد را میزارم روی UTF-8 هم باز هم همون علامت سوال نشون داره میشه!
راستی این را هم تست کردم ولی بی فایده بود!
Response.ContentEncoding := 'UTF-8';
سپاس
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.