ايران ويج

نسخه‌ی کامل: 1001 نكته در #C
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3
منظورم متغیر searcher بود ولی هیچ جا تعریف نشده .
کد:
foreach (ManagementObject mo in searcher.Get())
شما کد رو اجرا کنید!!! ممنون که دقت نظر دارین.
اجرا کردن یک برنامه بدون نمایش دادن پنجره آن یعنی فقط در Process قرار دارد و اجرا میش
کد:
1.System.Diagnostics.ProcessStartInfo process_i = new  System.Diagnostics.ProcessStartInfo();
2.           process_i.FileName = "Notepad.Exe";
3.           process_i.Windowstyle=System.Diagnostics.ProcessWindowStyle.Hidden;
4.           System.Diagnostics.Process process = new  System.Diagnostics.Process();
5.           process.StartInfo = process_i; process.Start();
دادن اولویت به یک پردازش (Set Priority)
کد:
1.System.Diagnostics.Process process = new  System.Diagnostics.Process();
2.process.StartInfo.FileName= "Notepad.Exe";
3.process.Start();
4.process.PriorityClass =  System.Diagnostics.ProcessPriorityClass.High; //High - Normal -  AboveNormal - RealTime - Low
اگه در برنامتون بخايد از برقراري ارتباط با اينترنت اطمينان حاصل كنيد ، كد زير اين كار رو براتون انجام ميده :
کد:
bool NETAVL;
Microsoft.VisualBasic.Devices.Network AVL = new Microsoft.VisualBasic.Devices.Network();
NETAVL = AVL.IsAvailable;

switch (NETAVL)
{
    case true:
        MessageBox.Show("Internet Is Available");
        break;
    case false:
        MessageBox.Show("Internet Is Not Available");
        break;
}
لبته قبلش يادتون باشه رفرنس Microsoft.VisualBasic رو به پروژتون اضافه كنيد .
با عرض سلام خدمت تمام دوستان عزیز ؛ دوستان تا حالا با الگوریتم های مختلف رمز نگاری

و هشینگ و کدینگ و ... آشنایی داشتند از جمله : AES , RSA , MD5 , ... که تو همشون

رشته ورودی معمولا تبدیل میشد باز به رشته ای از حروف و کاراکتر ها !

اینبار من با یک ایده خیلی ساده ولی کاربردی ، برنامه ای نوشتم که یک رشته رو کد میکنه

به اعداد 0 و1 (باینری) که در واقع خوبی این روش اینه که به احتمال خیلی زیاد کشف کردن

رشته ورودی از روی یکسری اعداد دودویی (صفر و یک) کار آسانی نخواهد بود .

(بشرطی که الگوریتم برنامه در دسترس نباشد )
اگه بخوایم داده تکراری وارد وارد جدول نکنیم. میشه از قطعه کد زیر کمک گرقت.
کد:
SqlDataAdapter1.Fill(DataSet1, "m1")
        DataGridView1.DataSource = DataSet1
        DataGridView1.DataMember = "m1"
که البته باید قبل از دستور insert و بعد از دستور select قرار بگیره.
بعد با یک جستجوی ساده روی اطلاعات دیتا گرید میشه فهمید که اطلاعات تکراری هست یا نه.
(۲۸-اردیبهشت-۱۳۸۹, ۰۱:۵۴:۵۲)moam نوشته است: [ -> ]خوبی این روش اینه که به احتمال خیلی زیاد کشف کردن رشته ورودی از روی یکسری اعداد دودویی (صفر و یک) کار آسانی نخواهد بود .

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

(۳۰-اردیبهشت-۱۳۸۹, ۲۳:۵۰:۳۸)moam نوشته است: [ -> ]اگه بخوایم داده تکراری وارد وارد جدول نکنیم. میشه از قطعه کد زیر کمک گرقت.

با یه select با شرط و count و یه ExecuteScalar خیلی راحت تر میشه اینکارو کرد.
(۳۱-اردیبهشت-۱۳۸۹, ۱۳:۴۰:۲۴)ajlajlajl نوشته است: [ -> ]
(۲۸-اردیبهشت-۱۳۸۹, ۰۱:۵۴:۵۲)moam نوشته است: [ -> ]خوبی این روش اینه که به احتمال خیلی زیاد کشف کردن رشته ورودی از روی یکسری اعداد دودویی (صفر و یک) کار آسانی نخواهد بود .

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

(۳۰-اردیبهشت-۱۳۸۹, ۲۳:۵۰:۳۸)moam نوشته است: [ -> ]اگه بخوایم داده تکراری وارد وارد جدول نکنیم. میشه از قطعه کد زیر کمک گرقت.

با یه select با شرط و count و یه ExecuteScalar خیلی راحت تر میشه اینکارو کرد.

جسارتا حمل بر بی ادبی نشه ولی توضیحاتی که لطف فرمودین و نوشتین کلا خودشونو نفی می کنن ولی چشم
من که نفهمیدم منظورت چیه، چه برسه به این که حمل بشه یا نه :d
ببخشید که وسط بحث پریدم.اما فکر کردم ارزش ایجاد موضوع جدید رو نداره.

سوالی که من دارم اینکه چطوری از background Worker استفاده کنم؟ میشه به زبان ساده توضیح بدین.
تو یه Backgroundworker .
برنامه ای که میخواید جدا گونه اجرا بشه رو توی رویداد DoWork بنویسید. توی این. با ReportProgress میزان پیشرفت کار رو میدید به پروسه اصلی ( شما از این تابع به هیچ شیئی که توی پروسه اصلی باشه دسترسی ندارید ). نتیجه رو هم میریزید توی e.Result

با رویداد RunWorkerCompleted میفهمید که کار تمومه
با رویداد ProgressChanged هم مقداری که با ReportProgress فرستادید رو میتونید بگیرید
با RunWorkerAsync هم کارو راه میندازید.

یه توضیح خلاصه در حد ارزش یه تاپیک رو نداشتن :d
اگه بیشتر توضیح میخواید یه تاپیک دیگه بزنید .
سلام.
اگر در task manager ویندوز در قسمت process به برنامه ی خودتان که با حداکثر قدرت خود مشغول انجام محاسبات است ، دقت کنید ،می فهمید(بسته به تعداد هسته های cpuو فرکانس آنها) که تنها قسمتی (درصد کمی از cpu ) توسط برنامه مورد استفاده قرار میگیرد.

من با استفاده از کلاس Thread توانستم از 100 % cpu استفاده کنم.(در حالت عادی (با یک thread{main Thread} x ) فقط 13 % (در cpu مال من) cpu مشغول می شد.)

این یعنی سرعتی چند برابر نسبت به حالت عادی در پردازش!

برای استفاده ی بیشتر از cpu کافی است چند thread ایجاد کنید و عملیات را در بین آنها تقسیم کنید.

برای ایجاد thread ابتدا using System.Threading را اضافه کنید سپس با استفاده از کد زیر thread را تعریف کنید . با اجرای دستور NAME.Start ، عملیات شروع می شود.

مثال:
کد:
Thread t1 = new Thread(new ThreadStart(delegate()
{

int m = 0;
for (int i = 0; i != 100000; i++)
{
m = (i / 3) + (i / 2) + (i / 3) + (i / 2) + (i / 3) + (i / 2);
}
MessageBox.Show(m.ToString());
}));
t1.Start();
صفحه‌ها: 1 2 3