Guid های ویژوال استادیو

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

ASP.NET MVC 1.0 {603C0E0B-DB56-11DC-BE95-000D561079B0}
ASP.NET MVC 2.0 {F85E285D-A4E0-4152-9332-AB1D724D3325}
ASP.NET MVC 3.0 {E53F8FEA-EAE0-44A6-8774-FFD645390401}
ASP.NET MVC 4.0 {E3E379DF-F4C6-4180-9B81-6769533ABE47}
C# {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
C++ {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}
Database {A9ACE9BB-CECE-4E62-9AA4-C7E7C5BD2124}
Database (other project types) {4F174C21-8C12-11D0-8340-0000F80270F8}
Deployment Cab {3EA9E505-35AC-4774-B492-AD1749C4943A}
Deployment Merge Module {06A35CCD-C46D-44D5-987B-CF40FF872267}
Deployment Setup {978C614F-708E-4E1A-B201-565925725DBA}
Deployment Smart Device Cab {AB322303-2255-48EF-A496-5904EB18DA55}
Distributed System {F135691A-BF7E-435D-8960-F99683D2D49C}
Dynamics 2012 AX C# in AOT {BF6F8E12-879D-49E7-ADF0-5503146B24B8}
F# {F2A71F9B-5D33-465A-A702-920D77279786}
J# {E6FDF86B-F3D1-11D4-8576-0002A516ECE8}
Legacy (2003) Smart Device (C#) {20D4826A-C6FA-45DB-90F4-C717570B9F32}
Legacy (2003) Smart Device (VB.NET) {CB4CE8C6-1BDB-4DC7-A4D3-65A1999772F8}
Model-View-Controller v2 (MVC2) {F85E285D-A4E0-4152-9332-AB1D724D3325}
Model-View-Controller v3 (MVC3) {E53F8FEA-EAE0-44A6-8774-FFD645390401}
Model-View-Controller v4 (MVC4) {E3E379DF-F4C6-4180-9B81-6769533ABE47}
Mono for Android {EFBA0AD7-5A72-4C68-AF49-83D382785DCF}
MonoTouch {6BC8ED88-2882-458C-8E55-DFD12B67127B}
MonoTouch Binding {F5B4F3BC-B597-4E2B-B552-EF5D8A32436F}
Portable Class Library {786C830F-07A1-408B-BD7F-6EE04809D6DB}
SharePoint (C#) {593B0543-81F6-4436-BA1E-4747859CAAE2}
SharePoint (VB.NET) {EC05E597-79D4-47f3-ADA0-324C4F7C7484}
SharePoint Workflow {F8810EC1-6754-47FC-A15F-DFABD2E3FA90}
Silverlight {A1591282-1198-4647-A2B1-27E5FF5F6F3B}
Smart Device (C#) {4D628B5B-2FBC-4AA6-8C16-197242AEB884}
Smart Device (VB.NET) {68B1623D-7FB9-47D8-8664-7ECEA3297D4F}
Solution Folder {2150E333-8FDC-42A3-9474-1A3956D46DE8}
Test {3AC096D0-A1C2-E12C-1390-A8335801FDAB}
VB.NET {F184B08F-C81C-45F6-A57F-5ABD9991F28F}
Visual Database Tools {C252FEB5-A946-4202-B1D4-9916A0590387}
Visual Studio Tools for Applications (VSTA) {A860303F-1F3F-4691-B57E-529FC101A107}
Visual Studio Tools for Office (VSTO) {BAA0C2D2-18E2-41B9-852F-F413020CAA33}
Web Application {349C5851-65DF-11DA-9384-00065B846F21}
Web Site {E24C65DC-7377-472B-9ABA-BC803B73C61A}
Windows (C#) {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
Windows (VB.NET) {F184B08F-C81C-45F6-A57F-5ABD9991F28F}
Windows (Visual C++) {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}
Windows Communication Foundation (WCF) {3D9AD99F-2412-4246-B90B-4EAA41C64699}
Windows Phone 8/8.1 Blank/Hub/Webview App {76F1466A-8B6D-4E39-A767-685A06062A39}
Windows Phone 8/8.1 App (C#) {C089C8C0-30E0-4E22-80C0-CE093F111A43}
Windows Phone 8/8.1 App (VB.NET) {DB03555F-0C8B-43BE-9FF9-57896B3C5E56}
Windows Presentation Foundation (WPF) {60DC8134-EBA5-43B8-BCC9-BB4BC16C2548}
Windows Store (Metro) Apps & Components {BC8A1FFA-BEE3-4634-8014-F334798102B3}
Workflow (C#) {14822709-B5A1-4724-98CA-57A101D1B079}
Workflow (VB.NET) {D59BE175-2ED0-4C54-BE3D-CDAA9F3214C8}
Workflow Foundation {32F31D43-81CC-4C15-9DE6-3FC5453562B6}
Xamarin.Android {EFBA0AD7-5A72-4C68-AF49-83D382785DCF}
Xamarin.iOS {6BC8ED88-2882-458C-8E55-DFD12B67127B}
XNA (Windows) {6D335F3A-9D43-41b4-9D22-F6F17C4BE596}
XNA (XBox) {2DF5C3F4-5A5F-47a9-8E94-23B4456F55E2}
XNA (Zune) {D399B71A-8929-442a-A9AC-8BEC78BB2433}

 


سال1394 ، 5 فروردین

مقایسه SendWait با SendKey

مقایسه SendWait با SendKey

می خوام یک توضیح کوتاه اما مفید بدم برای مقایسه این دوتا ،تو سندکی sendkey متن را میفرسته و دیگه به چیزی منتظر نمیشه اما تو sendwait هرکاراکتری که وارد میکنه منتظر میشه تا پردازش ان کاراکتر تمام بشه تا کاراکتر بعدی را بفرسته

 

Key

Code

BACKSPACE

{BACKSPACE}, {BS}, or {BKSP}

BREAK

{BREAK}

CAPS LOCK

{CAPSLOCK}

DEL or DELETE

{DELETE} or {DEL}

DOWN ARROW

{DOWN}

END

{END}

ENTER

{ENTER}or ~

ESC

{ESC}

HELP

{HELP}

HOME

{HOME}

INS or INSERT

{INSERT} or {INS}

LEFT ARROW

{LEFT}

NUM LOCK

{NUMLOCK}

PAGE DOWN

{PGDN}

PAGE UP

{PGUP}

PRINT SCREEN

{PRTSC} (reserved for future use)

RIGHT ARROW

{RIGHT}

SCROLL LOCK

{SCROLLLOCK}

TAB

{TAB}

UP ARROW

{UP}

F1

{F1}

F2

{F2}

F3

{F3}

F4

{F4}

F5

{F5}

F6

{F6}

F7

{F7}

F8

{F8}

F9

{F9}

F10

{F10}

F11

{F11}

F12

{F12}

F13

{F13}

F14

{F14}

F15

{F15}

F16

{F16}

Keypad add

{ADD}

Keypad subtract

{SUBTRACT}

Keypad multiply

{MULTIPLY}

Keypad divide

{DIVIDE}

و برای دکمه های کنترلی می توانید از کد

 

Key

Code

SHIFT

+

CTRL

^

ALT

%

برای مثال در صورتی که می خواهید یک () تولید کنید می توانید از دستور

 

SendKey.SendWait("+(9)")
SendKey.SendWait("+(0)")
استفاده کنید

سال1394 ، 5 فروردین

روش‌هایی برای بهبود سرعت برنامه‌های مبتنی بر Entity framework

در این مطلب تعدادی از شایع‌ترین مشکلات حین کار با Entity framework که نهایتا به تولید برنامه‌هایی کند منجر می‌شوند، بررسی خواهند شد.

مدل مورد بررسی
 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class User
{
    public int Id { get; set; }
    public string Name { get; set; }
 
    public virtual ICollection<BlogPost> BlogPosts { get; set; }
}
 
public class BlogPost
{
    public int Id { get; set; }
    public string Title { get; set; }
    public string Content { get; set; }
 
    [ForeignKey("UserId")]
    public virtual User User { get; set; }
    public int UserId { get; set; }
}

کوئری‌هایی که در ادامه بررسی خواهند شد، بر روی رابطه‌ی one-to-many فوق تعریف شده‌اند؛ یک کاربر به همراه تعدادی مطلب منتشر شده.


مشکل 1: بارگذاری تعداد زیادی ردیف

1
var data = context.BlogPosts.ToList();

در بسیاری از اوقات، در برنامه‌های خود تنها نیاز به مشاهده‌ی قسمت خاصی از یک سری از اطلاعات، وجود دارند. به همین جهت بکارگیری متد ToList بدون محدود سازی تعداد ردیف‌های بازگشت داده شده، سبب بالا رفتن مصرف حافظه‌ی سرور و همچنین بالا رفتن میزان داده‌ای که هر بار باید بین سرور و کلاینت منتقل شوند، خواهد شد. یک چنین برنامه‌هایی بسیار مستعد به استثناهایی از نوع out of memory هستند.
راه حل:  با استفاده از Skip و Take، مباحث صفحه‌ی بندی را اعمال کنید.


مشکل 2: بازگرداندن تعداد زیادی ستون

1
var data = context.BlogPosts.ToList();

فرض کنید View برنامه، در حال نمایش عناوین مطالب ارسالی است. کوئری فوق، علاوه بر عناوین، شامل تمام خواص تعریف شده‌ی دیگر نیز هست. یک چنین کوئری‌هایی نیز هربار سبب هدر رفتن منابع سرور می‌شوند.
راه حل: اگر تنها نیاز به خاصیت Content است، از Select و سپس ToList استفاده کنید؛ البته به همراه نکته 1.

1
var list = context.BlogPosts.Select(x => x.Content).Skip(15).Take(15).ToList();


مشکل 3: گزارشگیری‌هایی که بی‌شباهت به حمله‌ی به دیتابیس نیستند


1
2
3
4
foreach (var post in context.BlogPosts)
{
     Console.WriteLine(post.User.Name);
}

فرض کنید قرار است رکوردهای مطالب را نمایش دهید. در حین نمایش این مطالب، در قسمتی از آن باید نام نویسنده نیز درج شود. با توجه به رابطه‌ی تعریف شده، نوشتن post.User.Name به ازای هر مطلب، بسیار ساده به نظر می‌رسد و بدون مشکل هم کار می‌کند. اما ... اگر خروجی SQL این گزارش را مشاهده کنیم، به ازای هر ردیف نمایش داده شده، یکبار رفت و برگشت به بانک اطلاعاتی، جهت دریافت نام نویسنده یک مطلب وجود دارد.
این مورد به lazy loading مشهور است و در مواردی که قرار است با یک مطلب و یک نویسنده کار شود، شاید اهمیتی نداشته باشد. اما در حین نمایش لیستی از اطلاعات، بی‌شباهت به یک حمله‌ی شدید به بانک اطلاعاتی نیست.
راه حل: در گزارشگیری‌ها اگر نیاز به نمایش اطلاعات روابط یک موجودیت وجود دارد، از متد Include استفاده کنید تا Lazy loading لغو شود.

1
foreach (var post in context.BlogPosts.Include(x=>x.User))


مشکل 4:  فعال بودن بی‌جهت مباحث ردیابی اطلاعات


1
var data = context.BlogPosts.ToList();

در اینجا ما فقط قصد داریم که لیستی از اطلاعات را دریافت و سپس نمایش دهیم. در این بین، هدف، ویرایش یا حذف اطلاعات این لیست نیست. یک چنین کوئری‌هایی مساوی هستند با تشکیل dynamic proxies مخصوص EF جهت ردیابی تغییرات اطلاعات (مباحث AOP توکار). EF توسط این dynamic proxies، محصور کننده‌هایی را برای تک تک آیتم‌های بازگشت داده شده از لیست تهیه می‌کند. در این حالت اگر خاصیتی را تغییر دهید، ابتدا وارد این محصور کننده (غشاء نامرئی) می‌شود، در سیستم ردیابی EF ذخیره شده و سپس به شیء اصلی اعمال می‌گردد. به عبارتی شیء در حال استفاده، هر چند به ظاهر post.User است اما در واقعیت یک User دارای روکشی نامرئی از جنس dynamic proxy‌های EF است. تهیه این روکش‌ها، هزینه‌بر هستند؛ چه از لحاظ میزان مصرف حافظه و چه از نظر سرعت کار.
راه حل: در گزاشگیری‌ها، dynamic proxies را توسط متد AsNoTracking غیرفعال کنید:

1
var data = context.BlogPosts.AsNoTracking().Skip(15).Take(15).ToList();


مشکل 5: باز کردن  تعداد اتصالات زیاد به بانک اطلاعاتی در طول یک درخواست

هر Context دارای اتصال منحصربفرد خود به بانک اطلاعاتی است. اگر در طول یک درخواست، بیش از یک Context مورد استفاده قرار گیرد، بدیهی است به همین تعداد اتصال باز شده به بانک اطلاعاتی، خواهیم داشت. نتیجه‌ی آن فشار بیشتر بر بانک اطلاعاتی و همچنین کاهش سرعت برنامه است؛ از این لحاظ که اتصالات TCP برقرار شده، هزینه‌ی بالایی را به همراه دارند.
روش تشخیص:


1
2
3
4
5
6
7
private void problem5MoreThan1ConnectionPerRequest()
{
    using (var context = new MyContext())
    {
        var count = context.BlogPosts.ToList();
    }
}

داشتن متدهایی که در آن‌ها کار وهله سازی و dispose زمینه‌ی EF انجام می‌شود (متدهایی که در آن‌ها new Context وجود دارد).
راه حل: برای حل این مساله باید از روش‌های تزریق وابستگی‌ها استفاده کرد. یک Context وهله سازی شده‌ی در طول عمر یک درخواست، باید بین وهله‌های مختلف اشیایی که نیاز به Context دارند، زنده نگه داشته شده و به اشتراک گذاشته شود.


مشکل 6: فرق است بین IList و IEnumerable

1
2
3
DataContext = from user in context.Users
                      where user.Id>10
                      select user;

خروجی کوئری LINQ نوشته شده از نوع IEnumerable است. در EF، هربار مراجعه‌ی مجدد به یک کوئری که خروجی IEnumerable دارد، مساوی است با ارزیابی مجدد آن کوئری. به عبارتی، یکبار دیگر این کوئری بر روی بانک اطلاعاتی اجرا خواهد شد و رفت و برگشت مجددی صورت می‌گیرد.
زمانیکه در حال تهیه‌ی گزارشی هستید، ابزارهای گزارشگیر ممکن است چندین بار از نتیجه‌ی کوئری شما در حین تهیه‌ی گزارش استفاده کنند. بنابراین برخلاف تصور، data binding انجام شده، تنها یکبار سبب اجرای این کوئری نمی‌شود؛ بسته به ساز و کار درونی گزارشگیر، چندین بار ممکن است این کوئری فراخوانی شود.
راه حل: یک ToList را به انتهای این کوئری اضافه کنید. به این ترتیب از نتیجه‌ی کوئری، بجای اصل کوئری استفاده خواهد شد و در این حالت تنها یکبار رفت و برگشت به بانک اطلاعاتی را شاهد خواهید بود.


مشکل 7: فرق است بین IQueryable و IEnumerable

خروجی IEnumerable، یعنی این عبارت را محاسبه کن. خروجی IQueryable یعنی این عبارت را درنظر داشته باش. اگر نیاز است نتایج کوئری‌ها با هم ترکیب شوند، مثلا بر اساس رابط کاربری برنامه، کاربر بتواند شرط‌های مختلف را با هم ترکیب کند، باید از ترکیب IQueryableها استفاده کرد تا سبب رفت و برگشت اضافی به بانک اطلاعاتی نشویم.


مشکل 8: استفاده از کوئری‌های Like دار

1
var list = context.BlogPosts.Where(x => x.Content.Contains("test"))

این نوع کوئری‌ها که در نهایت به Like در SQL ترجمه می‌شوند، سبب full table scan خواهند شد که کارآیی بسیار پایینی دارند. در این نوع موارد توصیه شده‌است که از روش‌های full text search استفاده کنید.


مشکل 9: استفاده از Count بجای Any

اگر نیاز است بررسی کنید مجموعه‌ای دارای مقداری است یا خیر، از Count>0 استفاده نکنید. کارآیی Any و کوئری SQL ایی که تولید می‌کند، به مراتب بیشتر و بهینه‌تر است از Count>0.


مشکل 10: سرعت insert پایین است

ردیابی تغییرات را خاموش کرده و از متد جدید AddRange استفاده کنید. همچنین افزونه‌هایی برای Bulk insert نیز موجود هستند.


مشکل 11: شروع برنامه کند است

می‌توان تمام مباحث نگاشت‌های پویای کلاس‌های برنامه به جداول و روابط بانک اطلاعاتی را به صورت کامپایل شده در برنامه ذخیره کرد. این مورد سبب بالا رفتن سرعت شروع برنامه خصوصا در حالتیکه تعداد جداول بالا است می‌شود.


سال1394 ، 4 فروردین

درج رکوردهای زیاد در EF

با وجود اینکه EF کارهای برنامه نویسی و توسعه نرم افزار را سرعت بخشیده است اما گاهی وقتها نیز این تکنولوژی بائث دردسرهای زیادی به توسعه گر و برنامه نویس برنامه متحمل می شود که از موارد ان می توان به کاهش سرعت به صورت قابل توجه در عملیات درج اشاره نمود که راهکاری هایی هم برای این موضوع پیشنهاد شده است که من به چند نمونه از این راهکارها اشاره خواهم نمود

 

 

using (var context = new dbContext())
{
    try
    {
        context.Configuration.AutoDetectChangesEnabled = false;
  
        foreach (var post aLotOfPos)
        {
            context.Post.Add(post);
        }
    }
    finally
    {
        context.Configuration.AutoDetectChangesEnabled = true;
    }
}
یا استفاده از درج بلوکی در دیتابیس که البته این روش نیازمند پلاگین می باشد که ابتدا از دستور زیر برای دانلود و نصب استفاده نمایید
Install-Package EntityFramework.BulkInsert-ef6

سپس با اجرا کد زیر می توانید این عملیات را انجام دهید
public ActionResult Insert()
        {
            int Counter = 1000;
            List Lst = new List();
            // شبیه سازی خواندن رکورد‌ها از فایل اکسل
            for (int i = 0; i < Counter; i++)
            {
                Lst.Add(new Personel
                {
                    CodeMelli = "0000000000",
                    Family = "Karimi",
                    Name = "Mohammad"
                });
            }
 
            PersonalContext db = new PersonalContext();
            db.BulkInsert(Lst);
            db.SaveChanges();
            return View();
        }

سال1394 ، 4 فروردین

DLP چیست وچه کاربردی دارد

DLP چیست و  DLP چه کاربردی دارد و DLP در کجا استفاده می شود؟

 

 

عبارت «امنیت شبکه» و «امنیت اطلاعات» معمولا به جای همدیگر مورد استفاده قرار می گیرد. با این حال هر کدام تعریف مشخصی دارند:
 
امنیت شبکه: فراهم کردن امکانات جهت حفاظت از شبکه در برابر نفوذگران و جلوگیری از رود آنان.
 
امنیت اطلاعات: محافظت از اطلاعات در برابر حمله ویروس ها و یا اشتباهات افراد و یا استفاده از تکنیک های جلوگیری از ازدست رفتن اطلاعات.(DLP)
 

DLP مخفف : data lose Prevention.

 
 

1-ﺷﻨﺎﺳﺎﻳﻲ، ﮔﺮوه ﺑﻨﺪي و اﻧﮕﺸﺖ ﻧﮕﺎری
 

2-رﻣﺰﻧﮕﺎري

 

3-ﺷﻨﺎﺳﺎﻳﻲ و ﺑﺴﺘﻦ راه ﮔﯿﺖ وي

 

4-ﻳﮑﭙﺎرﭼﻪ ﺳﺎزي اﻳﻤﯿﻞ

 

5-ﺳﺎزﻣﺎن دھﻲ ﺗﺠهیزات

 
 

1-ﺷﻨﺎﺳﺎﻳﻲ، ﮔﺮوه ﺑﻨﺪي و اﻧﮕﺸﺖ ﻧﮕﺎری
 
ویلیام فیرر(مشاور امنیت آی تی) ﻣﻲ ﮔﻮﻳﺪ: ﺷﻤﺎ ﻧﻤﻲ ﺗﻮاﻧﯿﺪ ھﺮ ﭼﯿﺰي را ﺣﺮاﺳﺖ ﮐﻨﯿﺪ. از اﻳﻦ رو، راھﮑﺎر، ﻓﻨﺎوري، ﺳﯿﺎﺳﺖ و ﺗﻌﻠﯿﻢ، ﺑﺨﺶ ھﺎﻳﻲ از اﻳﻦ ﻣﺮﺣﻠﻪ ﻣﺤﺴﻮب ﻣﻲ ﺷﻮﻧﺪ ﺗﺎ آﻧﭽﻪ ﮐﻪ ﺑﺎﻳﺪ از آن ﺣﺮاﺳﺖ ﺷﻮد، ﻣﺠﺰا ﺷﺪه و ﺑﺮ ﺣﺮاﺳﺖ از آن ﺗﻤﺮﮐﺰ ﺷود
 
 
 
2-رﻣﺰﻧﮕﺎري
رمزنگاری دانشی است که به بررسی و شناختِ اصول و روش‌های انتقال یا ذخیرهٔ اطلاعات به صورت امن (حتی اگر مسیر انتقال اطلاعات و کانال‌های ارتباطی یا محل ذخیره اطلاعات ناامن باشند) می‌پردازد
رمزنگاری استفاده از تکنیکهای ریاضی، برای برقراری امنیت اطلاعات است. دراصل رمزنگاری دانش تغییر دادن متن پیام یا اطلاعات به کمک کلید رمز و با استفاده از یک الگوریتم رمز است، به صورتی که تنها شخصی که از کلید و الگوریتم مطلع است قادر به استخراج اطلاعات اصلی از اطلاعات رمز شده باشد و شخصی که از یکی یا هر دوی آن‌ها اطلاع ندارد، نتواند به اطلاعات دسترسی پیدا کند
 
 
3-ﺷﻨﺎﺳﺎﻳﻲ و ﺑﺴﺘﻦ راه ﮔﯿﺖ وي
 
همونطور که از اسمش بر میاد دروازه شبکه شما به اینترنت است
یعنی بسته هایی که مقصد آنها خارج شبکه شماست تحویل گت وی داده میشه
 
 
4-ﻳﮑﭙﺎرﭼﻪ ﺳﺎزي اﻳﻤﯿﻞ
 
از آﻧﺠﺎ ﮐﻪ ﻣﺠﺮﻣﺎن اﻳﻤﯿﻞ را ﺑﺎ ﭘﯿﻮﻧﺪھﺎﻳﻲ ﺑﻪ ﮐﺎﻣﭙﯿﻮﺗﺮ آﻟﻮده ﻳﺎ از درون ﻳﮏ ﺳﺎزﻣﺎن ارﺳﺎل ﻣﻲ ﮐﻨﻨﺪ، ﻣﻘﺼﻮدي آﺳﺎن ﺑﺮاي دﺳﺘﺮﺳﻲ ﻏﯿﺮﻣﺠﺎز ﺑﻪ داده اﺳﺖ. ھﻤﮑﺎري ﻣﯿﺎن ﻋﺮﺿﻪ ﮐﻨﻨﺪﮔﺎن 
ﻣﺤﺼﻮﻻت اﻣﻨﯿﺖ و ﮔﯿﺖ وي اﻳﻤﯿﻞ ﻗﺴﻤﺘﻲ ﻗﺎﺑﻞ ﺗﻮﺟﻪ از ﻣﻌﻤﺎي DLP اﺳﺖ.
 اﺳﺘﯿﻨﻮن ﻣﻲ ﮔﻮﻳﺪ: ﺑﺴﯿﺎري از ﻋﺮﺿﻪ ﮐﻨﻨﺪﮔﺎن DLP ﺑﺎ ﻋﺮﺿﻪ ﮐﻨﻨﺪﮔﺎن ﮔﯿﺖ وي ھﺎي اﻳﻤﯿﻞ ھﻤﮑﺎري ﻣﻲ ﮐﻨﻨﺪ.
 
 
 
 
5-ﺳﺎزﻣﺎن دھﻲ ﺗﺠهیزات
 


با توجه به سیار بودن کارکنان و تجهیزات همراهشان مانند(لپتاپ و اسمارت فون ها و یو اس بی ها)، ابزار های امنیتی ای که به مراکز آی تی کمک می کند تا عملکرد دستگاه های هراه را کنترل کند.


سال1393 ، 26 دی
اولین 1 2 3 4 5  ... اخرین 
کلمات کلیدی
   key       فورود       Serialization       $_SERVER       MATLAB       AviDemux       mssql 2008       safe       recoverye       crackpassword       AspNet       send       +1       decode       prototyping       Wireshark       supra       woff       vs2012       معادله نویسی در ورد       domin       بدست آوردن Description فيلد جدول :       texte       ایجاد وب سرور       wireless       meta       via       صفحه بندی sql       C#,sql server       waterfall       database       PPPoE       اسمس       info       color       html       http       کمپین       TextBox       sql       convert       photoshop       razor       الگوریتم       EF,code first       blukinseert       A       disk       asp.net mvc       name space    

صفحات ما در فیس بوک
Oracle 11G



Google ++

طراحی وب سایتطراحی وب سایت با جدیدترین تکنولوژی های روز

طراحی و پیاده سازی وب سایتهای شخصی و تجاری و اداره ای با جدیدترین تکنولوژی های دنیا
به زبانهای

Asp.net{C#, Vb.Net, J#, Ajax}, Php{Html, Ajax}, js



بهینه سازی صفحات وببهینه سازی صفحات وب برای موتورهای جستجو

بهینه سازی صفحات وب برای موتور های جستجوگر برای افزایش بازدید و معرفی بهتر برای کاربران که به اصتلاح seo نامیده میشود

برنامه نویسیتولید و ساخت نرم افزار

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