Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » dot NET: Общая Информация

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3

Открыть новую тему     Написать ответ в эту тему

zenant



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
в ASP.NET по другому сделано

 
Это настраивается в ISS 6. Хочешь будет отдельный процесс, хочешь все приложения в одном будут. Называется это Application Domain.

Всего записей: 194 | Зарегистр. 01-09-2002 | Отправлено: 11:35 28-01-2004
Bunker



BigGreen Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Откомпилил пустой проект с одной только формой и ... о чудо при размере  
ехе в 200К

у меня exe 20K и в памяти 8M на C#, .net framework 1.1

Всего записей: 1885 | Зарегистр. 02-02-2001 | Отправлено: 14:57 02-02-2004
UncoNNecteD



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
И все таки кто нибудь скажет реально - стало ли удобнее писать программы и в чем это выражено?
Как в .NET организована работа с WinAPI и низкоуровневым программированием ?
Что изменилось?
На реальном примере можно ?

----------
-= Я тут чертовски давно =-

Всего записей: 4040 | Зарегистр. 21-03-2002 | Отправлено: 09:57 05-02-2004
zenant



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
UncoNNecteD
Столько много хочешь узнать и все за раз?  
Вот тебе ссылочка:
http://msdn.microsoft.com/netframework/
Там все подробно написано.
 
Вкратце:

Цитата:
стало ли удобнее писать программы и в чем это выражено?

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

Цитата:
Как в .NET организована работа с WinAPI и низкоуровневым программированием ?  

WinAPI вызовы легко делаются через специальную службу PInvoke. В большинстве случаев служба берет на себя все головняки с преобразованиями типов и указателями.
Что такое низкоуровневое программирование, я, к сожалению, не знаю.
 

Цитата:
Что изменилось?

По сравнению с чем? С голым WinAPI? Всё! С MFC? Всё!
 

Цитата:
На реальном примере можно ?

Нет уж... Это давай сам.

Всего записей: 194 | Зарегистр. 01-09-2002 | Отправлено: 22:50 05-02-2004
ironwit

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
UncoNNecteD
Присоединяюсь к zenant - 3 день смотрю на этот язык внимательно (C#), пока что мне нравиться... Ради прикола портирую одну программу работы с БД с Delphi на C# - в общем то неплохо, и нет очень уж большого различия с Delphi. Во всяком случае пока.


----------
Don't drink, and drive. Smoke and fly.

Всего записей: 1892 | Зарегистр. 11-10-2002 | Отправлено: 08:45 06-02-2004
dotBY



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а вот тебе и простой пример вызова АПИ-функции (пусть MessageBox)
 
using System;
using System.Runtime.InteropServices;         //енто обязательно для доступа к PInvoke-типам
 
public class MyFuckenPInvoke
{
    [DllImport("user32")]  
              // в user32.dll находится MessageBox()
             
    public static extern int MessageBox(int hWnd, string pText, string pCaption, int uType);
              // слова static extern обязательны
     ...
     // а затем в коде объявляем две стринговае переменные,
     // присваиваем переменным значения и пишем
 
     MessageBox(0, pText, pCaption, 0);
     ...
}
воттак все просто и красиво, и это только основы, я сам ща разбираюсь с этой темой, там столько фишек, что я начинаю думать МелкоСофт - рулезь!

Всего записей: 164 | Зарегистр. 19-08-2003 | Отправлено: 00:03 07-02-2004
dotBY



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ага, сорри забыл сказать, что если установлен флаг ExactSpelling = false, а он так по дефолту, то мой код прокатит, иначе он ругнется, что надо точно указать MessageBoxA() или MessageBoxW(). а так оно (Framework) само выберет А под Win9x или W под NT.
 
плюс не надо заниматься насильственной любовью с типами, string и все, а PInvoke уже сама подгонит под нужный

Всего записей: 164 | Зарегистр. 19-08-2003 | Отправлено: 15:01 07-02-2004
AndrewWork

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ. Я долго искал подходящую тему ... так что извините, если промахнулся.
Суть вопроса ниже.
 
Кто-нибудь имел дело с CollectionBase ?
Почему-то никак не могу переопределить метод GetEnumerator().
В описании вроде говорится что он virtual, однако переопределить его у меня не получилось. Компилятор утверждает что ... cannot override inherited member 'System.Collections.CollectionBase.GetEnumerator()' because it is not marked virtual, abstract, or override.

Всего записей: 77 | Зарегистр. 17-03-2003 | Отправлено: 19:41 03-08-2004
mxm1975



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
usingSystem.Collections;
 
public class Coll : CollectionBase
{
  public new IEnumerator GetEnumerator()
  {
      return null;
  }
}
 

 

Всего записей: 279 | Зарегистр. 31-07-2002 | Отправлено: 00:17 04-08-2004 | Исправлено: mxm1975, 00:19 04-08-2004
AndrewWork

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mxm1975
Ну указав new ты просто создал новый метод, но не переопределил его. Создал метод в типе Coll, а метод CollectionBase - a остался.

Всего записей: 77 | Зарегистр. 17-03-2003 | Отправлено: 12:43 04-08-2004
mxm1975



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CollectionBase помечен как abstract

Всего записей: 279 | Зарегистр. 31-07-2002 | Отправлено: 17:06 04-08-2004
AndrewWork

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mxm1975
Я вижу. Может я недопонимаю ? Объясните же мне, наконец.
Тип abstract - не может быть создан его экземпляр, но может использоваться как базовый. Но у него же есть свои методы со своими сигнатурами.

Всего записей: 77 | Зарегистр. 17-03-2003 | Отправлено: 19:06 04-08-2004 | Исправлено: AndrewWork, 19:55 04-08-2004
mxm1975



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
считай, что это ( ...virtual... ) ошибка в MSDN  
 
Добавлено
вот что выдает ildasm:

Код:
 
.method public hidebysig newslot virtual final  
        instance class System.Collections.IEnumerator  
        GetEnumerator() cil managed
{
  // Code size       12 (0xc)
  .maxstack  8
  IL_0000:  ldarg.0
  IL_0001:  call       instance class System.Collections.ArrayList System.Collections.CollectionBase::get_InnerList()
  IL_0006:  callvirt   instance class System.Collections.IEnumerator System.Collections.ArrayList::GetEnumerator()
  IL_000b:  ret
} // end of method CollectionBase::GetEnumerator
 
 

 
как видишь -- final.

Всего записей: 279 | Зарегистр. 31-07-2002 | Отправлено: 21:57 04-08-2004 | Исправлено: mxm1975, 21:59 04-08-2004
AndrewWork

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mxm1975
Мне кажется, недопонимания продолжаются.
Метод GetEnumerator() действительно virtual. И в MSDNе я ошибки такой не видел. Так вопрос остаётся. Метод virtual, а переопределить его нельзя. Как так ?!

Всего записей: 77 | Зарегистр. 17-03-2003 | Отправлено: 23:55 04-08-2004 | Исправлено: AndrewWork, 23:58 04-08-2004
mxm1975



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хм... Ну я даже и не знаю...
Скажу еще раз: в MSDN, похоже, "опечатка". То что ILDASM "показывает" метод как
virtual не значит что это виртуальный метод в терминах C#. (см. пометку final)
 
 
даже и не знаю что еще сказать

Всего записей: 279 | Зарегистр. 31-07-2002 | Отправлено: 09:26 05-08-2004
AndrewWork

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mxm1975
Подскажи плз. Как ты получил ildasm-ом эти строчки ?

Всего записей: 77 | Зарегистр. 17-03-2003 | Отправлено: 14:09 05-08-2004
mxm1975



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Как ты получил ildasm-ом эти строчки ?

Как... Как обычно -- запустил, открыл сборку и получил...
 
Что-то я опять не понял, что нужно ответить.

Всего записей: 279 | Зарегистр. 31-07-2002 | Отправлено: 16:12 05-08-2004
AndrewWork

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mxm1975
Разобрался, спасибо.
 
PS. Звиняй, если что ...

Всего записей: 77 | Зарегистр. 17-03-2003 | Отправлено: 19:06 05-08-2004
NekiyITwnik

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подробнее...

Всего записей: 1 | Зарегистр. 13-03-2012 | Отправлено: 15:38 13-03-2012 | Исправлено: NekiyITwnik, 15:40 13-03-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » dot NET: Общая Информация


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru