Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Находки, заметки и ссылки


Автор: AntonSaburov 29.3.2003, 21:36
Всем привет !

Данная тема появилась по нескольким причинам:
1. Хотелось бы все-таки, чтобы у нас посетители появлялись чаще.
2. Т.к. технология достаточно новая для многих на просторах СНГ (да вообщем-то и по миру), то какой-либо FAQ устраивать пока не получается - мало информации

Здесь будут пока собираться ваши находки, которые могут как-то помочь в освоении .NET.
Возможно, что в дальнейшем этот раздел превратиться во что-то более понятно. Ну а пока пусть будет в таком виде.

Все ваши находки вы можете опубликовывать сразу - тема не будет закрыта.

Большая просьба - подходите ответственно, публикуйте только проверенную информацию.[b]

Автор: AntonSaburov 29.3.2003, 21:37
Спасибо cully

Вот наткнулся на тот компонентик, который отображает свойства компонентов в VS .NET. Может это для кого-то и не новость, но все же. Идем в Toolbox, из контекстного меню выбираем Customize Toolbox, закладка .NET Framework Components, ищем там Property Grid, добавляем на Toolbox, выбираем, кидаем на форму, при загрузке формы такой код:

Код

private void frmMain_Load(object sender, System.EventArgs e)
{
  propertyGrid1.SelectedObject = this;
}


и далее в рунтайме меняем любые свойства формы, естественно, что этот компонент может редактировать свойства любого объекта. Т.е. в свое распоряжение мы получили довольно удобный, симпатичный, а главное мощный компонент редактор свойств.

Автор: AntonSaburov 29.3.2003, 21:39
Данная заметка не претендует на истину в последней инстанции - если кто-то нашел иное решение проблемы, милости прошу свои комментарии.

Итак, как только я стал разбираться с тредами мне само собой захотелось передать параметры в функцию, которая в этом треде исполняется. Увидев стандартное использование тредов, я не нашел возможности передать параметры и полез в MSDN (а куда же еще). И что я там вижу

Код
 
using System;
using System.Threading;

public class SimpleThread{

 public delegate void Start (object o);

 private class Args{
    public object o;
    public Start s;
    public void work(){
    s(o);
 }
 }

 public static Thread CreateThread (Start s, Object arg){

    Args a = new Args();
    a.o = arg;
    a.s = s;
    Thread t = new Thread (new ThreadStart (a.work));
    return t;
 }
}

class Worker{
 public static void WorkerMethod(object o){
    Console.WriteLine ("WorkerMethod: " + o);
 }
}

public class Work{
 public static void Main(){
    Thread t = SimpleThread.CreateThread (new SimpleThread.Start(Worker.WorkerMethod), 51);
    t.Start ();
    t.Join (Timeout.Infinite);
 }
}


Может я и стал с годами тупее, но сразу осознать, что и как происходит, к своему сожалению, я не смог.
После того, как я все-таки разобрался, я стал укладывать все в понятное русло для того, чтобы использовать технику передачи параметров в дальнейшем. И тут я понял еще более неприятное - я не могу это делать просто и понятно для себя.

После некоторых раздумий и проб я пошел по пути, который напоминает работу с тредами в JAVA - наследование класса Thread. Но т.к. наследовать в NET от Thread нельзя пришлось писать класс-обертку, после которой я все-таки смог увидеть, как мне быстро делать треды и использовать параметры.

Идея очень простая и иллюстрируется кодом:

Код

using System;
using System.Threading;

public class MyThread
{
  private Thread intThread;
  public int param1;
  public int param2;

  public MyThread(int new_param1, int new_param2)
  {
      param1 = new_param1;
      param2 = new_param2;
      intThread = new Thread(new ThreadStart(MyHandle));
  }

  public void Start()
  {
      intThread.Start();
  }

  private void MyHandle()
  {
      // Код процедуры, которая может использовать param1 и param2
      Console.WriteLine("Param1={0} Param2={1}", param1, param2);
  }
}

public class Worker
{
  public static void Main()
  {
      MyThread my = new MyThread(10,20);
      my.Start();
      Thread.Sleep(5000);
      Console.WriteLine("Finished");
  }
}


Данный пример в принципе должен давать исчерпывающие ответ.
Видно, что теперь мы можем передавать любое количество параметров понятным способом. Во всяком случае мне гораздо проще использовать такой подход, нежели который предлагает Microsoft.

Я не гарантирую, что кто-то такое уже не придумал, но пусть эта информация не пропадет.

Автор: Baa 30.3.2003, 20:24
Появилась нужда узнать имя хоста из днс по его ип...
вот так это решается:
Код

using System.Net;
...
textBox1.Text = Dns.GetHostByAddress ("10.13.13.181").HostName;

з.ы. а вообще, сначала был против ентой техи (я про .NET), а теперь даже нравится smile.gif распробовал wink.gif

Автор: AntonSaburov 9.4.2003, 11:37
Данная информация для начинающих изучать WebApplication + ASP.

Все достаточно быстро соображают, что для создания WebApplication необходимо запустить IIS. Но как потом оказывается, этого недостаточно. Положив на форму какие-нибудь контролы, запускаем и ... страничка приходит без них.

Для того, чтобы IIS понимал, как обрабатывать такие страницы, необходимо установить дополнительные расширения. Для этого необходимо запустить файл

aspnet_regiis.exe -i

Обычно он находится в каталоге с csc.exe, ildasm.exe - WINNT\Microsoft.NET\Framework\v1.0.3705.
Последний каталог может отличаться - зависит от номера билда .NET

Автор: simanyay 18.4.2003, 15:26
Не знаю, насколько это заметка, но всё же... Лично я на этом попался. При объявлении указателя в С++ действия оператора * не распространяется на весь список переменных т.е.
int* p, q; // Указатель только p
А вот в C# распространяется:
int* p, q; // Указатель и p и q

Автор: AntonSaburov 18.4.2003, 17:03
Модератор:
Прошу всех не заниматься обсуждением находок в данном топике. Если есть вопросы - открывайте новую тему.
И прошу не обижаться - такого рода сообщения буду удалять.

Автор: AntonSaburov 21.4.2003, 11:58
"Как в VS.net работать с EXСEL"

Т.к. эта тема фактически является темой "Как работать с COM из .NET", то родился такой экспромт biggrin.gif


1. Создаем новый проект в .NET.
2. В Solution Explorer (Ctrl+Alt+L) на пункте Reference щелкаем правой кнопкой мыши и выбираем "Add Reference..."
3. В диалоговом окошке "Add Reference" выбираем закладку COM и там находим Microsoft Excel.
4. Делаем Select.
5. Нажимаем OK

Теперь можно работать.
Для примера просто поднимем Excel

Код

private void button3_Click(object sender, System.EventArgs e)
{
   Excel.Application ap = new Excel.Application();
   ap.Visible = true;
}


Если глянуть в каталог bin, то можно увидеть, что созданы дополнительные dll, которые по сути являются .NET обертками вокруг нужных COM-объектов. Обычно они имеют префикс Interop.*. Например для Excel будет Interop.Excel.dll.

Для более продвинутых программистов, которые могут определить какой файл необходимо обработать можно использовать утилиту tlbimp.
Ее описание можно найти в документации.

Автор: AntonSaburov 21.4.2003, 12:01
ВОПРОС
Приветствую, господа!
Обращаюсь к Вам с вопросом по C#. У меня проблема с программным назначением событий. Вроде делаю все правильно, но ничего не выходит. Ниже приведена часть кода реализующего всего лишь пару операций:
1) создать страничку TabPage в уже имеющимся TabControl на форме
2) поставить на нее (TabPage) один комонент RichTextBox
3) назначить событие ModifiedChanged для RichTextBox'a
4) изменить счетчики для правильности внутренней работы приложения.
После выполнения этого кода, функция ProgrammChanged(...) просто не выполняется. Может быть я что-то не так делаю? (скорее всего так оно и есть)

Код

int FilesCount=0;
int CurrentFile=0;

struct TFile
{
 public string Name;
 public bool Modified;
 public bool HavePath;
 public TabPage FilePage;
 public RichTextBox ProgData;
};

TFile[] OpenFiles;

private void ProgrammChanged(object sender, EventArgs e)
{
 OpenFiles[CurrentFile].Modified=true;
}

void OpenFilePage(string Name, bool Modified, bool HavePath)
{
 if (FilesCount==10)
 {
 MessageBox.Show(this, "You can't open more than 10 files. Please close one of them to create new one.", "Error");
 }
 else
 {
 OpenFiles[++FilesCount-1].Name=Name;
 OpenFiles[FilesCount-1].Modified=Modified;
 OpenFiles[FilesCount-1].HavePath=HavePath;
 OpenFiles[FilesCount-1].FilePage = new TabPage(); // (1)
 OpenFiles[FilesCount-1].FilePage.Text=Name;
 FilesControl.TabPages.Add(OpenFiles[FilesCount-1].FilePage);
 OpenFiles[FilesCount-1].ProgData = new RichTextBox(); // (2)
 OpenFiles[FilesCount-1].ProgData.Parent=OpenFiles[FilesCount-1].FilePage;
 OpenFiles[FilesCount-1].ProgData.Dock=DockStyle.Fill;
 OpenFiles[FilesCount-1].ProgData.ModifiedChanged += new EventHandler(this.ProgrammChanged); // <-- HERE !!! (3)
 CurrentFile=FilesCount-1; //(4)
 FilesControl.SelectedIndex=CurrentFile;
 }
}

private void MainForm_Load(object sender, System.EventArgs e)
{
 OpenFiles = new TFile[10];
 OpenFilePage("Undefined", false, false);
}



ОТВЕТ
Я поэкспериментировал - действительно, достаточно странное поведение. Хотя понять его можно.

Вообщем дело в следующем - если просто меняешь текст в RichEdit, то Modified устанавливается в true. Но НИКАКИХ обработчиков при таком изменении текста не вызывается.

А вот если ты ручками меняешь Modified на противоположное значение, то функция вызывается.
Т.е. если ты менял текст, то Modified устанавливается в TRUE и при установке его в FALSE обработчик вызывается. Если ты не менял текст и решил поставить Modified в TRUE, то обработчик опять же вызывается.

В принципе логика объяснима - если текст имеет признак, что его МЕНЯЛИ, то смена признака на то, что его НЕ МЕНЯЛИ должно приводить к некоторым действиям по обработке такого важного события.
И обратное событие тоже - НЕ МЕНЯЛИ на МЕНЯЛИ.

Автор: neutrino 24.4.2003, 11:43
Приветствую, господа!

Вот код, который я состряпал для нахождения положения каретки в RichTextBox.

Цитата

RichTextBox MyTextBox;

void main()
{
    MyTextBox = new RichTextBox();
    MyTextBox.Parent = Form1;
    MyTextBox.Dock = DockStyle.Fill;
    MyTextBox.SelectionChanged += new EventHandler(this.CaretMoved);
}

void CaretMoved(object sender, EventArgs e)
{
    int SLen=0;
    System.Drawing.Graphics G = MyTextBox.CreateGraphics();
    int Rows = MyTextBox.GetLineFromCharIndex(MyTextBox.SelectionStart);
    int Cols = MyTextBox.SelectionStart;
    for (int I=0;I<MyTextBox.Lines.GetLength(0); I++) {
        SLen+=MyTextBox.Lines[I].Length+1;
        if (SLen>Cols) break;
    }
    if ((I==MyTextBox.Lines.GetLength(0)-1)&&(MyTextBox.Lines[I]=="")) Cols=0;
    else {
        Point P=MyTextBox.GetPositionFromCharIndex(Cols);
        Cols-=MyTextBox.GetCharIndexFromPosition(new Point(0, P.Y));
    }
    statusBar.Panels[0].Text = "Col: " + (Cols+1).ToString();
    statusBar.Panels[1].Text = "Row: " + (Rows+1).ToString();
}

Автор: AntonSaburov 19.6.2003, 19:29
Баги и их последствия:
Это то, что я успел накопать при работе с .NET. Теперь делюсь.

1. При отладке приложения если строка содержит 0 в центре строки, то в окне Watch вы увидите
только, что находится до 0. А дальше ничего. Хотя строка реально может быть длиннее.
И дебагер Вам скажет, что длина именно до нуля. Вот такой вот дебагер.

2. Array.GetValue(idx). На эти грабли я наступил часа на два - по документации он должен
возвращать Exception в случае, если индекс выходит за границы массива. Так вот функция просто
прерывается и все. Никаких исключений под дебагером, никаких исключений в RunTime.
А так как этот вызов у меня был последним в функции, то повис я с ним ...

Автор: stab 5.10.2003, 02:45
почти 7 (семь) месяцов назад мною была поднята следующая тема:

http://forum.vingrad.ru/index.php?act=ST&f=47&t=6749

... и вот решение найдено smile.gif


Код

using System.Runtime.InteropServices;
using System.Reflection;
using System.Reflection.Emit;

...

 private void button1_Click(object sender, System.EventArgs e)
 {
  AssemblyName an = new AssemblyName();
  an.Name = "BeepAssembly";
  AssemblyBuilder ab = AppDomain.CurrentDomain.DefineDynamicAssembly(an, AssemblyBuilderAccess.Run);
  ModuleBuilder mb = ab.DefineDynamicModule("BeepModule");
  TypeBuilder tb = mb.DefineType("BeepClass", TypeAttributes.Public);
  MethodBuilder meb = tb.DefineMethod("Beep", MethodAttributes.Public | MethodAttributes.Static | MethodAttributes.PinvokeImpl, null, new Type[] {typeof(int), typeof(int)});
  CustomAttributeBuilder cab = new CustomAttributeBuilder(typeof(DllImportAttribute).GetConstructor(new Type[] {typeof(string)}), new Object[] {"kernel32.dll"});
  meb.SetCustomAttribute(cab);
  tb.CreateType();
  tb.InvokeMember("Beep", BindingFlags.Public | BindingFlags.Static | BindingFlags.InvokeMethod, null, null, new Object[] {1000, 500});

 }


сей код динамически вызывает Beep(...) из kernel32

з.ы. жалко AntonSaburov больше не появляется, он бы порадовался.

Автор: AntonSaburov 28.10.2003, 17:36
Возникла тут задача - добавить пункт в системное меню. После некоторого думания и хождениа по MSDN и Инету родилось вот такое. (Кусок просто добавляется к форме)

Код

public const Int32 WM_SYSCOMMAND = 0x112;
public const Int32 MF_SEPARATOR = 0x800;
public const Int32 MF_STRING = 0x0;
public const Int32 IDM_ABOUT  = 1000;

private void frmMain_Load(object sender, System.EventArgs e)
{
   IntPtr sysMenuHandle = GetSystemMenu(this.Handle, false);
   AppendMenu(sysMenuHandle, MF_SEPARATOR, 0, string.Empty);
   AppendMenu(sysMenuHandle, MF_STRING, IDM_ABOUT, "About PC SW...");  
}

[DllImport("user32.dll")]
private static extern IntPtr GetSystemMenu(IntPtr hWnd, bool bRevert);

[DllImport("user32.dll")]
private static extern bool AppendMenu (IntPtr hMenu, Int32 wFlags, Int32 wIDNewItem, string lpNewItem);

protected override void WndProc(ref Message m)
{
   if(m.Msg == WM_SYSCOMMAND)
   {
       switch(m.WParam.ToInt32())
       {
           case IDM_ABOUT :
               System.Windows.Forms.MessageBox.Show("About ...");
               return;
           default:
               break;
       }
   }
   base.WndProc(ref m);
}

Автор: foRaver 14.11.2003, 00:49
Незнаю, может кому и пригодится...
у меня тут по C# книжечка вPDF завалялась от O'Ryllie...
и по VB.NET (language in nutshell), тоже от этого-же издания.
Если кому надо, обрашажтесь. ;)

Автор: AntonSaburov 16.12.2003, 17:45
Спасибо dead_ricky
Вопрос
Установил VS.NET и MSDN к нему. Запуская VS нажимаю F1 вылазиет сообщение что мол MSDNа, то нету, мол нажмите F1 для того что бы узнать чтобы делать далеьше.
Так вот если нажать этот F1, то там предлагают установить MSDN, а если нажать OK (на этом диалоговом окне с мерзким сообщением) или Esc, то все ништяк, MSDN прекрасно работает.
Ну меня это сообщение раздаражает, может кто знает как от него избавиться!

Ответ
Все, проблема решена! Если кому интересно, то могу рассказать как.
А вот как.
У меня версия VS 7.1 а MSDN под 7.0. Полазив в реестре, в узле:
[H(точно не помню)\Software\Microsoft\VisualStudio\...]
нашел две папки (или как их там): 7.0 и 7.1. В обоих папках были папки Help.
Малость посмотрев на них и особо ничего не поняв, решил папку 7.1\Help заменить папкой 7.0\Help.
И все заработало! Т.е. исчезли все мерзкие сообщения!

Автор: foRaver 5.1.2004, 23:26
Может слегка не по теме, но вот что я нашел: IDE для разработки программ на C#, VB.NET & Java
Примерное подобие VS.NET только абсолютно бесплатно!

Скачать можно тут: http://heanet.dl.sourceforge.net/sourceforge/sharpdevelop/098setup.exe
user posted image

Единственныж недостаток: если пишешь
Код
system.windows.forms.messagebox("Hello World");

например, то
покажет ошибку, т.к. компнент system нена&#250;ден.
Но если пишешь
Код
System.Windows.Forms.MessageBox("Hello World");

, то всё работает нормально.
Короче, проще сказать: отсутсвуют многие элементы Intelly Sence.
Т.е. надо соблюдать правописание и большие-маленкие буквы. В этой IDEнет Debuger'a требует JIT Debuger Вот пока и всё

Автор: AntonSaburov 22.1.2004, 10:24
Спасибо foRaver.

Линки примеров программирования под OpenGl

Нашел, вот тебе пару линков:
http://www.codeproject.com/csharp/csOpenGL.asp

http://www.developerfusion.com/show/3823/
http://www.developerfusion.com/show/3930/

Автор: chipset 4.4.2004, 02:35
если ещё кому нить интересно то вот C# Basecode для OpenGL
http://nehe.gamedev.net/counter.asp?file=files/basecode/nehegl_csharp.zip

Автор: ElectricalStorm 6.5.2004, 10:01
Случайно наткнулся WinForms FAQ

http://www.syncfusion.com/FAQ/WinForms/default.asp

Автор: Paradox 20.8.2004, 13:45
Есть предложение...
Так как до сих пор у многих возникают вопросы о том что такое .NET, с чем его едят и так далее
давайте в этом топике собирать ссылки на полезные и интересные ресурсы по этой технологии
начну с себя, надеюсь, что начинание получит поддержку

http://www.uran.donetsk.ua/~masters/2002/fvti/drugobitskiy/library/.NET_arch.htm

Автор: arilou 23.8.2004, 13:59
На мой взгляд, лучший ресурс по .NET - http://www.codeproject.com раздел .NET.

Автор: mr.DUDA 29.8.2004, 13:33
Нашёл через codeproject.com кульную вещь, просто в восторге - не могу не поделиться. Называется она Reflector, и является заменой убогому ildasm.exe. Позволяет не только бродить по сборке(-кам) с пом. сверхудобной системы навигации, но и дизассемблирует код сборки в C#/VB/Delphi/IL по выбору (очень интересно и познавательно было заглянуть в mscorlib, "написанный" на C# smile.gif). Утилка бесплатная.

В общем, кому интересно - качать и смотреть тут:
http://www.aisto.com/roeder/dotnet/

Автор: Vaulter 1.9.2004, 13:03
понадобилось мне поставить делагат на событие OnIdle... (сообщение винды приложению, когда оно "отдыхает")
после минуты тыкания родилось
делается это так
Код
public Form1()//конструктор главной формы приложения
{
  //
  // Required for Windows Form Designer support
  //
  InitializeComponent();
  //
  // TODO: Add any constructor code after InitializeComponent call
  //
  Application.Idle+=new System.EventHandler(this.App_OnIdle);
}
private  void App_OnIdle(object sender,EventArgs e)
{
// ваш код тут
}

ставить делегат в InitializeComponent(); не рекомендую, т.к. WindowsFormDesigner его постоянно будет перезаписывать своим кодом.

Автор: Stalnoj 20.10.2004, 13:21
Вот очень хороший сайт по программированию вообще (для .NET выделен раздел): http://www.realcoding.net/ Всем советую.

Автор: Leska 21.10.2004, 13:30
Иллюстрированный самоучитель по Visual Studio . NET
http://ruhelp.org/pages/det.php?file=visual_studio_net.rar

Автор: [Last]Wizard 27.10.2004, 12:09
Вот тут понадобилось недавно создать Windows.Forms приложение на .NET, причем такое, которое бы поддерживало визуальные стили WinXP. То есть всякие красивые кнопочки, списки, и т.д.
Вот какое получилось решение.

Для начала необходимо написать так называемый манифест, то есть XML файл приблизительно такого содержания:

Код
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
   version="1.0.0.0"
   processorArchitecture="X86"
   name="CompanyName.ProductName.YourApplication"
   type=".NET"
/>
<description>Your application description here.</description>
<dependency>
   <dependentAssembly>
       <assemblyIdentity
           type="win32"
           name="Microsoft.Windows.Common-Controls"
           version="6.0.0.0"
           processorArchitecture="X86"
           publicKeyToken="6595b64144ccf1df"
           language="*"
       />
   </dependentAssembly>
</dependency>
</assembly>


Назвать его необходимо так: <AppName>.exe.manifest где AppName - имя исполняемого файла приложения.
Затем необходимо открыть сам exe-файл с помощью Visual Studio .NET. (Solution Explorer -> Show All Files). Откроются ресурсы приложения. Затем надо добавить наш манифест в ресурсы приложения (Edit -> Add Resource...). Откроется диалог, на котором нажимаем кнопку Import, выбираем наш манифест, после чего появляется предложение ввести тип ресурса. Вводим RT_MANIFEST и нажимаем Ok. Затем в окне свойств нужно поменять значение ID нового ресурса на 1.
Остается только сохранить exe-файл и запустить его. Внеший вид элементов управления* будет зависеть от текущей темы WindowsXP.
Кроме того, при последующих сборках информация о манифесте из exe-файла теряется. Но если манифест будет лежать рядом с exe-файлом (то есть в той же директории), то он будет использоваться вместо ресурса.

* не все контролы поддерживают визуальные стили WinXP. Например, если контрол имеет свойство FlatStyle, то ему необходимо присвоить значение FlatStyle.System. Есть контролы, которые вообще не поддерживают или поддерживают не полностью визуальные стили XP (CheckedListBox (частично), NumericUpDown, DomainUpDown, DataGrid (частично))

Автор: Kurt 2.11.2004, 15:02
[Last]Wizard
Все можно сделать гораздо проще, как рекомендовано самим M$.
Для этого в ф-ции Main перед строкой
Код
Application.Run(new Form1());

просто вставляем строчку
Код
Application.EnableVisualStyles();


Т.е. в итоге получаем:
Код
Application.EnableVisualStyles();
Application.Run(new Form1());

Все. Эффект такой же, как и для манифеста.
Enjoy it. :)

Автор: Дрон 3.11.2004, 00:02
Kurt
Только поддерживается это начиная с .NET framework 1.1

Автор: Guest 17.11.2004, 22:03
http://progs.biz
Основы C#:
http://progs.biz/csharp/csharp/csharp01.aspx
C# для Windows:
http://progs.biz/csharp/win/win01.aspx
VB.NET:
http://progs.biz/vbnet/vbnet01.aspx

Автор: Valera 6.12.2004, 15:31
Посмотрите программу ASPNetNow www.aspnetnow.com
по-моему заслуживает внимания. Это генератор кода. Работает быстро, красиво, но правдо очень дорого.

Автор: [Last]Wizard 8.12.2004, 20:57
Тут на днях странная штука обнаружилась.

Оказывается можно реализовывать члены интерфейса в классе как private. Причем для интерфейса они будут видны, а для класса - нет.
То есть, например:
Код
   public interface MyInterface
   {
       void MyMethod1();
       void MyMethod2();
   }

   public class MyClass : MyInterface
   {
       void MyInterface.MyMethod1()
       {
           return;
       }

       public void MyMethod2()
       {
           return;
       }
   }

В данном случае MyMethod1 будет private, а MyMethod2 - будет public.

То есть такой код
Код
   MyInterface c = new MyClass();
   c.MyMethod1();
выполнится нормально, а вот такой
Код
   MyClass c = new MyClass();
   c.MyMethod1();
даже не скомпилируется.

Более того, метод MyMethod1 не будет виден даже через Reflection.

Автор: AntonSaburov 14.12.2004, 15:45
Спасибо большое Xell

Установить глобальный хук на клавиатуру

После сайта мелкософта с цитатой "Global Hook Is Not Supported in .NET Framework" искать расхотелось... сейчас вот когда надежды уже небыло, случайно нашёл smile
Если кому интересно http://www.codeproject.com/csharp/globalhook.asp

Автор: Medved 22.12.2004, 12:02
собственно здесь все есть:

www.gotdotnet.ru
www.firststeps.ru
www.dotsite.ru

Автор: chipset 8.1.2005, 18:12
http://gotdotnet.ru
http://rsdn.ru

Автор: mr.DUDA 13.2.2005, 21:02
[Last]Wizard
Цитата
Wizard, 8.12.2004,  20:57]Оказывается можно реализовывать члены интерфейса в классе как private. Причем для интерфейса они будут видны, а для класса - нет.

Это называется "явная реализация интерфейса"...

Насчёт находок: бесплатный 3D-движок написанный целиком на C# (используются лишь несколько сторонних библиотек для работы с изображениями, архивами и ядром openGL), называется сие чудо Axiom3D и лежит на сайте http://www.axiom3d.org. К слову, этот движок являет собой "переколбашенную" под дотнет версию небезызвестного Ogre, который "держит" все самые последние новомодные штучки (динамический свет, попиксельные тени, шейдеры 3.0, Direct3D 9, OpenGL, всякие бамп-мэппинги и dot products).

Автор: Domestic Cat 15.2.2005, 06:18
Забавный сайт
http://www.learnvisualstudio.net/

Можно потягать видео в несколько минут с обучением .NET, C#, ВБ - бесплатно там отдельные уроки. Я мулом стянул первые 18 занятий по шарпу - непрофессионально. Но если кому интересно поучить язык - могу отослать (25 метров).

Автор: HalkaR 27.2.2005, 18:57
http://aspnetmania.com/

Автор: neutrino 22.3.2005, 14:09
Не хотел чтобы эта тема утонула в море форума.

http://forum.vingrad.ru/index.php?showtopic=45777

Автор: arilou 29.3.2005, 18:25
Интересная реализация XAML http://myxaml.com/

Автор: просто гость 21.4.2005, 09:42
http://www.raxxla.ru/ - разработка игр и интерактивных приложений на платформе .NET

Автор: mr.DUDA 2.6.2005, 13:44
Альтернатива CodeProject:
http://www.c-sharpcorner.com/
Добавлено @ 13:49
Вот здесь можно скачать версию WinFX RC1 (включает в себя Avalon и Indigo) для Windows XP / 2003:
http://download.microsoft.com/download/5/4/0/5407D6E4-740E-413E-8E91-EF7AC53A478A/en_winfx_sdk_beta1_RC.iso

Автор: Се ля ви 9.6.2005, 11:16
Подумал - а вдруг "мужики-то не знают"? http://csharp-source.net/

P.S. Просто аналогичный классный ресурс по Java мы с Java-истами с успехом юзаем и очень помогает smile .

Автор: Domestic Cat 15.6.2005, 06:08
Есть на русском книжка Visual C# - Создание приложений для Windows.pdf (Минск) 9 мб, если кому надо.

Автор: alir 25.6.2005, 11:15
Лучший сайт от создателя:
http://msdn.microsoft.com/library/RUS/?frame=true

Автор: leniviy 30.8.2005, 14:08
COM события не работают и Stdole.dll
Была проблема: в комоском гриде события работали только на машине, где стоял VS.
Оказалось, что нехватало файлика Stdole.dll. Как ни странно, но прога запускалась и не выдавала никаких ошибок

Автор: Medved 13.1.2006, 22:31
http://msdn.microsoft.com/practices/

Автор: mr.DUDA 14.1.2006, 00:32
Цитата
http://msdn.microsoft.com/practices/


У нас на работе один из сотрудников заметил: "Microsoft иногда (зачастую) выкладывают в своих рекомендациях aka 'Best practices' советы, которые впоследствии сами же и нарушают, в новых версиях своих же продуктов". Подтвердить либо опровергнуть не могу, за отсутствием такого опыта.

Автор: Exception 14.1.2006, 01:09
Попроси привести пример, интересно. Но вообще, я потрясен p&p. Рульная вещь

Автор: albert21 19.1.2006, 17:06
Вот ссылка! http://www.gotdotnet.ru/Downloads/Examples/default.aspx
Много примеров различных приложений. Может понадобится кому

Автор: Medved 22.1.2006, 02:42
http://www.rssmad.com/individual.php?channel_id=483

Автор: dronzo 30.1.2006, 20:37
http://groups.google.ru/group/microsoft.public.dotnet.framework.remoting/msg/4bf007e28eeb1024http://groups.google.ru/group/microsoft.public.dotnet.framework.remoting/msg/4bf007e28eeb1024
http://geocities.com/cyberiafreak/dotnetfaq.htm

Автор: dronzo 31.1.2006, 14:51
http://msdn.microsoft.com/msdnmag/issues/06/00/default.aspx
Оказалось весьма интересным чтивом ;)

Автор: Exception 2.2.2006, 18:47
Цитата
FxCop is a code analysis tool that checks .NET managed code assemblies for conformance to the Microsoft .NET Framework Design Guidelines. It uses reflection, MSIL parsing, and callgraph analysis to inspect assemblies for more than 200 defects in the following areas:

       
  • Library design
       
  • Localization
       
  • Naming conventions
       
  • Performance
       
  • Security


http://www.gotdotnet.com/team/fxcop/

Автор: Medved 28.2.2006, 22:14
http://forum.vingrad.ru/index.php?act=ST&f=199&t=80158&st=0

http://forum.vingrad.ru/index.php?showtopic=76374

http://forum.vingrad.ru/index.php?showtopic=77046

Автор: Exception 15.3.2006, 17:19
http://dotnetheaven.com/

Автор: Softaz 23.7.2006, 10:53
http://www.activeserverpages.su/catalog.asp?what=component
Коллекция компонент, ссылки на другие сайты. 

Автор: Softaz 24.7.2006, 18:14
http://LearnVisualStudio.NET - более 400 видеоуроков по .NET, C#, VisualBasic, ASP.NET и другим 

Автор: DrB 25.7.2006, 11:33
Ч. Петцольд: учебник по C# в 2-х томах + примеры - особенно будет полезно для начинающих

http://rapidshare.de/files/3209587/Petzold_Programming_MS_Windows__Sharp_v1.rar.html - Часть 1
http://rapidshare.de/files/3213491/Petzold_Programming_MS_Windows__Sharp_v2.rar.html - Часть 2
http://rapidshare.de/files/3226510/code_CSharp.rar.html - Примеры
   

Автор: mr.DUDA 3.11.2006, 15:32
http://www.codeproject.com/csharp/CompactSerialization.asp

Замена обычной бинарной сериализации, результирующий байтовый массив в десятки или даже сотни раз меньше по длине, чем создаёт BinaryFormatter, а скорость во много раз больше, за счёт реализации интерфейса ICompactSerializable пользовательскими классами.

Автор: dio30 23.11.2006, 17:22
Если вдруг кому-то понадобится, готов поделиться книгами
http://www.dianov.ru (линка Books)

Автор: Berserk 29.12.2006, 11:34
Я обратил внимание, что очень много людей работают с офисными приложениями. Вот ссылки по Excel и Word. 

http://wladm.narod.ru/C_Sharp/comexcel.html
http://wladm.narod.ru/C_Sharp/comword.html

Автор: mr.DUDA 29.12.2006, 21:13
Berserk, лови заслуженный плюс.

Автор: ak4 28.1.2007, 06:24
Добрый день!

Хочу начать изучать Си шарп. Если нетрудно ,поделитесь ссылками откуда я могу скачать крякнутый Visual Studio 2005 Professional Edition?

Автор: Дрон 28.1.2007, 11:27
Цитата(ak4 @  28.1.2007,  06:24 Найти цитируемый пост)
Добрый день!
Хочу начать изучать Си шарп. Если нетрудно ,поделитесь ссылками откуда я могу скачать крякнутый Visual Studio 2005 Professional Edition?

Модератор: Обсуждение "крякнутых" программ на форуме запрещено -- читай правила.

Автор: ivashkanet 29.1.2007, 12:33
Цитата(ak4 @  28.1.2007,  05:24 Найти цитируемый пост)
Хочу начать изучать Си шарп. Если нетрудно ,поделитесь ссылками откуда я могу скачать крякнутый Visual Studio 2005 Professional Edition?

Качай экспресс версию с сайта майкрософта. Она бесплатная и почти не чем не отличается от профешионал.
http://msdn.microsoft.com/vstudio/express/
http://msdn.microsoft.com/vstudio/express/visualcsharp/download/

Автор: Injener 8.2.2007, 10:28
Меня интересует создание дистрибутивов в VS. Net 2005. Уже несколько дней пытаюсь найти в инете, и все бесполезно. smile 
Если кто знает, кинте ссылку на статью, пример или хоть что-нибудь полезное, пусть даже на английском языке... smile 

Автор: mr.DUDA 8.2.2007, 12:00

 ! 
mr.DUDA
Injener, вопрос не по адресу. Задавайте его в отдельной теме, или придётся вынести это отсюда.

Автор: Injener 8.2.2007, 21:11
В каком разделе вообще можно задать такой вопрос?

Автор: Idsa 8.2.2007, 21:14
Цитата(Injener @  8.2.2007,  21:11 Найти цитируемый пост)
В каком разделе вообще можно задать такой вопрос? 

Да в этом же разделе, только в новом топике!

Автор: Gelis 13.3.2007, 13:59
http://rapidshare.com/files/20806223/LINQ.zip.html

Автор: QryStaL 18.3.2007, 13:03
http://www.getpaint.net/index2.html

Автор: ivashkanet 19.3.2007, 16:15
QryStaL, а как твой Паинт относиться к программирования под .Net?

Автор: mr.DUDA 19.3.2007, 17:23
ivashkanet, тема не ограничивается программированием:

"Находки, заметки и ссылки на интересные ресурсы по .NET"

Проект Paint.NET довольно динамично развивается, сырцы интересно полистать.

Автор: ivashkanet 19.3.2007, 17:41
Цитата(mr.DUDA @  19.3.2007,  16:23 Найти цитируемый пост)
Проект Paint.NET довольно динамично развивается, сырцы интересно полистать. 

Тогда звиняюсь smile
С первого взгляда не видно, что это проект, а не просто еще одна программка для скачивания.

Автор: darkness 26.6.2007, 17:53
Неплохой ман по Data Binding 

http://lib.knackery.net/autumn.php?code=xVf386M5u4CajbdgaUdZKCLutycYrV15f6F8kwT60mFSpIfET3UwLumMoTYGjKKMPnJojkQ2mGk%2FdAw8ji1ozAcZ%2BMVPM9dXoWBntMlep5uwsFO1Q78yigSq2D%2Beh5FLCdF%2F%2BV72%2F7xY9wG61MOfgVBlXrjhmsdnS5lp%2B9CPriLDfouJD6TjALyPBgv53dMY9ZQg%2Fy7P%2F%2BHu9dLOy1L4J0k3Cfn0tiuHFYUCGBggyoAdstQ2keok3eqvOK88X8ip6Z8BeC0P6NnJurvubEKV7A%3D%3D

Автор: kurzon 5.10.2007, 23:36
http://blog.excode.ru/post187-net_framework_source.html
Microsoft показала исходники библиотек .Net Framework ( by http://blog.excode.ru/post187-net_framework_source.html )


Автор: Experimenter 8.11.2007, 18:40
Может где-то уже и было конечно
http://www.gotdotnet.ru/LearnDotNet/DotNet30/default.aspx

Автор: Magnetic 23.11.2007, 15:46
http://www.ideablade.com/ значительно упрощает работу с базами данных, помогает в создании интерфейса формы для отображения данных из базы. Небольшой пример. Приложение, описанное в хелпе IdeaBlade DevForce, позволяет просматривать информацию о сотрудниках из базы данных. Информация текстовая и графическая. Для создания этого приложения с использованием IdeaBlade DevForce программисту необходимо сделать необходимые действия в IdeaBlade Object Mapper и написать лишь одну строчку кода плюс описание пользовательского поля, которое не хранится в базе данных.

Автор: ishimcity 28.11.2007, 16:20
http://wladm.narod.ru/C_Sharp/ Много интересно го особенно для начинающих

Автор: Real 28.11.2007, 21:05
Ктото скиньте литературу по 2005 ADO.NET ?

Автор: firstone 29.11.2007, 14:26
Приветствую!

Только что Visual Studio 2005 выкинул ексепшн и хотел закрыться. Всю работу с утра я не сохранял. Что же делать!?

Без паники! Нажимаем Debug в окне с ошибкой, далее выбираем чем хотите дебагить (я выбрал VS2005 smile ). Потом переходим в дизассемблер и смотрим где он падает. У меня просто был цикл в котором он сканировал XML комментарий и искал знак меньше для закрытия тага (<) Но его там не было и поэтому он вылетал за свою область памяти. Я просто отредактировал память через меню Debug->Windows->Memory->Memory1, аддресс можно задать по значениям в соответствующих регистрах. Я поставил там знак меньше и все сработало. После этого я просто нажал "Save all". 

Вот сейчас впал в экзальтацию (сколько кода мог бы потерять!) и решил поделиться методом с остальными.

Кстати к этому методу я прибегал многократно, но он меня не всегда выручал.

П.С. Вообще в студии полно глюков. Ужаснейшая среда разработки. Извините за офтоп. 

Автор: QryStaL 29.11.2007, 14:56
firstone
когда запускаешь код на выполнение, он автоматически сохраняется. Так что ты ничего не мог потерять ))

Автор: firstone 29.11.2007, 15:56
QryStaL, Только я его с утра не запускал. Так что, все бы стерлось  smile 

Автор: tol05 11.12.2007, 23:34
Привет всем.

Было свободное время - перевел мануал .Net Memory Profiler-а на русский язык. 
Зачем? Ну... лично для меня, с моим далеко не идеальным английским, оказалось очень тяжело читать мануал .Net Memory Profiler-а на английском. После "четвертого чтения" я понял, что ничего не понял smile 
Потому как кроме языковой, была более важная проблема.
О работе памяти в .Net есть немного хороших источников (в основном, все они переписывают Рихтера, дорисовывают цветные картинки и т.д.) А ведь кроме него еще кое-кому есть что рассказать (разработчики .Net Memory Profiler-а не только свой софт описали, но и кое-что о памяти тоже). Да и источники не всегда используют одни и те же термины, а если и используют, то иногда трактуют их или недостаточно ясно, или вообще по-разному...

Пришлось подправить некоторые места по терминологии, кое-что расписать поподробнее, кое-какие "засоряющие мозг" подробности убрать. Но мои изменения текста очень и очень минимальны, так что перевод близок к тексту процентов эдак на 95-98...
В конце концов, я переводил для себя... Но т.к. все равно на это было затрачено какое-то время, решил поделиться этим материалом с вами. 
Я запостил мануал (в виде документа word) на рапидшару (он размером - около 40 страниц все-таки)

В переведенный мануал я не включил два раздела: 
- работа через командную строку
- .Net Memory Profiler API
Я думаю, эти темы не являются жизненно-важными, если они кому-то нужны, то о них можно и в оригинале прочитать. Мне они не были нужны и я их не переводил smile Может потом, как-нибудь...

перевод лежит здесь: http://rapidshare.de/files/41092475/NET_Memory_Profiler_rus_final_97_2003.doc.html
http://memprofiler.com/(там же - оригинал мануала и три видеоурока, рекомендую).
Могут быть ошибки, могут быть опечатки. Пишите о них, второе издание их учтет smile

Также рекомендовал бы прочесть:
1. Книгу Рихтера "C# via .Net" 
2. http://msdn2.microsoft.com/en-us/library/ms973837.aspx
3. http://www.microsoft.com/Rus/Msdn/Magazine/2005/05/InsideNet.mspx
4. http://www.rsdn.ru/article/dotnet/GC.xml

ну, вроде все. Спасибо за внимание. smile

Автор: miki 31.1.2008, 23:53
"C# и платформа .NET. Библиотека программиста" http://www.filefactory.com/file/b2b268/
C# и платформа .NET. Библиотека программиста (PDF) 32 mb Язык программирования C# 2008 и платформа .NET 3.5 (PDF) 16 mb http://www.filefactory.com/file/3a556f/
Полный справочник по С# (Шилдт) (PDF) 24mb http://www.sendspace.com/file/jpl39a

На английском языке

Автор: tol05 7.3.2008, 18:20
Привет всем.

Тренинг-материалы для подготовки к экзаменам:
70-536
70-528
70-547

Все что было на диске - книги в pdf формате (на английском правда), код, тренинг система - на рапидшаре.
Архив в двух частях

http://rapidshare.com/files/97750507/TK_536_528_547_Part1.zip.html
http://rapidshare.com/files/97749232/TK_536_528_547_Part2.zip.html

качаем, изучаем, сдаем... и чувствуем себя все лучше... лучше ... и лучше

 smile 

Автор: nettitan 11.4.2008, 00:56
Кстати о птичках !

у меня есть кое-что из сертификационных экзаменов от Microsoft, но к сожелению не все...

все следущие материалы на русском языке + диски

http://depositfiles.com/files/4658090
http://depositfiles.com/files/4657272
http://depositfiles.com/files/4656741
http://depositfiles.com/files/4656316
http://depositfiles.com/files/4656065
http://depositfiles.com/files/4655858

по мере поступления буду добавлять....

но может у кого есть экзамен 70-548 на русском, виложыте очень нада!

Автор: Real 12.4.2008, 20:01
Книга "Язык C#"  в формате [*doc] http://depositfiles.com/files/4554880

Учебник по Csharp в формате [*.doc] http://depositfiles.com/files/4555235

Учебник по .NET 3.5 [*.doc]  http://depositfiles.com/files/4555309

C# для разработчиков_на Java http://depositfiles.com/files/4555351

Введение в программирование на C#2.0  http://depositfiles.com/files/4555583

Статии по С# ( by RSDN )--  http://depositfiles.com/files/4555830

Д.М. Златопольский - Сборник задач по программированию 1600 - http://depositfiles.com/files/4556244

Уроки по C# - http://depositfiles.com/files/4556335

С# Метода - http://depositfiles.com/files/4556543

Том Милер С# + DirectX  = http://depositfiles.com/files/4557542

Герберт Шилдт - C# Учебный Курс .NET 1.1 - http://depositfiles.com/files/4558778

Сайт http://www.intuit.ru/department/pl/csharp/ Введение в программирование на C# 1.0 можете скачать тут http://depositfiles.com/files/4559224

Сайт http://www.intuit.ru/department/pl/csharp20/ Введение в программирование на C# 2.0 можете скачать http://depositfiles.com/files/4566177

Язык интегрированных запросов ( by .NET 3.5 )  [*.pdf] - http://depositfiles.com/files/4566356

Практика программирования USB.(Агуров)(2006) - http://depositfiles.com/files/4566983

C-Sharp для юзеров( уроки С-Sharp ) - http://depositfiles.com/files/4567640

Куча методычок для преподов по С# ( на укр. языке ) - http://depositfiles.com/files/4568170

ADO.NET ( сайт  http://www.intuit.ru/department/se/msadonet/ )    Вы можете скачать http://depositfiles.com/files/4573553

Перезагрузка операторов ( из книге "C# 2008 ускоренный курс для профессионалов" ) - http://depositfiles.com/files/4577763

WPF ( .NET 3.0 ) - http://depositfiles.com/files/4578013

Доступ к данным в .NET 3.0 - http://depositfiles.com/files/4579294

C# для разработчиков на C++ - http://depositfiles.com/files/4578994

Манипулирование файлами и реестром в .NET 3.0 - http://depositfiles.com/files/4579092

C# для разработчиков на Visual Basic 6 - http://depositfiles.com/files/4579398

Работа с XML в .NET 3.0 - http://depositfiles.com/files/4579527 

ООП из книге "Для профессионалов .NET 3.0" - http://depositfiles.com/files/4594993

SQL Server 2005 из книге "Для профессионалов .NET 3.0" - http://depositfiles.com/files/4595282

COM+-компонент для 1С на C# - http://depositfiles.com/files/4596343

C-Sharp lessons [htm] - http://depositfiles.com/files/4599356

Стили из книги WPF: Windows Presentation Foundation в .NET 3.0 для профессионалов - http://depositfiles.com/files/4659459


Автор: chipset 12.4.2008, 23:50
Боян не боян но http://rsdn.ru/article/?942. 

Автор: nettitan 3.5.2008, 17:25
Вот еще парочку книг екзаменов Мелкософта на русском

http://depositfiles.com/files/4694592
http://depositfiles.com/files/4692264
http://depositfiles.com/files/4691486

Автор: Kosten 3.7.2008, 08:04
http://blogs.msdn.com/rusaraford/ на русском. Много полезных советов по работе со студией.

Автор: loma 8.7.2008, 00:14
Полезная книга для новичков и не только
БХВ - C#. Сборник рецептов (+CD-ROM).2007
http://depositfiles.com/files/6454028
и фаилы к книге
http://depositfiles.com/files/6454133

Если кому надо могу вылажить на рапиде


Автор: mihryak 22.7.2008, 15:36
Про http://msdn.microsoft.com/en-us/library/system.web.services.protocols.soapextension.aspxs (навеяно http://forum.vingrad.ru/forum/topic-221043/15.html#st_0_view_0 темой)
Пример из ссылки логирует все soap-реквесты и -респонзы в файл
Для общего ознакомления рекомендую ещё почитать http://progtutorials.tripod.com/soapext.htm

И жизненный пример расширения - добавление секьюрности
Прикручивание расширения soap делается прописыванием в app.config'е в секции configuration
Код

  <system.web>
    <webServices>
      <soapExtensionTypes>
        <add type="WebApi.Security.SecurityExtension, WebApi" />
      </soapExtensionTypes>
    </webServices>
  </system.web>

Сама обработка заключается в добавлении подписи к потоку реквеста
Виртуальный метод ChainStream используется для получения доступа к потоку, содержащему сами soap-сообщения, ниже происходит его сохранение для дальнейшего использования, при этом возвращается новый поток
Нас интересует стадия AfterSerialize - The stage just after a SoapMessage is serialized, but before the SOAP message is sent over the wire - т.е. перед непосредственной отправкой подготовленного soap-сообщения
В стадии BeforeDeserialize - The stage just before a SoapMessage is deserialized from the SOAP message sent across the network into an object - необходимо не забыть вернуть исходные данные сообщения
Код

    public class SecurityExtension : SoapExtension
    {
        private Stream oldStream;
        private MemoryStream newStream;

        public override object GetInitializer(Type serviceType)
        {
            return null;
        }

        public override object GetInitializer(LogicalMethodInfo methodInfo, SoapExtensionAttribute attribute)
        {
            return null;
        }

        public override void Initialize(object initializer)
        {            
        }

        public override Stream ChainStream(Stream stream)
        {
            oldStream = stream;
            newStream = new MemoryStream();
            return newStream;
        }

        public override void ProcessMessage(SoapMessage message)
        {
            if (message.Stage == SoapMessageStage.AfterSerialize)
            {
                // здесь происходит добавление в конец подписи к newStream, сама обработка вырезана =)
                ..................

                newStream.WriteTo(oldStream);
            }
            else if (message.Stage == SoapMessageStage.BeforeDeserialize)
            {
                // мы подменили исходный стрим своим, так что на этой стадии возвращаем на место
                CopyStream(oldStream, newStream);
                newStream.Position = 0;
            }
        }
    }

Автор: Mag 17.10.2008, 20:45
Интересная находка: http://msdn.microsoft.com/en-us/vstudio/aa718338.aspx

Автор: QryStaL 29.10.2008, 23:06
http://www.vertigosoftware.com/quake2.htm is a version of the popular Quake II game, ported to native and managed C++ using Microsoft® Visual Studio® .NET™ 2003.

Автор: BestRoot 30.10.2008, 07:54
Всем привет!

есть несколько наболевших вапросов:

1.Как считать картинку со сканера (чтобы на форме нажал на кнопку сканер отсканировал и на форму картинку вывел)?

2.Как написать Клиент,Сервер чтобы на одном компе в Textbox написал кнопку нажал и на другом компе текст высветился?

 Зарание спасибо начинающий девелопер root  smile 

Автор: jorikdima 5.11.2008, 16:48
Цитата(BestRoot @ 30.10.2008,  07:54)
Всем привет!

есть несколько наболевших вапросов:

1.Как считать картинку со сканера (чтобы на форме нажал на кнопку сканер отсканировал и на форму картинку вывел)?

2.Как написать Клиент,Сервер чтобы на одном компе в Textbox написал кнопку нажал и на другом компе текст высветился?

 Зарание спасибо начинающий девелопер root  smile

Неплохо было бы в соответствующих темах спрашивать, а не где вздумалось. smile 

Автор: Bogdan1024 5.11.2008, 18:09
Цитата(BestRoot @  30.10.2008,  06:54 Найти цитируемый пост)
2.Как написать Клиент,Сервер чтобы на одном компе в Textbox написал кнопку нажал и на другом компе текст высветился?

Remoting
соккеты
COM+
Выбирай

Автор: Tala 16.12.2008, 01:35
Приветствую.
Посоветуйте книги с задачами (задачник) для лучшего понимания ООП и его применения. Желательно в электронном виде. Извините если не в тему, хотелось бы услышать ответ от C# разработчиков какие задачи они решали чтобы понять ООП.
Заранее благодарен 

Автор: de_Nis 17.12.2008, 17:55
Цитата(Tala @  16.12.2008,  01:35 Найти цитируемый пост)
Посоветуйте книги с задачами (задачник) для лучшего понимания ООП и его применения. Желательно в электронном виде

Зайди на сайт http://www.intuit.ru/rating_courses/, зарегистрируйся, запишись на курсы по C# и решай задачи, которые там же, на курсах, есть. Получишь оценку и будешь знать свой уровень знаний.
Поищи книгу: Бишоп "С# в кратком изложении" (Москва, Бином, 2005 г.), есть в эл. виде - в ней каждая глава заканчивается контрольными вопросами и упражнениями.

Автор: mor3 12.2.2009, 02:41
http://www.pinvoke.net
удивлен что тут нет))

оччччень полезный сайт для тех кто использует API-функции,
даны примеры(C# or VB.NET) вызова многих полезных функций
удобная навигация по dll-кам с выбором нужного метода
есть свой плагин для VS

enjoy

Автор: Partizan 15.2.2009, 00:06
mor3, на самом деле есть...

Автор: elw00d 24.5.2009, 15:08
Если вы пишете приложения с использованием WinForms, WPF или консольные приложения, то, возможно, пригодится.

Кратко : тулза берет конфиг-файл, в котором указаны пути к исходным данным и опции, сжимает нужные сборки, собирает одну результирующую, добавляя туда сжатые сборки. Во время выполнения на обработчик резолвинга имен сборок вешается хендлер, который будет распаковывать в памяти нужные сборки и отдавать приложению. Можно также добавлять нативные DLL-ки и вообще любые файлы. Они при загрузке будут распакованы в указанные директории (относительные или абсолютные). В общем, экономит место на диске, время загрузки и упрощает развертывание. Надеюсь, кому-нибудь будет полезным.

Откуда скачать : http://nbox.codeplex.com

В архиве - исходники и примерчик для сборки самого NBox'a.

Документации пока нет, но скоро будет, пока - только по примерам.

Автор: ivashkanet 25.5.2009, 10:12
elw00d, интересная идея  smile 
Правда не совсем пока догоняю практическое применение (никогда не парился насчет занимаемого места и количества файлов в папке lib). Кроме как в качестве обфускатора (хотя там LZMA-сжатие) и для использования проги на флешке... хз в общем. Ну да ладно.

Ты, насколько я понял, представляешь разработчиков nbox-а. Так что вопросы к тебе.
Насколько юзабельлен релиз 0,11? 
Что уже сейчас умеет делать?
Где можно посмотреть родмап?
Когда планируется бета (хотя бы)?
Когда стартовал проект? (надеюсь раньше 15 мая, когда появился проект на кодплексе)


В общем, я понимаю что для того чтобы программа развивалась ей нужны пользователя (бета/альфа тестеры). Но сырую поделку никто юзать не будет. Так что хотелось бы больше инфы. Так как то что на кодплексе и тут больше похоже на рекламу (если хотите: как будет выглядеть продукт когда зарелизитсья).

СУВ, ivashkanet

Добавлено через 8 минут и 55 секунд
Кста, на сайте написано что проект в Альфе. Он действительно в Альфе? Т.е. у него уже присутствует вся заявленная функциональность, большинство багов пофикшено и т.д.

Автор: elw00d 25.5.2009, 16:27
Из заявленного функционала работает практически все (единственное, что не доделано - кастомизация сжатия, сейчас жмется всегда одинаково, этот вопрос еще нужно обдумать). Проект стартовал месяцем раньше, на codeplex был выложен первый рабочий вариант. Сейчас - третий коммит. Пока что проблем мной не замечено, я успешно обрабатывал им WindowsForms и WPF программы, содержащие более 20 библиотек. Документации пока нет, но мне кажется, что по примеру, который выложен в архиве, можно сделать аналогичные конфигурационные файлы для своих программ и попробовать в действии. В ближайшее время должно появиться описание XML файла с рекомендациями по составлению конфигов и несколько отдельных простых примеров. Принимаются предложения о развитии проекта.
//
PS. Обсуждение деталей, думаю, лучше перенести на codeplex, потому как модераторы позиционируют эту тему не для фидбэка.

Автор: arilou 25.5.2009, 18:12
elw00d, согласен, уже создал интересующую меня тему  smile 

Автор: ivashkanet 26.5.2009, 09:33
elw00d, спасибо. Буду иметь ввиду.

Автор: hkdkest 15.6.2009, 12:59
Модератор: Сообщение скрыто.

Автор: maxsus 19.7.2009, 21:27
Чет ненашол раздела - литература...напишу сюда.
Сомневаюсь что найдется....но очень нужны книги(в электронном виде...на бумагу денег нет =(  )
Наверно уже весь инет облазил....ненайти....

Silverlight 2 с примерами на C# 2008 для профессионалов
Microsoft ASP.NET 3.5 с примерами на C# 2008 и Silverlight 2 для профессионалов, 3-е издание

Автор: Linus 27.7.2009, 09:52
user posted image

Вот вчера отсканил книжку "Шаблоны реализаиции корпоративных приложений". Книга формирует у программиста ценности и принципы, на основе которых делаются конкретные решения на каждом шагу написания качественного кода программы. В общем, мега-супер вещь, всем маст хев smile

Цитата
Один из самых креативных и признанных лидеров в индустрии программного обеспечения Кент Бек собрал 77 шаблонов для обслуживания задач ежедневного программирования и написания более читаемого кода. Эта новая коллекция шаблонов предназначена для реализации многих аспектов разработки, включая классы, состояние, поведение, методы, коллекции, инфраструктуры и т.д. Автор использует диаграммы, истории, примеры и эссе для того, чтобы увлечь читателя по ходу освещения шаблонов. Вы обнаружите проверенные решения для управления всем, от именования переменных до проверки исключений. Эта книга предназначена для программистов всех уровней подготовки, особенно для тех, кто применяет в своей практике шаблоны проектирования и методы быстрой разработки. Книга также окажется неоценимым ресурсом для команд разработчиков, ищущих более эффективные методы совместной работы и построения более управляемого ПО.

(с) Diamail

http://rapidshare.com/files/260356580/__1064___1072___1073___1083___1086___1085___1099____1088___1077___1072___1083___1080___1079___1072__.html
http://ifolder.ru/13274153

Автор: larum 18.10.2009, 19:39
http://sharpes.ru много литературы о C# и http://eknigka.ru

Автор: Kanes 21.2.2010, 15:14
user posted image

http://apparchguide.ms/
Цитата
В руководстве предлагается обзор основных принципов и шаблонов,
которые обеспечивают прочную базу для создания хорошей архитектуры и дизайна
приложения. В дополнение к этой базе даются общеприменимые рекомендации по
разделению функциональности приложения на слои, компоненты и сервисы. Далее приводятся советы по определению и реализации ключевых характеристик дизайна, основных атрибутов качества (таких как производительность, безопасность и масштабируемость) и сквозной функциональности (такой как кэширование и протоколирование). В завершение руководство предлагает рекомендации по архитектуре и дизайну наиболее общих типов приложений, таких как Веб-приложения, насыщенные Интернет-приложения (RIA), насыщенные клиентские приложения, сервисы и мобильные приложения.


Автор: nettitan 9.10.2010, 11:54
Вот хорошая книженция...

http://ipicture.ru/Gallery/Viewfull/1482769.html

http://depositfiles.com/files/dul0z6516

http://depositfiles.com/files/xddnqmde7

Автор: nettitan 9.10.2010, 12:11
http://ipicture.ru/Gallery/Viewfull/1483026.html

http://depositfiles.com/files/68a8o04z0

http://depositfiles.com/files/1mr8xouql

Автор: Suliman 13.8.2011, 17:37
Немного не под тему топика, но может кому-то пригодится:

Сравнение http://versusit.ru/viewtopic.php?id=1677

а так же http://versusit.ru/viewtopic.php?id=1660

Автор: Antei 21.4.2014, 12:30
Возможно, кому-то будет интересно онлайн-тьюториал по C#: http://metanit.com/sharp/tutorial/

Автор: wapmorgan 9.4.2015, 03:30
Думаю, что полное руководство по C# 4.0 кому-нибудь пригодится.
http://csharplang.website/
http://csharplang.website/csharp_for_beginners.epub, http://csharplang.website/csharp_for_beginners.mobi 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)