PDA

View Full Version : سوال: ذخیره URL مرورگر



cloner11
چهارشنبه 03 دی 1393, 22:48 عصر
سلام.


من میخوام مثلا وقتی مرورگر فایرفاکس رو باز میکنم و وارد یک سایت میشم ادرس url رو برام توی متغییر ذخیره بکنه - لطفا راهنمایی کنید.

Snoopboy
چهارشنبه 03 دی 1393, 23:06 عصر
با توابع Api فکر می کنم باید انجام بدی این کار رو

cloner11
چهارشنبه 03 دی 1393, 23:19 عصر
میشه بیشتر راهنمایی کنید ؟خیلی دنبال این موضوع گشتم چیز درست حسابی پیدا نکردم متاسفانه

پیام حیاتی
پنج شنبه 04 دی 1393, 10:55 صبح
http://stackoverflow.com/questions/992498/how-to-get-data-from-an-url-and-save-it-into-a-file-in-binary-in-c-net-without

cloner11
پنج شنبه 04 دی 1393, 12:20 عصر
http://stackoverflow.com/questions/992498/how-to-get-data-from-an-url-and-save-it-into-a-file-in-binary-in-c-net-without


ممنون ولی این با سوال من خیلی فرق داشت - اونی که شما دادین طرف میخواد یک فایلی رو از یک ادرس دانلود کنه بعد ذخیره کنه !

ولی من میخوام url باز شده توی مرورگر رو بدونم

dele_ghamgin_2008
پنج شنبه 04 دی 1393, 14:15 عصر
ممنون ولی این با سوال من خیلی فرق داشت - اونی که شما دادین طرف میخواد یک فایلی رو از یک ادرس دانلود کنه بعد ذخیره کنه !

ولی من میخوام url باز شده توی مرورگر رو بدونم

سلام آقای حسن پور
آیا می خواهید فقط بر روی موزیلا عمل کند ؟

cloner11
پنج شنبه 04 دی 1393, 16:13 عصر
سلام آقای حسن پور
آیا می خواهید فقط بر روی موزیلا عمل کند ؟


بله فقط فایرفاکس -ممنون میشم راهنمایی کنید

Share & Learn
پنج شنبه 04 دی 1393, 17:29 عصر
برای این کار لازمه از اینجا (http://ndde.codeplex.com/releases/view/4828) یک dll رو دانلود کنید و فایل NDde.dll رو از پوشه ی Binary به پروژه تون اضافه کنید

بعد از این کار از namespace زیر استفاده کنید:


using NDde.Client;


بعد به کمک این تابع url ها رو می گیرید


private string GetBrowserURL(string browser)
{
try
{
DdeClient dde = new DdeClient(browser, "WWW_GetWindowInfo");
dde.Connect();
string url = dde.Request("URL", int.MaxValue);
string[] text = url.Split(new string[] { "\",\"" }, StringSplitOptions.RemoveEmptyEntries);
dde.Disconnect();
return text[0].Substring(1);
}
catch
{
return null;
}
}


و به کمک این تابع url ها رو نمایش می دید


private void ShowURL()
{
int j = 0;
for (int i = 0; i < listBox1.Items.Count; i++)
{
if (listBox1.Items[i].ToString() == GetBrowserURL("Firefox"))
{
break;
}
else
{
j++;
}
}
if (j == listBox1.Items.Count)
{
listBox1.Items.Add(GetBrowserURL("Firefox"));
}
}

cloner11
پنج شنبه 04 دی 1393, 18:48 عصر
برای این کار لازمه از اینجا (http://ndde.codeplex.com/releases/view/4828) یک dll رو دانلود کنید و فایل NDde.dll رو از پوشه ی Binary به پروژه تون اضافه کنید

بعد از این کار از namespace زیر استفاده کنید:


using NDde.Client;


بعد به کمک این تابع url ها رو می گیرید


private string GetBrowserURL(string browser)
{
try
{
DdeClient dde = new DdeClient(browser, "WWW_GetWindowInfo");
dde.Connect();
string url = dde.Request("URL", int.MaxValue);
string[] text = url.Split(new string[] { "\",\"" }, StringSplitOptions.RemoveEmptyEntries);
dde.Disconnect();
return text[0].Substring(1);
}
catch
{
return null;
}
}


و به کمک این تابع url ها رو نمایش می دید


private void ShowURL()
{
int j = 0;
for (int i = 0; i < listBox1.Items.Count; i++)
{
if (listBox1.Items[i].ToString() == GetBrowserURL("Firefox"))
{
break;
}
else
{
j++;
}
}
if (j == listBox1.Items.Count)
{
listBox1.Items.Add(GetBrowserURL("Firefox"));
}
}


ممنون کمک زیادی کردین الان تمام خطاهای پروژه رفع شده فقط نمیدونم چرا به لیست باکس اضافه نمیکنه URL ها رو .

بنظرتون مشکل چیه؟

Share & Learn
پنج شنبه 04 دی 1393, 18:54 عصر
ممنون کمک زیادی کردین الان تمام خطاهای پروژه رفع شده فقط نمیدونم چرا به لیست باکس اضافه نمیکنه URL ها رو .

بنظرتون مشکل چیه؟

خوب خدا رو شکر
چرا اضافه نمی کنه، مگه می شه؟
تابع نمایش رو کجا فراخوانی کردید؟

cloner11
پنج شنبه 04 دی 1393, 18:57 عصر
این کل کدهای من هست:




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using NDde.Client;


namespace WindowsFormsApplication41
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}


private string GetBrowserURL(string browser)
{
try
{
DdeClient dde = new DdeClient(browser, "WWW_GetWindowInfo");
dde.Connect();
string url = dde.Request("URL", int.MaxValue);
string[] text = url.Split(new string[] { "\",\"" }, StringSplitOptions.RemoveEmptyEntries);
dde.Disconnect();
return text[0].Substring(1);
}
catch
{
return null;
}
}


private void ShowURL()
{
int j = 0;
for (int i = 0; i < listBox1.Items.Count; i++)
{
if (listBox1.Items[i].ToString() == GetBrowserURL("Firefox"))
{
break;
}
else
{
j++;
}
}
if (j == listBox1.Items.Count)
{
listBox1.Items.Add(GetBrowserURL("Firefox"));
}
}
}
}

Share & Learn
پنج شنبه 04 دی 1393, 19:06 عصر
این کل کدهای من هست:



اول از همه یه خواهش دارم، اینکه کد هارو داخل تگ سی شارپ بذارید [CSHARP] نه تگ کد [CODE]

خوب دوست عزیز شما باید تایع رو یه جا فراخوانی کنید
مثلا داخل رویداد باتن، یا داخل رویداد timer_Tick

من پیشنهادم اینه که یه تایمر داخل برنامه بذارید خاصیت Enabled رو برابر true قرار بدید و در رویداد timer_Tick تابع ShowURL رو فراخوانی کنید