PDA

View Full Version : How block internet access on system in Csharp



amin_sltny
سه شنبه 11 تیر 1392, 12:49 عصر
سلام

بچه ها چه طور میشه روی یه سیستم اینترت را با استفاده از سی شارپ قطع و وصل کرد؟

amin_sltny
سه شنبه 11 تیر 1392, 16:42 عصر
کسی نیست کمک کنه؟ من همچنان منتظرم!!! ممنون:گریه::ناراحت:

danialafshari
سه شنبه 11 تیر 1392, 19:15 عصر
سلام

بچه ها چه طور میشه روی یه سیستم اینترت را با استفاده از سی شارپ قطع و وصل کرد؟

سلام
امروزه معمولا ADSL ها Auto Connect هستن و کانکشنی ندارن که بخوای Disconnect/Connect کنی. فکر کنم باید دنبال Enable/Disable کردن Local Area Network باشی
موفق باشی

amin_sltny
سه شنبه 11 تیر 1392, 19:22 عصر
سلام
امروزه معمولا ADSL ها Auto Connect هستن و کانکشنی ندارن که بخوای Disconnect/Connect کنی. فکر کنم باید دنبال Enable/Disable کردن Local Area Network باشی
موفق باشی

راسیتش من دارم یه برنامه مدیریت کافی نت و گیم نت می سازم. حالا می خوام تو برنامه سرور بتونه اینترنت یه سیستم را قطع یا وصل کنه یا کاری کنه که Client نتونه صفحات وب را باز کنه و برعکس؟ به نظر شما باید چه کار کنم؟

danialafshari
سه شنبه 11 تیر 1392, 19:25 عصر
برنامه ای که در کافی نت دوستم استفاده میشه برای اینکار میاد موس و کیبورد رو قفل می کنه و نیازی به قطع اینترنت نیست

amin_sltny
سه شنبه 11 تیر 1392, 19:34 عصر
برنامه ای که در کافی نت دوستم استفاده میشه برای اینکار میاد موس و کیبورد رو قفل می کنه و نیازی به قطع اینترنت نیست

آخه این برنامه دو منظورست هم کافی نت هم گیم نت می خوام وقتی گیم نته اینترنت سیستم قطع باشه؟ بعد حالا که گفتید چه طوری میشه کیبورد و موس را قفل کرد؟

danialafshari
سه شنبه 11 تیر 1392, 19:37 عصر
اطلاعی ندارم فقط برنامشو دیدم
فکر می کنم باید از hook استفاده بشه سورس vb6 شو داشتم اگه بدردت میخوره روی نت پیدا میشه

amin_sltny
سه شنبه 11 تیر 1392, 19:50 عصر
اطلاعی ندارم فقط برنامشو دیدم
فکر می کنم باید از hook استفاده بشه سورس vb6 شو داشتم اگه بدردت میخوره روی نت پیدا میشه

لطفا کمک کنید!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!:گریه :

amin_sltny
چهارشنبه 12 تیر 1392, 08:58 صبح
لطفا کمک کنید!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!:گریه :

من همچنان منتظرمااااااااااااااااااا ااا!!!!:لبخندساده::افسرده::گر ه:

hamid_hr
چهارشنبه 12 تیر 1392, 09:13 صبح
راحتترين راه به نظر اينه كه dns رو تغيير بدي
بزار رو 127.0.0.1 اينترنت قطع ميشه
بزار روي 4.2.2.4 اينترنت وصل ميشه
الان رو سيستم خودت تست كن

amin_sltny
چهارشنبه 12 تیر 1392, 10:18 صبح
راحتترين راه به نظر اينه كه dns رو تغيير بدي
بزار رو 127.0.0.1 اينترنت قطع ميشه
بزار روي 4.2.2.4 اينترنت وصل ميشه
الان رو سيستم خودت تست كن

با چه کدی میشهDNS را تغییر داد

hamid_hr
چهارشنبه 12 تیر 1392, 10:30 صبح
http://social.msdn.microsoft.com/Forums/en-US/2b8edaf5-e729-4f0d-b354-4739b3593c65/how-to-set-dns-server-address-of-a-pc

yasser_ebrahimi
چهارشنبه 12 تیر 1392, 19:21 عصر
من هم چنین کدی رو توی C نوشتم . اما با این تفاوت که با اون برنامه من همه ی برنامه هایی که با پروتکل TCP کار می کردن رو قطع می کردم.
برای شما دوست عزیز پیشنهاد دارم که از تابع GetExtendedTcpTable استفاده کنید و لیست همه پروسه های شبکه رو دربیارید و بعد با تابع SetTcpEntry اون کانکشن رو قطع کنید. پیدا کردن پروسه های شبکه هم خیلی ساده س کافیه شماره پورت ها رو بررسی کنید. اگه خواستید نمونه کد رو هم قرار میدم.

مهرداد صفا
چهارشنبه 12 تیر 1392, 20:46 عصر
حالا که گفتید چه طوری میشه کیبورد و موس را قفل کرد؟
باسلام.
ساده ترین راه برای این کار استفاده از تابع BlockInput (http://msdn.microsoft.com/en-us/library/windows/desktop/ms646290%28v=vs.85%29.aspx) است.

davidrobert
چهارشنبه 12 تیر 1392, 21:22 عصر
این سورس برای وصل شدن به اینترنت هستش.http://uplod.ir/c1m9watgfiw3/Connect_To_Internet.7z.htm
اینم برای اینکه بتونی DNS روی پیدا کنی http://uplod.ir/cueiwelbpg7z/NetworkTools.rar.htm
این پروزه کافی نت http://uplod.ir/ryz790ed2px9/CafeNet_Timer.rar.htm
موفق باشی چیزی که بدرد تون میخود رو داشتم رو فرستادم.

yasser_ebrahimi
چهارشنبه 12 تیر 1392, 23:36 عصر
باسلام.
ساده ترین راه برای این کار استفاده از تابع BlockInput (http://msdn.microsoft.com/en-us/library/windows/desktop/ms646290%28v=vs.85%29.aspx) است.

تابع BlockInput رو با فشردن کلید ترکیبی alt+ctrl+delete غیر فعال میشه. در ضمن این تابع فقط در usermode کار میکنه و توی system user کارنمیکنه. در این مورد به هیچ وجه توصیه نمیشه ازین تابع استفاده بشه.

yasser_ebrahimi
چهارشنبه 12 تیر 1392, 23:43 عصر
این سورس برای وصل شدن به اینترنت هستش.http://uplod.ir/c1m9watgfiw3/Connect_To_Internet.7z.htm


مرسی بابت پروژه هاتون. ولی فکر نکنم کدهای شما هم بتونه توی این مورد به دوستمون کمک کنه. من پروژه ای که بالاتر توضیح دادم الان با دلفی کدشو زدم. با فایل exe میذارم. اگه بدردتون خورد کد C#‎ رو هم میذارم
http://s4.picofile.com/file/7829869565/port_msg.zip.html

برنامه رو اجرا کنید و سعی کنید با Brower به اینترنت وصل بشید

amin_sltny
پنج شنبه 13 تیر 1392, 09:26 صبح
من هم چنین کدی رو توی C نوشتم . اما با این تفاوت که با اون برنامه من همه ی برنامه هایی که با پروتکل TCP کار می کردن رو قطع می کردم.
برای شما دوست عزیز پیشنهاد دارم که از تابع GetExtendedTcpTable استفاده کنید و لیست همه پروسه های شبکه رو دربیارید و بعد با تابع SetTcpEntry اون کانکشن رو قطع کنید. پیدا کردن پروسه های شبکه هم خیلی ساده س کافیه شماره پورت ها رو بررسی کنید. اگه خواستید نمونه کد رو هم قرار میدم.

ممنون دوت عزیز میشه این دو تابع را بگید کجای سی شارپه؟؟؟ یا برام یه نمونه کد بذارید؟

amin_sltny
پنج شنبه 13 تیر 1392, 09:28 صبح
این سورس برای وصل شدن به اینترنت هستش.http://uplod.ir/c1m9watgfiw3/Connect_To_Internet.7z.htm
اینم برای اینکه بتونی DNS روی پیدا کنی http://uplod.ir/cueiwelbpg7z/NetworkTools.rar.htm
این پروزه کافی نت http://uplod.ir/ryz790ed2px9/CafeNet_Timer.rar.htm
موفق باشی چیزی که بدرد تون میخود رو داشتم رو فرستادم.

دوست عزیز بسیار ممنونم. ولی مشکل من چیزه دیگه ای هست

yasser_ebrahimi
پنج شنبه 13 تیر 1392, 10:34 صبح
ممنون دوت عزیز میشه این دو تابع را بگید کجای سی شارپه؟؟؟ یا برام یه نمونه کد بذارید؟

این هم برنامه با #C که خیلی کارا میکنه ، از جمله گرفتن لیست برنامه هایی که دارن با شبکه کار میکنن و وضعیت جاری اون برنامه ها- قطع اتصال یک IP خاص (Local IP و Remote IP) - قطع اتصال همه کانکشن ها - البته دقت داشته باشید باید برنامه توی یه Timer یا Loop بی نهایت قرار بگیره تا دائماً لیست شبکه رو بررسی کنه. Interval تایمر بین 1 تا 50 میلی ثانیه باشه

http://s3.picofile.com/file/7830213759/ConsoleApplication4.zip.html

کدها واضحه و فکر نکنم به توضیح احتیاج داشته باشه ولی اگه سوالی بود من در خدمتم

amin_sltny
پنج شنبه 13 تیر 1392, 11:39 صبح
این هم برنامه با #C که خیلی کارا میکنه ، از جمله گرفتن لیست برنامه هایی که دارن با شبکه کار میکنن و وضعیت جاری اون برنامه ها- قطع اتصال یک IP خاص (Local IP و Remote IP) - قطع اتصال همه کانکشن ها - البته دقت داشته باشید باید برنامه توی یه Timer یا Loop بی نهایت قرار بگیره تا دائماً لیست شبکه رو بررسی کنه. Interval تایمر بین 1 تا 50 میلی ثانیه باشه

http://s3.picofile.com/file/7830213759/ConsoleApplication4.zip.html

کدها واضحه و فکر نکنم به توضیح احتیاج داشته باشه ولی اگه سوالی بود من در خدمتم

public static void CloseConnection(string connectionstring)
{
try
{
//Split the string to its subparts
string[] parts = connectionstring.Split('-');
if (parts.Length != 4)
throw new Exception("Invalid connectionstring - use the one provided by Connections.");
string[] loc = parts[0].Split(':');
string[] rem = parts[1].Split(':');
string[] locaddr = loc[0].Split('.');
string[] remaddr = rem[0].Split('.');

//Fill structure with data
MIB_TCPROW row = new MIB_TCPROW();
row.dwState = 12;
byte[] bLocAddr = new byte[] { byte.Parse(locaddr[0]), byte.Parse(locaddr[1]), byte.Parse(locaddr[2]), byte.Parse(locaddr[3]) };
byte[] bRemAddr = new byte[] { byte.Parse(remaddr[0]), byte.Parse(remaddr[1]), byte.Parse(remaddr[2]), byte.Parse(remaddr[3]) };
row.dwLocalAddr = BitConverter.ToInt32(bLocAddr, 0);
row.dwRemoteAddr = BitConverter.ToInt32(bRemAddr, 0);
row.dwLocalPort = htons(int.Parse(loc[1]));
row.dwRemotePort = htons(int.Parse(rem[1]));

//Make copy of the structure into memory and use the pointer to call SetTcpEntry
IntPtr ptr = GetPtrToNewObject(row);
int ret = SetTcpEntry(ptr);

if (ret == -1)
throw new Exception("Unsuccessful");
if (ret == 65)
throw new Exception("User has no sufficient privilege to execute this API successfully");
if (ret == 87)
throw new Exception("Specified port is not in state to be closed down");
if (ret != 0)
throw new Exception("Unknown error (" + ret + ")");

}
catch (Exception ex)
{
throw new Exception("CloseConnection failed (" + connectionstring + ")! [" + ex.GetType().ToString() + "," + ex.Message + "]");
}
}

می خواستم اگه میشه در مورد این تابع توضیح بدید و بگید منظور از connectionstring چیه؟:قلب:
و یه سوال دیگه من می خوام بدونم الان به نظر شما باید چه کار کنم. باید یه تایمر بذارم که لیست کل ای پی ها .ی شبکه را بگیره بعد برای قطع کردن اینترنت ان سیستم چیا باید قطع کنم!!؟؟

yasser_ebrahimi
پنج شنبه 13 تیر 1392, 12:05 عصر
می خواستم اگه میشه در مورد این تابع توضیح بدید و بگید منظور از connectionstring چیه؟

منظورم اینه 192.168.10.68:14930-192.168.10.68:49164-Established-5


Local addr - Local Port - Remote Addr - Remote Port - State

در واقع تابع CloseConnection رشته اتصال رو که بالا گفتم میگیره ازتون و کانکشن رو قطع میکنه



و یه سوال دیگه من می خوام بدونم الان به نظر شما باید چه کار کنم. باید یه تایمر بذارم که لیست کل ای پی ها .ی شبکه را بگیره بعد برای قطع کردن اینترنت ان سیستم چیا باید قطع کنم!!؟؟

من بجای تایمر یه Loop بی نهایت گذاشتم که دائماً یه تابع برای قطع کردن همه اتصال ها رو فراخوانی میکنه
for (; ; )
{
Disconnecter.CloseALLIP();
System.Threading.Thread.Sleep(10);
}

public static void CloseALLIP()
{
MIB_TCPROW[] rows = getTcpTable();
for (int i = 0; i < rows.Length; i++)
{
rows[i].dwState = (int)State.Delete_TCB;
IntPtr ptr = GetPtrToNewObject(rows[i]);
int ret = SetTcpEntry(ptr);
}
}

اما مشکل این قطعه کد اینه که همه ی اتصالای شبکه رو ، روی کلاینت قطع میکنه در نتیجه ارتباط شبکه اون با سرور هم قطع میشه و من این مورد رو فراموش کردم متذکر بشم . عذر میخوام
برای رفع این مشکل هم شما این برنامه رو دانلود کن لطفاً
http://www.codeproject.com/Articles/4298/Getting-active-TCP-UDP-connections-on-a-box

با این برنامه لیست همه پروسه های شبکه با PID و PNAME رو میگیری و بعد پروسه هایی که نمیخوای رو با SetTcpEntry از بین می برید. در واقع با این کار یه فایروال میسازی.
برای مثال پروسه های chorme و svchost و firefox توی لیست هستن. شما باید بگی پروسه هایی که اسمشون chorme و firefox هست رو terminate کنه

amin_sltny
پنج شنبه 13 تیر 1392, 12:21 عصر
منظورم اینه 192.168.10.68:14930-192.168.10.68:49164-Established-5

ممنون دوست عزیز سوال دوممو هم اگه بلدی میشه جواب بدی؟؟؟ خیلی ضروریه؟

yasser_ebrahimi
پنج شنبه 13 تیر 1392, 12:42 عصر
ممنون دوست عزیز سوال دوممو هم اگه بلدی میشه جواب بدی؟؟؟ خیلی ضروریه؟
پست قبلی رو ویرایش کردم

این الگوریتم در چه ساده بنظر میرسه ولی دقیقاً همون الگوریتمی هست که خود ویندوز داره استفاده میکنه ازش و همچنین خودم. البته فراموش نکنید که همیشه پروسه هایی با PID 4 رو باهاشون کاری نداشته باشین. اگه این کانکشن پروسه ها رو هم قطع کنید شبکه کلاینت قطع میشه.

yasser_ebrahimi
پنج شنبه 13 تیر 1392, 12:57 عصر
فقط چند تا نکته:
1-منظورم از terminate process درواقع kill کردن اونا نیست بلکه منظورم از بین بردن Connction اونهاست. مثل اون exe دادم برنامه ها درحال اجرا هستن ولی نمیتونن به اینترنت وصل بشن.
2- با این برنامه میتونید هرکاری رو با پورت های شبکه کنید و طبق میل و نظر خودتون مدیریتشون کنید و محدودشون کنید. مثلاً بگید به همه سایت ها وصل بشن بجز سایتهایی Https و هر ایده ای که درمورد مدیریت پورت های شبکه مد نظرتون هست. چون خودم همه حالتهاشو عملی پیاده کردم. فقط راستش یه درز امنیتی داره که با یه ترفند ساده قابل حله. که مایل بودید اونو هم توضیح بدم

amin_sltny
پنج شنبه 13 تیر 1392, 17:39 عصر
فقط چند تا نکته:
1-منظورم از terminate process درواقع kill کردن اونا نیست بلکه منظورم از بین بردن Connction اونهاست. مثل اون exe دادم برنامه ها درحال اجرا هستن ولی نمیتونن به اینترنت وصل بشن.
2- با این برنامه میتونید هرکاری رو با پورت های شبکه کنید و طبق میل و نظر خودتون مدیریتشون کنید و محدودشون کنید. مثلاً بگید به همه سایت ها وصل بشن بجز سایتهایی Https و هر ایده ای که درمورد مدیریت پورت های شبکه مد نظرتون هست. چون خودم همه حالتهاشو عملی پیاده کردم. فقط راستش یه درز امنیتی داره که با یه ترفند ساده قابل حله. که مایل بودید اونو هم توضیح بدم

دوست گرامی اون پروژه ای که به من داده ای چنین کاری نکرد وقتی من اجراش کردم بازم اینترنت سیستمم وصل بودا؟!!!!

amin_sltny
پنج شنبه 13 تیر 1392, 17:42 عصر
دوست گرامی اون پروژه ای که به من داده ای چنین کاری نکرد وقتی من اجراش کردم بازم اینترنت سیستمم وصل بودا؟!!!!

ببخشید شرمنده نه درست کار میکرد!!!!!:لبخندساده: مشکل از من بوووووووووووووود!!!:لبخند::ل بخند:

فقط الان مشکلی در برنامه ام به وجود نمیاد؟ یعنی وقتی این برنامه را اجرا کنم برنامه ای که به طور کلاینت و سرور با سوکت نوشتم که مشکلی پیدا نمی کنه؟

yasser_ebrahimi
جمعه 14 تیر 1392, 10:12 صبح
فقط الان مشکلی در برنامه ام به وجود نمیاد؟ یعنی وقتی این برنامه را اجرا کنم برنامه ای که به طور کلاینت و سرور با سوکت نوشتم که مشکلی پیدا نمی کنه؟

ببخشید منظورتون کدوم یکی از برنامه هاست؟

همونطور که توی پست های قبلی توضیح دادم مشکل این بود که همه ارتباطای شبکه رو هم قطع میکرد ولی بشرط اینکه اسم Process خودتون رو Allow کنید

amin_sltny
جمعه 14 تیر 1392, 10:20 صبح
ببخشید منظورتون کدوم یکی از برنامه هاست؟

همونطور که توی پست های قبلی توضیح دادم مشکل این بود که همه ارتباطای شبکه رو هم قطع میکرد ولی بشرط اینکه اسم Process خودتون رو Allow کنید

راستش کدی که داده بودی از codeproject ایراد داشت. میشه مراحل کلی کار را به من بگید. من باید لیست پروسه های سیستم را به دست بیارم با کد زیر:
System.Diagnostics.Process.GetProcesses()

بعدش چه کار کنم!!!

amin_sltny
جمعه 14 تیر 1392, 12:15 عصر
برای اینکه کروم را بتونم بلوکش کنم با فایرول کد های زیر را نوشتم ام این کار را نمی کنه باید چه کار کنم:
قسمت اول معرفی متغیر ها و...:

#region
private const string CLSID_FIREWALL_MANAGER = "{304CE942-6E39-40D8-943A-B913C40C9CD4}";
private static INetFwMgr manager = GetFireWallManager();
private static INetFwMgr GetFireWallManager()
{
Type objectType = Type.GetTypeFromCLSID(new Guid(CLSID_FIREWALL_MANAGER));
return Activator.CreateInstance(objectType) as INetFwMgr;
}
private static INetFwAuthorizedApplications applications;
private static INetFwOpenPorts ports = (INetFwOpenPorts)manager.LocalPolicy.CurrentProfil e.GloballyOpenPorts;
System.Collections.IEnumerator enumerate = ports.GetEnumerator();
#endregion

قسمت دوم گرفتن لیست برنامه های مجاز:
INetFwAuthorizedApplication application;
applications = (INetFwAuthorizedApplications)manager.LocalPolicy. CurrentProfile.AuthorizedApplications;
while (enumerate.MoveNext())
{
application = (INetFwAuthorizedApplication)enumerate.Current;

}
foreach (var item in applications)
{
application = (INetFwAuthorizedApplication)(item);
if (application.Name == "Google Chrome")
{

application.Enabled = !application.Enabled;

}
}

amin_sltny
جمعه 14 تیر 1392, 12:59 عصر
بچه ها خودم راهش را پیدا کردم. گفتم کدشا برای دوستان عزیزم هم بذارم:
سربرگ :
using NetFwTypeLib;


INetFwRule firewallRule = (INetFwRule)Activator.CreateInstance(Type.GetTypeF romProgID("HNetCfg.FWRule"));



دو تابع برای قطع و وصل کردن اینترنت به وسیله فایروال:
private void BlockInternet()
{
firewallRule.Action = NET_FW_ACTION_.NET_FW_ACTION_BLOCK;
firewallRule.Description = "Used to block all internet access.";
firewallRule.Direction = NET_FW_RULE_DIRECTION_.NET_FW_RULE_DIR_OUT;
firewallRule.Enabled = true;
firewallRule.InterfaceTypes = "All";
firewallRule.Name = "Block Internet";
INetFwPolicy2 firewallPolicy = (INetFwPolicy2)Activator.CreateInstance(Type.GetTy peFromProgID("HNetCfg.FwPolicy2"));
firewallPolicy.Rules.Add(firewallRule);

}

private void AccessInternet()
{
INetFwPolicy2 firewallPolicy = (INetFwPolicy2)Activator.CreateInstance(Type.GetTy peFromProgID("HNetCfg.FwPolicy2"));
firewallPolicy.Rules.Remove("Block Internet");

}

yasser_ebrahimi
جمعه 14 تیر 1392, 13:49 عصر
دوست من! تمومش کردم... کدی که الان Upload میکنم واستون کامله کامله. چون #C بلد نیستم سخت بود واسم نوشتن کدها. ببخشید اگه نامنظمه و استاندارد نیست چون علمی نسبت به #c نداشتم و ندارم.

http://s1.picofile.com/file/7831840963/WindowsFormsApplication6.zip.html

توی تکس باکس پروسه chrome رو پیش فرض گذاشتم. که با فشردن Button میبینید که chrome دیگه نمیتونه به اینترنت وصل بشه ولی Firefox یا IE میتونن. در واقع توی تکس باکس باید لیست پروسه های مجاز رو قرار بدید. خودتون هرطور خواستید الگو هاتون رو پیاده کنید روش

amin_sltny
جمعه 14 تیر 1392, 16:45 عصر
دوست من! تمومش کردم... کدی که الان Upload میکنم واستون کامله کامله. چون #C بلد نیستم سخت بود واسم نوشتن کدها. ببخشید اگه نامنظمه و استاندارد نیست چون علمی نسبت به #c نداشتم و ندارم.

http://s1.picofile.com/file/7831840963/WindowsFormsApplication6.zip.html

توی تکس باکس پروسه chrome رو پیش فرض گذاشتم. که با فشردن Button میبینید که chrome دیگه نمیتونه به اینترنت وصل بشه ولی Firefox یا IE میتونن. در واقع توی تکس باکس باید لیست پروسه های مجاز رو قرار بدید. خودتون هرطور خواستید الگو هاتون رو پیاده کنید روش

خیلی ممنون دوست عزیز

amin_sltny
شنبه 15 تیر 1392, 10:15 صبح
بچه ها خودم راهش را پیدا کردم. گفتم کدشا برای دوستان عزیزم هم بذارم:
سربرگ :
using NetFwTypeLib;


INetFwRule firewallRule = (INetFwRule)Activator.CreateInstance(Type.GetTypeF romProgID("HNetCfg.FWRule"));



دو تابع برای قطع و وصل کردن اینترنت به وسیله فایروال:
private void BlockInternet()
{
firewallRule.Action = NET_FW_ACTION_.NET_FW_ACTION_BLOCK;
firewallRule.Description = "Used to block all internet access.";
firewallRule.Direction = NET_FW_RULE_DIRECTION_.NET_FW_RULE_DIR_OUT;
firewallRule.Enabled = true;
firewallRule.InterfaceTypes = "All";
firewallRule.Name = "Block Internet";
INetFwPolicy2 firewallPolicy = (INetFwPolicy2)Activator.CreateInstance(Type.GetTy peFromProgID("HNetCfg.FwPolicy2"));
firewallPolicy.Rules.Add(firewallRule);

}

private void AccessInternet()
{
INetFwPolicy2 firewallPolicy = (INetFwPolicy2)Activator.CreateInstance(Type.GetTy peFromProgID("HNetCfg.FwPolicy2"));
firewallPolicy.Rules.Remove("Block Internet");

}
بچه ها یه مشکلی که برای من پیش اومده اینه که ارتباط clientام با سرور قطع میشه باید چه کنم!!!

amin_sltny
شنبه 15 تیر 1392, 10:24 صبح
بچه ها یه مشکلی که برای من پیش اومده اینه که ارتباط clientام با سرور قطع میشه باید چه کنم!!!

در واقع با فعال شدن فایروال همه پورت ها بسه میشه؟ حالا من باید از یک پورت مثلا 5000 با برنامه ام ارتباط برقرار کنم چه طوری باید این کار را بکنم!!!؟؟ مثلا از پورت 5000 کلاینت به پورت 5500 سرور می خوام وصل بشم؟!!!

mthreat.info
شنبه 15 تیر 1392, 13:11 عصر
بنظر من شما روی policy ویندوز کار کنید بهتره
http://blogs.msdn.com/b/dsadsi/archive/2009/07/23/working-with-group-policy-objects-programmatically-determining-registry-values-to-enable-disable-set-a-specific-policy.aspx
/////////////////////////////////
http://blogs.msdn.com/b/dsadsi/archive/2009/07/23/working-with-group-policy-objects-programmatically-simple-c-example-illustrating-how-to-modify-a-registry-based-policy.aspx
//////////////////////////////////
http://social.msdn.microsoft.com/Forums/vstudio/en-US/f3f5a61f-2ab9-459e-a1ee-c187465198e0/how-to-create-group-policy-object-programmatically-using-net-and-c

amin_sltny
شنبه 15 تیر 1392, 16:41 عصر
بنظر من شما روی policy ویندوز کار کنید بهتره
http://blogs.msdn.com/b/dsadsi/archive/2009/07/23/working-with-group-policy-objects-programmatically-determining-registry-values-to-enable-disable-set-a-specific-policy.aspx
/////////////////////////////////
http://blogs.msdn.com/b/dsadsi/archive/2009/07/23/working-with-group-policy-objects-programmatically-simple-c-example-illustrating-how-to-modify-a-registry-based-policy.aspx
//////////////////////////////////
http://social.msdn.microsoft.com/Forums/vstudio/en-US/f3f5a61f-2ab9-459e-a1ee-c187465198e0/how-to-create-group-policy-object-programmatically-using-net-and-c

میشه بگید policy ویندوز چیه؟

mthreat.info
شنبه 15 تیر 1392, 16:44 عصر
میشه بگید policy ویندوز چیه؟
policy همون قانون (سیاست) هست که به کاربرا داده میشه مثلا یه کاربر نتونه بره اینترنت یا یه کاربر نتونه نرم افزاری رو نصب کنه و ....

amin_sltny
شنبه 15 تیر 1392, 16:58 عصر
policy همون قانون (سیاست) هست که به کاربرا داده میشه مثلا یه کاربر نتونه بره اینترنت یا یه کاربر نتونه نرم افزاری رو نصب کنه و ....

از طریق Network Policy میشه این کار را کرد؟ میشه لینک dll را برام بذارید؟

mthreat.info
شنبه 15 تیر 1392, 17:15 عصر
http://www.microsoft.com/en-us/download/details.aspx?id=14536
http://www.microsoft.com/en-us/download/details.aspx?id=21895
http://msdn.microsoft.com/en-us/library/ee840126(v=VS.85).aspx
فکر کنم اینا باشن

mthreat.info
شنبه 15 تیر 1392, 17:31 عصر
من تو گوگل داشتم جست و جو میکردم که به نتایج خوبی رسیدم
لینک گوگل (https://www.google.com/webhp?sourceid=chrome-instant&rlz=1C1CHMO_enIR541IR541&ion=1&ie=UTF-8#rlz=1C1CHMO_enIR541IR541&biw=1024&bih=643&sclient=psy-ab&q=how%20to%20set%20group%20policy%20windows%20usin g%20c%23&oq=&gs_l=&pbx=1&fp=cc68e79d4e244acb&ion=1&bav=on.2,or.r_cp.r_qf.&bvm=bv.48705608,d.bGE)

مسیر policy در ویندوز (http://social.microsoft.com/Forums/en-US/60f86140-0b50-442a-be93-e53cfde2044c/how-to-get-windows-group-policy-information-using-c)

نمونه برنامه (http://www.codeproject.com/Articles/4237/Querying-Active-Directory-using-NET-classes-and-LD)

لینک API مربوط به policy (http://msdn.microsoft.com/en-us/library/aa375115(v=vs.85).aspx)

amin_sltny
شنبه 15 تیر 1392, 17:39 عصر
http://www.microsoft.com/en-us/download/details.aspx?id=14536
http://www.microsoft.com/en-us/download/details.aspx?id=21895
http://msdn.microsoft.com/en-us/library/ee840126(v=VS.85).aspx
فکر کنم اینا باشن

من دومورد اول را دانلود کردم هیچکودوم کار نمی داد اولی که معلوم نبود چیه و دومی هم خطا می داد وقتی می خواست نصب بشه؟اما از طریق سومی microsoft.grouppolicy.management.dll را دانلود کردم ولی GPMGMTLib را که در کد ها بود را نمی شناسه و خطا میگیره

mthreat.info
شنبه 15 تیر 1392, 17:47 عصر
شما dll رو import کردید؟ using چی؟

amin_sltny
شنبه 15 تیر 1392, 17:54 عصر
شما dll رو import کردید؟ using چی؟

بله هم import هم using

mthreat.info
شنبه 15 تیر 1392, 21:04 عصر
پس من چیزی نمیدونم لینک های جدیدی که گذاشتم نگاه کن ببین به نتیجه میرسی؟

amin_sltny
شنبه 15 تیر 1392, 21:35 عصر
پس من چیزی نمیدونم لینک های جدیدی که گذاشتم نگاه کن ببین به نتیجه میرسی؟

نه به نتیجه ای نرسیدم. لطفا کمکم کنیـــــــــــــد!!!!!!!!!!!!!!!! !!:افسرده:

amin_sltny
یک شنبه 16 تیر 1392, 17:25 عصر
نه به نتیجه ای نرسیدم. لطفا کمکم کنیـــــــــــــد!!!!!!!!!!!!!!!! !!:افسرده:

لطفا کمکم کنیـــــــــــــد!!!!!!!!!!!!!!!! !!:افسرده:

habibb
یک شنبه 16 تیر 1392, 17:54 عصر
سلام
باید serialPort اون Connection ات رو CLose کنی ولی چه طوری ؟

habibb
یک شنبه 16 تیر 1392, 17:59 عصر
اگر بتونی با برنامه ی خودت وصل شی به اینترنت اونوقت اون serialport می افته دست خودت و می تونی با این دستور اینترنتت رو قطع کنی
این دستور رو می ریزی توی ی دکمه


private void button1_Click(object sender, EventArgs e)
{
serialPort1.Write("ATH"+System.Environment.NewLine);
}

Disconnect

amin_sltny
یک شنبه 16 تیر 1392, 19:25 عصر
اگر بتونی با برنامه ی خودت وصل شی به اینترنت اونوقت اون serialport می افته دست خودت و می تونی با این دستور اینترنتت رو قطع کنی
این دستور رو می ریزی توی ی دکمه


private void button1_Click(object sender, EventArgs e)
{
serialPort1.Write("ATH"+System.Environment.NewLine);
}

Disconnect

دوتا سوال دوست عزیز:
1) منظورتون از اینکه برنماه خودم وصل شه به اینترنت چیه؟ یعنی حتما باید یه webbrowser بسازم یا با دستور زیر هم میشه بفهمی؟
System.Net.Sockets.TcpClient("www.google.com", 80);
2)برای وصل کردنش اون وقت باید چی بنویسم؟

ممنون

amin_sltny
دوشنبه 17 تیر 1392, 13:28 عصر
دوتا سوال دوست عزیز:
1) منظورتون از اینکه برنماه خودم وصل شه به اینترنت چیه؟ یعنی حتما باید یه webbrowser بسازم یا با دستور زیر هم میشه بفهمی؟
System.Net.Sockets.TcpClient("www.google.com", 80);
2)برای وصل کردنش اون وقت باید چی بنویسم؟

ممنون

کسی نیست جواب بده؟

amin_sltny
چهارشنبه 19 تیر 1392, 13:46 عصر
کسی نیست جواب بده؟

کمـــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــک!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!:ناراحت:

habibb
چهارشنبه 19 تیر 1392, 13:58 عصر
تو سایت های خارجی بگرد اینجا کسی بلد نیست برنامه نویسی شبکه:اشتباه:

amin_sltny
چهارشنبه 19 تیر 1392, 19:39 عصر
تو سایت های خارجی بگرد اینجا کسی بلد نیست برنامه نویسی شبکه:اشتباه:

تمام راه حل های زیر را خودم هم از سایت های خازجی پیدا کردم ولی اون چیزی که می خوام پیدا نکردم. یعنی همشون یه مشکل داشتن و اونم این بود که کل شبکه را قطع میکنه نه اینترنت را.

mthreat.info
پنج شنبه 20 تیر 1392, 00:45 صبح
ببینید شما میتونید به کاربر ها (اکانت ها) مجوز بدید یکی فقط بازی یکی فقط اینترنت یکی هم هر دو و در عین حال کسی نتونه چیزی نصب کنه!!! (این قسمت رو میتونید دستی روی سرور درست کنید Policy "active Directory" بعد با فرستادن کد با برنامتون کاربر رو singout کنید و ...

توضیح (http://fa.wikipedia.org/wiki/%D8%A7%DA%A9%D8%AA%DB%8C%D9%88_%D8%AF%D8%A7%DB%8C% D8%B1%DA%A9%D8%AA%D9%88%D8%B1%DB%8C)
کتاب آموزش نصب اکتیو دایرکتوری و کار با آن در شبکه های محلی (http://www.irpdf.com/book-6552.html)
دانلود کتاب آموزش کار با اکتیو دایرکتوری در ویندوز سرور ۲۰۰۸ (http://www.parsbook.org/%DA%A9%D8%AA%D8%A7%D8%A8-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%DA%A9%D8%AA%DB%8C%D9%88-%D8%AF%D8%A7%DB%8C%D8%B1%DA%A9%D8%AA%D9%88%D8%B1%D B%8C)

amin_sltny
پنج شنبه 20 تیر 1392, 09:41 صبح
ببینید شما میتونید به کاربر ها (اکانت ها) مجوز بدید یکی فقط بازی یکی فقط اینترنت یکی هم هر دو و در عین حال کسی نتونه چیزی نصب کنه!!! (این قسمت رو میتونید دستی روی سرور درست کنید Policy "active Directory" بعد با فرستادن کد با برنامتون کاربر رو singout کنید و ...

توضیح (http://fa.wikipedia.org/wiki/%D8%A7%DA%A9%D8%AA%DB%8C%D9%88_%D8%AF%D8%A7%DB%8C% D8%B1%DA%A9%D8%AA%D9%88%D8%B1%DB%8C)
کتاب آموزش نصب اکتیو دایرکتوری و کار با آن در شبکه های محلی (http://www.irpdf.com/book-6552.html)
دانلود کتاب آموزش کار با اکتیو دایرکتوری در ویندوز سرور ۲۰۰۸ (http://www.parsbook.org/%DA%A9%D8%AA%D8%A7%D8%A8-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%DA%A9%D8%AA%DB%8C%D9%88-%D8%AF%D8%A7%DB%8C%D8%B1%DA%A9%D8%AA%D9%88%D8%B1%D B%8C)
خب میدونم دوست عزیز من این کارها را چه طوری باید در سی شارپ کنم. چه طوری باید policy را مدیریت کنم؟؟؟

hamid_hr
پنج شنبه 20 تیر 1392, 10:05 صبح
سلام
ببخشيد يك سوال:
روي كلاينت ها نرم افزارت كلاينت خودت نصب هست؟

amin_sltny
پنج شنبه 20 تیر 1392, 11:40 صبح
سلام
ببخشيد يك سوال:
روي كلاينت ها نرم افزارت كلاينت خودت نصب هست؟

بله. من یه برنامه سرور دارم و یه برنامه کلاینت که برنامه کلاینت دستورات را از برنامه سرور میگیره و کلاینت به آن عمل میکنه

hamid_hr
پنج شنبه 20 تیر 1392, 12:05 عصر
فقط اينترنت يك سيستم قطع بشه مشكلت حل ميشه البته با اون نرم افزار كلاينتت؟

mthreat.info
پنج شنبه 20 تیر 1392, 12:17 عصر
خب میدونم دوست عزیز من این کارها را چه طوری باید در سی شارپ کنم. چه طوری باید policy را مدیریت کنم؟؟؟
خوب این قسمت رو به صورت دستی انجام بده برای دیدن مجوز و ... هم که لینک گذاشته بودم ، متاسفانه من تو این زمینه کار نکردم وگر نه کد یا پروژه ی خودمو میزاشتم

amin_sltny
پنج شنبه 20 تیر 1392, 12:36 عصر
فقط اينترنت يك سيستم قطع بشه مشكلت حل ميشه البته با اون نرم افزار كلاينتت؟

بله. می خوام فقط اینترنت قطع بشه ولی ارتباط کلاینت از سرورم قطع نشه

hamid_hr
پنج شنبه 20 تیر 1392, 13:37 عصر
بفرما داداش
مياد default gateway رو عوض ميكنه
فقط برا كانكت شدن اي پي رو روي 192.168.1.1 گذاشتم ببين اي پي مودم خودت چند هست همونو بزار

107018

bazikadeh
جمعه 22 شهریور 1392, 12:42 عصر
آخر کسی نمیدونه چگونه من کانکشن های یک سیستم رو بتونم بگیرم و انتخاب کنم با کدوم بتونه وصل شه ؟

bazikadeh
سه شنبه 26 شهریور 1392, 16:17 عصر
نیست ؟ کسی نمیتونه راهنمایی کنه بابا مردیم

hamid_hr
سه شنبه 26 شهریور 1392, 16:47 عصر
http://msdn.microsoft.com/en-us/library/system.net.networkinformation.networkinterface.get allnetworkinterfaces%28v=VS.90%29.aspx

System.Net.NetworkInformation.NetworkInterface.Get IsNetworkAvailable()

bazikadeh
چهارشنبه 27 شهریور 1392, 15:44 عصر
بابا من همه رو خوندم ولی یکم سخته

bazikadeh
پنج شنبه 28 شهریور 1392, 17:37 عصر
نمیشه کسی بسازه چیزی که ما میخوایم دیگه این همه ننویسیم /