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


Автор: Softaz 18.7.2006, 10:35
Оболочка пишется на C# под справочники http://netcode.ru/download/?id_d=3, http://netcode.ru/download/?id_d=2 и другие.

Сам справочник можно скачать ниже (более 5500 статей):
------------------------------------------------------------------------------------------------------------------------------
1. Можно скачать все сразу по http://attach.1gb.ru/File/NET_WORLD.exe (285186117 Байт) - пароль: www.rootkits.ru
------------------------------------------------------------------------------------------------------------------------------

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

Скачать оболочку NET World:
http://netcode.ru/opensource/NetWorld_v0.7_beta.7z (1.2МБ)
http://netcode.ru/opensource/Update_NetWorld_0.7_to_0.75.7z (0.3МБ) -- замените файлы
http://netcode.ru/opensource/DOTNET_Browser_pub_v0.6_09.12.2006.7z (3.3МБ) -- исходники.
http://attach.1gb.ru/File/DOTNET_Browser_pub_all_compiled_v0.6_09.12.2006.7z (8.7МБ) -- Если затрудняетесь с компиляцией исходников ссылкой выше, качайте этот архив..

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

Кто заинтересовался, скачивайте проект, открывайте в VS2005, добавляйте функциональность. Хотя бы полезную формочку с контролами, которая облегчит жизнь smile Либо способ хранения 30000 разнородных статей. 

Все, кто принял участие в разработке и сделал хотя бы одну полезную функцию программы, будут авторами.

Заранее всем спасибо!

Если у Вас есть весь скаченный архив Net World со старой оболочкой (DW6), то достаточно распаковать новую оболочку в директорию, где лежит [его можно удалить] файл NET.exe и находится директория со статьями /base/ (в ней должен находиться файл базы данных - вместо файла дерева как это было в DW6 - db.net). Запускать NET World.exe

Пожелания отправлять в PM или в форум или на email (указан в программе)

Скриншот программы смотрите в присоединенном файле

©
Программа и статьи (далее - "Сборник") распространяются на условиях "AS IS" ("как есть"). Это означает, что ни авторы статей, ни редакторы сборников не несут никакой ответственности. Вся информация в сборнике дана для ознакомления и ни в коей мере не побуждает к действию/бездействию.

Авторские права:
Мы старались делать ссылки на сайт автора и/или указывать его e-mail. К сожалению, примерно 30% статей не содержат авторских реквизитов.
Если Вы являетесь автором -- свяжитесь через сервис личных сообщений, указав названия статей, ссылки на сайт, e-mail и т.п. Мы с радостью добавим Ваш копирайт в статью.

Цель создания архива статей -- повышение грамотности программистов, она не несет никакой коммерческой выгоды с нашей стороны.

Автор: mr.DUDA 18.7.2006, 14:24
Пришпилил тему.

 

Автор: Softaz 18.7.2006, 15:16
Несколько задумок:
  •  Стиль MDI - чтобы каждая статья могла открываться в отдельном окне.
  •  Корпоративное использование - чтобы можно было выбирать каталог со статьями.
  •  FeedBack-сервис для сообщения о неточностях и дополнениях.
  •  Детерминированное обновление статей. Каждой статье присваивается свой GUID.
  •  Легкое добавление статьи. Как из файла путем парсинга, OLE и т.п., так и "ручное" написание в редакторе с BB-кодами.
  •  Возможность индексирования произвольных папок на компьютере.
  •  Что-то наподобие DynamicHelp из VS (окно с релевантными статьями).
  •  Подключение разных справочников к одной оболочке.
  • Мастер для добавления новых статей, с пересылкой на проверку модератору, для дальнейшего добавления в базу. http://forum.vingrad.ru/index.php?showtopic=104564&unread=1&st=0&#
  • Печать. http://forum.vingrad.ru/index.php?showtopic=104564&unread=1&st=0&#
   

Автор: mr.DUDA 18.7.2006, 16:57
Цитата(Softaz @  18.7.2006,  15:16 Найти цитируемый пост)
Стиль MDI - чтобы каждая статья могла открываться в отдельном окне.

На закладках лучше, как в MSDN 2005.

Цитата(Softaz @  18.7.2006,  15:16 Найти цитируемый пост)
Легкое добавление статьи. Как из файла путем парсинга, OLE и т.п., так и "ручное" написание в редакторе с BB-кодами.
 Возможность индексирования произвольных папок на компьютере.
 Что-то наподобие DynamicHelp из VS (окно с релевантными статьями).

Навороты smile

 

Автор: Softaz 18.7.2006, 17:04
Цитата(mr.DUDA @  18.7.2006,  16:57 Найти цитируемый пост)
На закладках лучше, как в MSDN 2005

Точно. Спасибо.

Цитата(mr.DUDA @  18.7.2006,  16:57 Найти цитируемый пост)
Навороты

У меня есть папка "книги", где их порядка 2 ГБ.
Так что в моем случае индекс этой папки - необходимость smile 
А ввод "вручную" с bb-кодами полезен при создании статьи из постов на форумах. 

Автор: Evghenii 18.7.2006, 20:02
Печать. Мастер для добавления новых статей, с пересылкой на проверку модератору, для дальнейшего добавления в базу. 

Автор: Softaz 18.7.2006, 20:46
Evghenii, Ок. Учтем.

С Вашего разрешения, чтобы не раздувать топик до необъятных размеров, впредь все желаемые ТТД я буду заносить в третий сверху пост, не комментируя их.
 

Автор: Evghenii 18.7.2006, 23:20
Я думаю все будут только ЗА  smile  

Автор: Exception 19.7.2006, 13:31
Ребят, вы бы куда-нибудь положили проект, на http://codeplex.com, например. 

Автор: arilou 20.7.2006, 00:14
Цитата(Exception @  19.7.2006,  13:31 Найти цитируемый пост)
Ребят, вы бы куда-нибудь положили проект, на CodePlex, например.  

или https://opensvn.csie.org

Добавлено @ 00:21 
погорячился немного smile ну если нет TFS, то SVN вполне  smile  

Автор: Softaz 20.7.2006, 16:31
Exceptionarilou, приду домой - выложу. На работе какие-то глюки с прокси. 

Автор: mr.DUDA 21.7.2006, 23:41
Ну что, разве никому не интересно ? 

Подключайтесь ! 

Автор: Evghenii 22.7.2006, 13:49
Может проект частично сделать коммерческим? Баннеры например встроить. Естественно все вырученные средства на Вовин счёт скидывать для развития форума. smile  

Автор: Softaz 22.7.2006, 15:09
Цитата(Evghenii @  22.7.2006,  13:49 Найти цитируемый пост)
Может проект частично сделать коммерческим?

Очень даже возможно.
Сейчас у меня есть около 9000 статей в сумме во всех проектах. Потихоньку дело продвигается - "причесываем" их внешний вид.
Это я к тому, что если расширить сайт netcode.ru до нескольких ЯП,
то посещаемость у него взлетит порядочно smile
На каждой странице встроить ссылку на форум, ежедневно постить новые материалы, высылать желающим CD со всеми проектами и т.д. и т.п.  

Автор: mr.DUDA 22.7.2006, 20:49
Есть возможность материально поощрить участников.  smile 

Как модератор раздела .NET, приглашаю всех к обсуждению этого проекта. smile

Да, и ещё: возможно, получится создать нечто вроде offline-хелпа по C#, типа "всё-в-одном-флаконе" для дотнетчиков! Присоединяемся, дорогие C#/VB.NET/ASP.NET/.... .NET разработчики !!! 

Автор: Softaz 23.7.2006, 00:51
Цитата(mr.DUDA @  22.7.2006,  20:49 Найти цитируемый пост)
Есть возможность материально поощрить участников

Кстати, Коля Акулов (DelphiWorld) тоже может материально поощерять за перевод статей из DelphiWorld на английский язык. Это на заметку.


Цитата(mr.DUDA @  22.7.2006,  20:49 Найти цитируемый пост)
Да, и ещё: возможно, получится создать нечто вроде offline-хелпа по C#, типа "всё-в-одном-флаконе"


Тут не то, чтобы "возможно получится". Надо, чтобы хорошо получилось. А "возможно" у меня есть (см. подпись) - это большая свалка. Свалка, потому что добавлялось это ботом. Скачивались сайты, парсились и т.п. Вдобавок к этому у меня еще около 150 МБ информации лежит необработанной.
Материал есть, а вот чем его смотреть, добавлять - нету smile
Так что:
  •  Делаем оболочку для управления статьями (в дальнейшем браузер).
  •  Структурируем статьи (человек уже занимается).
  •  Разрабатываем дизайн сборника.
Основные направления разработки браузера (по убывающей).
  • Разработать структуру БД, в которой будет хранится информация о статьях (автор, GUID, названия, категории, наличие картинок и исходников и т.п.).
  • Хранить статьи скорее всего в файловой системе с разбиением на каталоги по типу язык/катеория/подкатегория/названия_статей и привязать ее к дереву (TreeView) для просмотра и выбора в браузере, обеспечив его редактирование. Надо учесть, что записей будет очень много. В начале уже около 5000.
  • Сделать сервис добавления статей из файла и путем внесения из буфера обмена с поддержкой bb-кодов, подсветки синтаксиса и т.п.
  • Индексация и поиск (почти сделано, в svn пока не выкладываю).
После решения этих вопросов можно будет обрабатывать существующие статьи и заполнять БД, одновременно доделывая браузер статей.

Как видите, сделать надо мало, зато польза будет огромной!

Цитата(mr.DUDA @  22.7.2006,  20:49 Найти цитируемый пост)
Есть возможность материально поощрить участников

А за ОСОБО большой вклад в разработку программы можно предложить бартер в качестве рекламы в программе/на сайте программы. А это предположительно не менее 5000 просмотров в день.

Подключайтесь!
  

Автор: Evghenii 25.7.2006, 14:19
Несколько идей:
  •  В качестве БД можно использовать формат Access. Скорости работы и возможностей sql вполне достаточно. Проще чем разрабатывать свой формат и алгоритмы работы с ним.
  •  В качестве файлов статей можно использовать HTML.
  •  В качестве редактора статей можно использовать тот же RSDN Editor или написать свой
 

Автор: Softaz 26.7.2006, 13:48
Цитата(Evghenii @  25.7.2006,  14:19 Найти цитируемый пост)
В качестве БД можно использовать формат Access. Скорости работы и возможностей sql вполне достаточно. Проще чем разрабатывать свой формат и алгоритмы работы с ним

Уже есть работающая версия. Приду домой - выложу. Есть несколько недостатков с ACCESS при индексировании (скорость). Но если полную индексацию делать один раз, то все могут ее скачать и пользоваться.
Кстати, если добавить поле "пользовательская индексация" - те статьи, которые добавил пользователь сам, то можно отсылать это (хеш, ссылку на документ, e-mail пользователя) на сервер и выдавать в результатах поиска, то получится что-то типа p2p  smile 

Цитата(Evghenii @  25.7.2006,  14:19 Найти цитируемый пост)
В качестве файлов статей можно использовать HTML

Да это и будет, так как бОльшая часть статей из интернета. В WebBrowser.Navigate и вперед.

Цитата(Evghenii @  25.7.2006,  14:19 Найти цитируемый пост)
В качестве редактора статей можно использовать тот же RSDN Editor или написать свой

В проекте он (RSDN Editor) есть smile

Автор: Evghenii 26.7.2006, 17:09
Цитата

Уже есть работающая версия. Приду домой - выложу

Буду ждать. Потестим.  

Автор: Softaz 26.7.2006, 22:39
Вот.
Выбрать папку с *.htm? файлами
В коде встречается обявление нескольких массивов с одинаковыми эл-тами.
Так надо, потому что по мере разработки добавляются новые правила разложения слов.

Там много кода закомментировано - это я искал, что быстрее работает. В итоге получилась редкостная каша smile
Для полноты эксперимента можно получить CRC32 хеш слова (1/30000 сек) и сделать индексируемым соотв. полю в БД.
Но не думаю, что значительно быстрее  работать станет. Да и валится он обычно после 2 млн. записей.

Далее в БД внести параметры "число слов", "позиция слова" и т. д.
 

Автор: Evghenii 27.7.2006, 11:57
А зачем определять к какой части речи относится слово? Походу для того, чтобы не добавлять одни и те же слова, только с разным окончанием? Если так, то я не вижу смысла. Скажем у нас 100 000 слов (естественно без точных дубликатов), возьмём среднюю длину слова 10 символов, тогда размер списка не более 1 Мб. При таком раскладе скорость индексирования вырастет в разы. Может я что-то не так понял? 

Автор: Softaz 27.7.2006, 17:06
Принадлежность к части речи - побочная возможность.


Цитата(Evghenii @  27.7.2006,  11:57 Найти цитируемый пост)
Походу для того, чтобы не добавлять одни и те же слова, только с разным окончанием

Каждое слово может иметь около 10 форм в среднем. Фактически после применения функции словарь уменьшился на 1/3.
Представь, что слово "осень" встречается в тексте 5 раз в разных формах. А  при поиске ищущий укажет 6-у форму.
Если тупо отбрасывать окончания получается, что лесби --> лес и т.д. smile 
 

Автор: zmaximka 28.7.2006, 16:59
Вот почитал я тут все и не как не могу понять! Че делать-то надо?  smile  

Автор: Softaz 28.7.2006, 17:06
Самое основное на данныий момент - дерево статей, связанное с БД.

Перебрал кучу контролов, ничего хорошего.

Обеспечить добавление, редактирование, удаление нод в нем.

Это только кажется просто smile 
Там около 10000 конечных нод и 1000 узлов будет. Это в начале. Дальше - больше. 

Автор: Evghenii 29.7.2006, 11:16
Может найти другое решение. В дерево вносить только разделы, а статьи с комментарием выносить в отдельный контрол. Типа:
Выбираем раздел->в отдельном контроле отображается названия статей по данной теме->пользователя заинтерисовала статья и он кликает на неё, в мемо(например) отображается комментарий автора статьи(например: в данной статье рассматривается проблема печати на матричных принтерах и т.д.) ->в браузере отображается сама статья. 

Автор: Exception 29.7.2006, 16:27
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=688&lngWId=10
Случаем не подойдет? 

Автор: Softaz 29.7.2006, 18:55
Exception, респект! 

Автор: Softaz 14.8.2006, 11:51
Обновил версию.

События
  • Добавлена БД и поиск по ней.
  • Появился хостинг http://netcode.ru/
  • Доделал полную online-версию World C++. Тестирую.
  • Обновлен C# World до 5552 статей и более 3000 исходников общим размером 400МБ (пока доступен только список статей - в аттаче)
Вопрос про БД.
Какой видите ее структуру?
http://netcode.ru/opensource/DOTNET_Browser_pub_v0.2_14.08.2006.7z

Автор: Softaz 9.11.2006, 09:42
Новая версия.
  • Добавлены редакторы таблиц БД.
  • Сделан механизм добавления новых статей как вручную через BB-HTML и/или HTML, так и из импортом из файла.
  • Другие незначительные изменения.

Проект v0.3 от 09.11.2006: http://netcode.ru/opensource/DOTNET_Browser_pub_v0.3_09.11.2006.7z

А кто-нибудь видел реализацию http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=688&lngWId=10, которое Exception постом выше дал, только на C#.
Не хочется переписывать с VB.
Либо tree-компонент, в котором дерево организуется из нескольких таблиц БД со связью "1 ко многим" (связь "сама на себя" не подходит).

Автор: mr.DUDA 9.11.2006, 09:53
Цитата(Softaz @  9.11.2006,  08:42 Найти цитируемый пост)
А кто-нибудь видел реализацию такого дерева, которое Exception постом выше дал, только на C#.Не хочется переписывать с VB.Либо tree-компонент, в котором дерево организуется из нескольких таблиц БД со связью "1 ко многим" (связь "сама на себя" не подходит).

Только если руками ветки добавлять в дерево...  smile 

Автор: Softaz 9.11.2006, 10:00
Цитата(mr.DUDA @  9.11.2006,  09:53 Найти цитируемый пост)
Только если руками ветки добавлять в дерево...   

Вот этого-то я и боялся... Хотя помню, что для Delphi есть такой компонент. Придется самому писать.

Автор: AlexBar 13.11.2006, 17:51
Цитата(Softaz @  9.11.2006,  09:42 Найти цитируемый пост)
А кто-нибудь видел реализацию такого дерева, которое Exception постом выше дал, только на C#.Не хочется переписывать с VB.Либо tree-компонент, в котором дерево организуется из нескольких таблиц БД со связью "1 ко многим" (связь "сама на себя" не подходит).

держи! сконвертил из VB на C#

Автор: Softaz 13.11.2006, 18:43
AlexBar, спасибо.

Автор: Softaz 27.11.2006, 10:48
Проект v0.5 от 27.11.2006: http://netcode.ru/opensource/DOTNET_Browser_pub_v0.5_27.11.2006.7z

Автор: DarkDragon 27.11.2006, 12:42
Посмотрел базу данных mdb, ну и решил предложить свою идею:

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

Еще так как htm файлы могут использовать ресурсные файлы (img, css, js, vbs, ...) то можно
скажем сделать специальное имя папки htmres.res, и поместить все ресурсы туда, а программа будет
игнорировать папки с окончаниями .res, ну или еще с каким небудь окончанием smile

К примеру:

    (dir)database:
        (dir)ASP.NET:
            ...
        (dir)CSharp:
            (dir)Примеры:
                (file)info.inf
                (file)Создание кнопки в стиле XP.htm
                (file)Делаем RTF редактор.htm]

содержание файла info.inf:
[Название файла htm]|[описание]|[автор]|[оценка]
Создание кнопки в стиле XP.htm|В этом примере вы научитесь...|Dark Dragon|5.0
Делаем RTF редактор.htm|Вместе с вами мы сделаем кульный RTF редактор...|Dark Dragon|5.0

При добавлении скажем статьи в избранное можно записать окончательный путь:
    CSharp\Примеры\Делаем RTF редактор.htm (программа отделяет название и расширение(htm) и получается название статьи, ну а если узер кликнет по статье, то программа загрузит [Путь к программе]+[database]+[CSharp\Примеры...).
и заносим эту строку в отдельный фаил favorits.dat

Вместо скрипта info.inf, можно использовать XML, и использовать такое имя: info.xml

Теперь, при загрузке программы в TreeView, грузятся папки с database(т. е. CSharp и ASP.NET),
или можно сделать ComboBox и занести его вверх над TreeView, и загрузить категории именно в ComboBox,
далее, при открытии скажем какой-то папки в TreeView (а папка отражает тему, т. е. для пользователя это
будет тема а не папка), первым делом загружаются еще подпапки(подкатегории), следом загружается фаил
info.inf, или info.xml, потом грузятся все файлы htm и добавляются в TreeView, а инфу о статье уже дергаем из файла info.inf|xml.
После чего добавление новой статьи(нужно будет добавить фаил htm) и отредактировать inf|xml. 

Я не говорю что такой способ лучше mdb, просто идея.

Автор: Softaz 27.11.2006, 17:07
Цитата(DarkDragon @  27.11.2006,  12:42 Найти цитируемый пост)
Посмотрел базу данных mdb, ну и решил предложить свою идею:


Это идея Николая - так будет выглядеть структура статей в DW7.
Я пытался так сделать первоначально. Главная проблема - найти все файлы, на которые ссылается каждая HTML-страница (исходники, картинки и главное: _другие_страницы_которые_теперь_фиг_знает_в_которой_папке) и скопировать в соответствующие папки. Я пробывал сделать регуляркой, но некоторые ссылки так и не изменились smile .  Не думаю, что кто-то захочет вручную это все перебирать smile
Можно сделать из трех таблиц одну со связью на себя - дерево будет грузиться намного быстрее.
Теперь есть другая идея - нечто подобное Mod_Rewrite у апача, то есть сделать виртуальные директории. Но это пока только задумка.

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

Автор: DarkDragon 27.11.2006, 19:18
Цитата(Softaz @  27.11.2006,  17:07 Найти цитируемый пост)
Я пытался так сделать первоначально

Действительно трудно, все это сделать (при таком количестве статей), но я думаю не стоит тарапиться с созданием релиза.
   
   Лучше чтобы все было органезованее, ну и такой подход(выше указан) проще спрограммировать, и во вторых оптимально будет грузит в TreeView. Вообщем это мое предположение. 

   Когда то я тоже ленился раскладывать файлы на компе (у меня было около 350 000 картинок, 100 000 - видео(mpg,avi,asf), 45 000 архивов (zip,rar,cab,...), 190 000 exe файлов), каждый фаил нужно было просмотреть, ненужное удалить, картинки и видео распределить по категориям(папкам). Сначало было ох как лень, ну а потом собрался с силами, навел конкретный порядок (за полтора месяца), теперь и место много, и OS грузит нормально, и самому стало легче искать нужные файлы. И я думаю что с html файлами можно разобраться, и не за неделю а хотя бы за месяц. Ну как я сказал выше, когда то я тоже ленился, и я прекрастно понимаю что такое лень!


Автор: Softaz 27.11.2006, 19:48
Цитата(DarkDragon @  27.11.2006,  19:18 Найти цитируемый пост)
Когда то я тоже ленился раскладывать файлы на компе

Как я тебя понимаю  smile 

Вот измененная загрузка дерева. Все летает (менее 1 секунды)

Код

    #region TreeView

    public class MyTree
    {
        public void BuildTreeView(TreeView tv, ImageList il, ToolStripStatusLabel lb)
        {
            tv.Nodes.Clear();
            tv.BeginUpdate();
            tv.ImageList = il;
            tv.SelectedImageIndex = 3;
            tv.BeforeExpand += new TreeViewCancelEventHandler(tv_BeforeExpand);

            #region Заполнение A
            string command_a = "Select * from kategory ORDER BY kategory";
            System.Data.OleDb.OleDbDataAdapter adapter_a = new System.Data.OleDb.OleDbDataAdapter(command_a, global::Netcode.Properties.Settings.Default.csanConnectionString);
            System.Data.DataSet topics = new System.Data.DataSet();
            adapter_a.Fill(topics, "kategory");
            #endregion

            for (int i = 0; i < topics.Tables["kategory"].Rows.Count; i++)
            {
                tv.Nodes.Add("", topics.Tables["kategory"].Rows[i]["kategory"].ToString(), 0);
                //Application.DoEvents();

                #region Заполнение B
                string command_b = "Select * from sub_kategory WHERE sub_kategory.id_k = " + topics.Tables["kategory"].Rows[i]["id_k"].ToString() + " ORDER BY sub_kategory";
                System.Data.OleDb.OleDbDataAdapter adapter_b = new System.Data.OleDb.OleDbDataAdapter(command_b, global::Netcode.Properties.Settings.Default.csanConnectionString);

                adapter_b.Fill(topics, "sub_kategory");
                #endregion

                for (int j = 0; j < topics.Tables["sub_kategory"].Rows.Count; j++)
                {
                    tv.Nodes[i].Nodes.Add(topics.Tables["sub_kategory"].Rows[j]["id_sk"].ToString(), topics.Tables["sub_kategory"].Rows[j]["sub_kategory"].ToString(), 1);
                    TreeNode tn = new TreeNode("Загрузка...", 2, 3);
                    tn.Name = "empty_" + topics.Tables["sub_kategory"].Rows[j]["id_sk"].ToString();
                    tv.Nodes[i].Nodes[j].Nodes.Add(tn);
                }
                topics.Tables["sub_kategory"].Clear();
                adapter_b.Dispose();
                Application.DoEvents();
            }
            topics.Tables["kategory"].Clear();
            topics.Dispose();
            adapter_a.Dispose();
            lb.Text = "Все статьи загружены";
            try
            {
                tv.EndUpdate();
            }
            catch (ObjectDisposedException)
            {
                //Кто-то может и не дождаться
            }
        }

        void tv_BeforeExpand(object sender, TreeViewCancelEventArgs e)
        {
            if (e.Node.Name != string.Empty)
            {
                int id_sk = 0;
                try
                {
                    id_sk = int.Parse(e.Node.Name);
                    e.Node.Nodes.Clear();

                    #region Заполнение C
                    string command_c = "Select * from articles WHERE articles.id_sk = @id_sk ORDER BY articles";
                    System.Data.OleDb.OleDbDataAdapter adapter_c = new System.Data.OleDb.OleDbDataAdapter(command_c, global::Netcode.Properties.Settings.Default.csanConnectionString);
                    adapter_c.SelectCommand.Parameters.Add("@id_sk", System.Data.OleDb.OleDbType.Integer).Value = id_sk;
                    System.Data.DataSet topics = new System.Data.DataSet();
                    adapter_c.Fill(topics, "articles");
                    #endregion
                    Application.DoEvents();
                    TreeNode[] arr_tn = new TreeNode[topics.Tables["articles"].Rows.Count];
                    for (int k = 0; k < topics.Tables["articles"].Rows.Count; k++)
                    {
                        TreeNode tn = new TreeNode(topics.Tables["articles"].Rows[k]["articles"].ToString(), 2, 3);
                        tn.Tag = topics.Tables["articles"].Rows[k]["name"].ToString();
                        arr_tn[k] = tn;
                    }
                    Application.DoEvents();
                    e.Node.Nodes.AddRange(arr_tn);
                    topics.Tables["articles"].Clear();
                    adapter_c.Dispose();
                }
                catch (FormatException)
                {
                }
                catch (ArgumentException)
                {
                }
                e.Node.Nodes.RemoveByKey("empty_" + e.Node.Name);
            }
        }
    }

    #endregion


Так что данный вопрос пока снят. Есть куча других, так что кто хочет - присоединяйтесь, советуйте, делайте и т.д. и т.п.

Автор: Softaz 29.11.2006, 13:02
Нужно ли делать поддержку плагинов?
Если да, то доступ к которым функциям дать?

Автор: DarkDragon 29.11.2006, 18:36
   Естестно надо. Все ф-ции к которым, как может показаться можно что то доделать(приделать, улучшить). И все контролы содержащие какую то информацию (относительно базы данных, и т. д.).

К примеру, скажем горячие клавиши, TreeView, MainMenu, ContextMenu и т. д.

Автор: Softaz 30.11.2006, 01:50
Вышла версия 0.6
Поскольку все время что-то меняется, а размер всех исходников уже больше 60 МБ,
куча народа скачивает и почти никто не помогает, выкладывать буду только по запросу
с сылкой в PM за вклад в развитие программы.  smile 

А пока скриншот, что получилось 

Автор: WolfON 6.12.2006, 00:05
На мой взгляд сейчас проблема проекта в его размерах и в обилии файлов - это очень долго грузится и занимает очень много места - может следует ориентироваться на что-то вроде DRKB?

Автор: Softaz 7.12.2006, 00:09
Цитата(WolfON @  6.12.2006,  00:05 Найти цитируемый пост)
может следует ориентироваться на что-то вроде DRKB

Уже думал. Вопрос, как ты сожмешь 400 метров в 10? Если ты скачивал последнюю версию, в БД есть поля "наличие архива" и "наличие иллюстраций". Исключив все статьи, содержащие иллюстрации, на все архивы сделав ссылку на сайт, можно добиться близкого к DRKB размера. Все это просто решается с помощью программы .NET World (которая в стадии разработки). Если брать ту оболочку, которая есть сейчас (DW6), то там такое отсеивание займет недели %).

Вообщем, раз попросили, сделаю ориентировочно в субботу - будет примерно 7,2 МБ статей + 1,1МБ на служебные файлы в сжатом виде.
В распакованном - примерно 40МБ.

Автор: Softaz 9.12.2006, 12:20
Проект v0.6 от 09.12.2006: http://netcode.ru/opensource/DOTNET_Browser_pub_v0.6_09.12.2006.7z
Проект v0.6 от 09.12.2006: http://netcode.ru/opensource/NET_World_0.6.7z

Добавлено @ 12:31 
Кстати, сделал обрезанную базу. Набралось чуть больше 200 статей (которые без рисунков и исходников).
Надо сказать, не самых хороших статей...
Так что... у кого полно времени:
Код

Инструменты --> Редактор БД --> Пакеты обновлений

Создаете новый пакет

Код

Документ --> Новая статья

Добавляете что-либо полезное без рисунков и файлов, выбирая что статья входит в созданный Вамипакет обновлений.
В версии 0.7 уже будет экспорт пакетов обновлений, так что ими можно будет обмениваться.

Автор: Xenon 27.12.2006, 03:03
Softaz, а как старые статьи в новый браузер вставить?

Автор: Softaz 27.12.2006, 13:58
Xenon, структура разделов и статей хранится в mdb-файле. У меня есть готовый файл БД для C++ и почти готовый для C# (осталось на день работы)
Средства подключения и экспорта статей будут включены в Beta-версию, которая выйдет до нового года.
Все сводится к выбору файла БД и каталога со статьями.

Автор: Xenon 27.12.2006, 15:12
Softaz, просто там только пара статей, а я хотел в новом просмотровике уже поглядеть smile Ну ладно, будем ждать

Автор: Softaz 27.12.2006, 17:24
Xenon, это ты про версию 0.6? Да там в БД где-то с десяток статей, ровно по кол-ву имеющихся файлов.
Если скачать 0.5, то с помощью аксесса можно перекинуть стуртуру и содержимое таблиц в 0.6 (там где-то 2500 штук).
Но лучше все-таки подождать пару дней.

Автор: Softaz 28.12.2006, 14:30
Проект v0.65 от 28.12.2006: http://netcode.ru/opensource/NetWorld_0.65.7z
  • Изменения затронули форму добавления статей (вставка новых статей упрощена. Например, можно просто выбрать в OpenDialog файл, скажем, MsWord-овский - программа сама выдернет из него текст. с помощью того же диалога можно и картинку открыть, и html, и txt и т.п.)
  • Файл со списком статей заполнен полностью (все 5 тыщ.)
  • Добавлена совместимость по умолчанию со "старым" форматом DW6. То есть теперь достаточно распаковать архив в директорию, где лежит файл NET.exe и находится директория со статьями /base/
  • Добавлена сборка статьи "на лету" (http://forum.vingrad.ru/topic-129666/kw-webbrowser-documenttext-local.html)
  • Добавлена настройка пути к каталогу со статьями (открывается автоматически, если нет директории /base/ в BaseDirectory программы и нет файла db.net в BaseDirectory программы.

Последний вопрос, который нужно решить перед релизом Beta-версии, - это децентрализованное создание пакетов обновлений. Например, Вася добавил 3 статьи и хочет ими поделится с миром.
Нужно во время внесения статьи "запоминать" все связанные с ней файлы (картинки, исходники и т.п.), а потом их копировать. Проблема в том, что Вася может быть очень глупым, что повлечет обмен "рваными статьями" - где исходника не будет, где картинки, где еще чего-нибудь.
http://forum.vingrad.ru/topic-129724/kw-href-src-image.html

Автор: Xenon 28.12.2006, 19:54
В "Учебник по C#" все документы в цикле 1-5 неправильно отображаются (видать кодировка не та)

Автор: Softaz 29.12.2006, 15:51
Цитата(Xenon @  28.12.2006,  19:54 Найти цитируемый пост)
В "Учебник по C#" все документы в цикле 1-5 неправильно отображаются (видать кодировка не та)

Сделаем перекодировку в одну, использующуюся по умолчанию.

Проект v0.7 от 29.12.2006: http://netcode.ru/opensource/NetWorld_v0.7_beta.7z - Beta версия программы.
  • При добавлении статьи происходит проверка наличия документов, на которые есть ссылки в статье.
  • Люди, помогавшие делом развитию программы, упомянуты в About (если хотите изменить информацию - в PM)
Если у Вас есть весь скаченный архив Net World со старой оболочкой (DW6), то достаточно распаковать новую оболочку в директорию, где лежит [его можно удалить] файл NET.exe и находится директория со статьями /base/. Запускать NET World.exe

Пожелания отправлять в PM или в форум или на email (указан в программе)

Автор: Softaz 31.12.2006, 15:55
Обновление до версии 0.75

1. Сделана перекодировка текста "на лету"
2. Изменен браузер статей.
3. Дополнен HTML-редактор
4. Изменены компоненты ComboBox.
5. Исправлено несколько багов.

Обновление v0.7 до v0.75 от 31.12.2006: http://netcode.ru/opensource/Update_NetWorld_0.7_to_0.75.7z - Beta версия программы. - необходимо заменить файлы в проекте.

Автор: veres 6.1.2007, 10:39
Респект за проект!!!

обновился до версии 0.75, а проблемы с неправильным отображением некоторых страниц остались...
smile

P.S. Пробовал скачать исходники - не качаются ... smile


Автор: Softaz 6.1.2007, 18:49
Цитата(veres @  6.1.2007,  10:39 Найти цитируемый пост)
обновился до версии 0.75, а проблемы с неправильным отображением некоторых страниц остались...


Документ -> Кодировка. Выберешь подходящую.
Потом обнови страницу (есть кнопочка на каждой вкладке)

Сейчас доступны исходники 0.6 версии.
Если тебе не влом качать почти 10 метров, в понедельник выложу последний релиз.

Автор: andak 8.2.2007, 23:01
 smile Всем тривет! Хочу учиться программировать. Для этого хотел скачать статьи WorldC# с http://netcode.ru/download/?id_d=3. Там ссылки на http://www.ladia.ru/cpp/NET_WORLD.7z, http://www.ladia.ru/cpp/NET_WORLD_IMG.7z и т.д. не рабочие. Уж и не знаю к кому обратиться. smile  smile  smile 

Автор: Softaz 9.2.2007, 03:30
Цитата(andak @  8.2.2007,  23:01 Найти цитируемый пост)
Там ссылки на http://www.ladia.ru/cpp/NET_WORLD.7z, http://www.ladia.ru/cpp/NET_WORLD_IMG.7z и т.д. не рабочие.

Это хост не рабочий smile ссылки-то в порядке. Похоже, хостер лежит.

Автор: andak 9.2.2007, 10:04
Softaz, подскажи, как выйти из положения. Может то же самое можно где-нибудь ещё скачать?

Автор: Softaz 10.2.2007, 01:34
Цитата(andak @  9.2.2007,  10:04 Найти цитируемый пост)
Softaz, подскажи, как выйти из положения. Может то же самое можно где-нибудь ещё скачать

Перезалью завтра.

Добавлено @ 01:35 
А вернее уже сегодня =)

Автор: andak 10.2.2007, 18:23
 smile Дык, всё равно не качается. smile  smile  smile 

Автор: Softaz 11.2.2007, 22:24
Качается отсюда: http://netcode.ru/download/?id_d=2

Автор: andak 12.2.2007, 10:28
Softaz, спасибо конечно, но World C++ меня не интересует. Меня интересует World C# smile 

Автор: Softaz 14.2.2007, 19:51
Цитата(andak @  8.2.2007,  23:01 Найти цитируемый пост)
сем тривет! Хочу учиться программировать. Для этого хотел скачать статьи WorldC# с http://netcode.ru/download/?id_d=3. Там ссылки на http://www.ladia.ru/cpp/NET_WORLD.7z, http://www.ladia.ru/cpp/NET_WORLD_IMG.7z и т.д. не рабочие. Уж и не знаю к кому обратиться.      


Качай, пока рабочее smile

Автор: andak 14.2.2007, 21:03
Softaz, огромное, человеческое спасибо! smile  smile 

Автор: quizug 3.3.2007, 04:47
Лишние файлы в архивах для распространения

NET_WORLD.7z
При распространении необходима только одна копия дерева статей
\base\tree.info

Остальные файлы генерируются при запуске и в архиве не нужны:
Дерево при самом первом запуске программы
\base\tree.first

Дерево при последнем запуске программы
\base\tree.last

Резервные копии деревьев
\base\tree_20050825.day
\base\tree_20060503.day
\base\tree_20060624.day
\base\tree_20070403.day

Тоже какая-то резервная копия smile
\base\tree.auto

smile
\base\список.tree

Список новых статей
\base\new_articles.txt

Резервная копия файла \base\interface.ini
\base\interface.bak

NET_WORLD_IMG.7z
\base\images\Thumbs.db
Размер: 1,52 МБ (1 598 128 байт)

\base\graphics\Thumbs.db
8,50 КБ (8 704 байт)
Файлы содержит эскизы картинок для отображения в Explorer'е

Непонятное расширение smile
\base\images\0321245660\graphics\02fig01.gif;379354
\base\images\0321245660\graphics\02fig02.gif;379354
\base\images\0321245660\graphics\02fig03.gif;379354
\base\images\0321245660\graphics\03fig01.gif;379354
\base\images\0321245660\graphics\06fig01.gif;379354

Эти файлы наверное стоит перенести в NET_WORLD.7z
\base\images\docsafari.css
\base\images\ie.content.css
\base\images\style.css
\base\images\xpolecat.css

\base\images\favicon.ico
\base\images\mail.ico
\base\images\site.ico
\base\images\tree.ico

\base\NFO\lib.html

Мелкие замечания:

Многие названия статей в дереве урезаны
Например: .NET -> .NET по шагам -> "108 - Перегрузка операторов и наши типы данны"

Отсутствует файл .NET -> .NET по шагам -> ""

На некоторых страницах присутствует DelphiWorld Header(\images\title.jpg) и Footer(Проект Delphi World © Выпуск 2002 - 2004) 
Например: Авторы -> Показать всех авторов

Нельзя запустить DelphiWorld если .NET World уже запущен smile

Справка -> Вызов справки
Ссылка на dw6help.hlp

Вид -> Панели инструментов -> Настройка...
Закладка "команды" с маленькой буквы


Альтернативные способы сжатия smile
Первое значение архив как он есть, второе значение после удаления лишних файлов.
 
Распространяемый файл NET_WORLD.7z
6,21 МБ (6 522 559 байт)
http://www.ladia.ru/cpp/NET_WORLD.7z (вместо указанных 4,38 МБ)

7-zip 4.44 beta
Compression level: Ultra
Compression method: LZMA
Solid archive
4,20 МБ (4 411 209 байт)
4,22 МБ (4 431 076 байт)

Compression level: Ultra
Compression method: PPMd
Solid archive
3,66 МБ (3 846 589 байт)
3,64 МБ (3 824 229 байт)

Compression level: Ultra
Compression method: BZip2
Solid archive
4,65 МБ (4 885 131 байт)
4,55 МБ (4 772 692 байт)

Распространяемый файл NET_WORLD_IMG.7z
17,7 МБ (18 645 091 байт)

7-zip 4.44 beta
Compression level: Ultra
Compression method: LZMA
Solid archive
17,7 МБ (18 637 090 байт)
16,6 МБ (17 509 460 байт)

Compression level: Ultra
Compression method: PPMd
Solid archive
17,8 МБ (18 747 501 байт)
16,7 МБ (17 573 799 байт)

Compression level: Ultra
Compression method: BZip2
Solid archive
19,2 МБ (20 166 072 байт)
18,1 МБ (18 983 147 байт)

Для статей бы я предпочел PPMd, а для рисунков LZMA

NET_WORLD_SRC.7z
\base\FILES\
Thumbs.db
89 файлов
1,99 МБ (2 088 448 байт)
и много-много где лежат лишние папки bin\ и obj\
Если все вычистить и оставить только проектные файлы, то размер значительно уменьшится
К сожалению еще не успел все почистить, так что выложу информацию позже smile

Автор: quizug 3.3.2007, 23:45
В одном из предыдущих постов посмотрел функцию построения дерева, хотелось бы высказать несколько советов по структуре кода:

Код

#region TreeView
    public class MyTree
    {
        public void BuildTreeView(TreeView tv, ImageList il, ToolStripStatusLabel lb)
        {
            tv.ImageList = il;
            tv.SelectedImageIndex = 3;
            tv.BeforeExpand += new TreeViewCancelEventHandler(tv_BeforeExpand);

            tv.BeginUpdate();
            tv.Nodes.Clear();
            #region Заполнение A
            string command_a = "SELECT * FROM Category ORDER BY category";
            System.Data.OleDb.OleDbDataAdapter adapter_a = new System.Data.OleDb.OleDbDataAdapter(command_a, global::Netcode.Properties.Settings.Default.csanConnectionString);
            System.Data.DataSet topics = new System.Data.DataSet();
            adapter_a.Fill(topics, "Category");
            #endregion
            foreach(DataRow row in topics.Tables["Category"].Rows)
            {
                TreeNode node=tv.Nodes.Add("", row["category"].ToString(), 0);
                #region Заполнение B
                string command_b = "SELECT * FROM Sub_Category WHERE Sub_Category.ID_C = " + row["ID_C"].ToString() + " ORDER BY sub_category";
                System.Data.OleDb.OleDbDataAdapter adapter_b = new System.Data.OleDb.OleDbDataAdapter(command_b, global::Netcode.Properties.Settings.Default.csanConnectionString);
                adapter_b.Fill(topics, "Sub_Category");
                #endregion
                foreach(DataRow subrow in topics.Tables["Sub_Category"].Rows)
                {
                    TreeNode subnode=node.Nodes.Add(subrow["ID_SC"].ToString(), subrow["Sub_Category"].ToString(), 1);
                    subnode.Nodes.Add("empty_" + subrow["ID_SC"].ToString(),"Загрузка...", 2, 3);
                }
                topics.Tables["Sub_Category"].Clear();
                adapter_b.Dispose();
                Application.DoEvents();
            }
            topics.Tables["Category"].Clear();
            topics.Dispose();
            adapter_a.Dispose();
            lb.Text = "Все статьи загружены";
            try
            {
                tv.EndUpdate();
            }
            catch (ObjectDisposedException)
            {
                //Кто-то может и не дождаться
            }
        }
        void tv_BeforeExpand(object sender, TreeViewCancelEventArgs e)
        {
            if (e.Node.Name != string.Empty)
            {
                int ID_SC = 0;
                try
                {
                    ID_SC = int.Parse(e.Node.Name);
                    e.Node.Nodes.Clear();
                    #region Заполнение C
                    string command_c = "SELECT * FROM Articles WHERE Articles.ID_SC = @ID_SC ORDER BY articles";
                    System.Data.OleDb.OleDbDataAdapter adapter_c = new System.Data.OleDb.OleDbDataAdapter(command_c, global::Netcode.Properties.Settings.Default.csanConnectionString);
                    adapter_c.SelectCommand.Parameters.Add("@ID_SC", System.Data.OleDb.OleDbType.Integer).Value = ID_SC;
                    System.Data.DataSet topics = new System.Data.DataSet();
                    adapter_c.Fill(topics, "Articles");
                    #endregion
                    Application.DoEvents();
                    List<TreeNode> nodes = new List<TreeNode>(topics.Tables["articles"].Rows.Count);
                    foreach(DataRow row in topics.Tables["Articles"].Rows)
                    {
                        nodes.Add(new TreeNode(row["name"].ToString(),topics.row["articles"].ToString(), 2, 3));
                    }
                    Application.DoEvents();
                    e.Node.Nodes.AddRange(nodes);//или nodes.ToArray()
                    topics.Tables["articles"].Clear();
                    adapter_c.Dispose();
                }
                catch (FormatException)
                {
                }
                catch (ArgumentException)
                {
                }
                e.Node.Nodes.RemoveByKey("empty_" + e.Node.Name);
            }
        }
    }
    #endregion


За точность написания кода не ручаюсь писал в Блокноте smile
Хотелось бы отметить несколько моментов:
1. Сategory пишется так (обычно, если я не знаю как пишется слово, смотрю в словаре)
2. Вместо System.Data.OleDb.OleDbDataAdapter можно подключить пространство имен
using System.Data.OleDb;
и писать просто OleDbDataAdapter
3. "SELECT * FROM Category ORDER BY category"
Ключевые слова (SELECT, FROM, ORDER BY, ...) заглавными
Название таблиц с заглавной, поля лучше тоже с заглавной.
4. Вместо
OleDbDataAdapter adapter = new OleDbDataAdapter(...);
...
adapter.Dispose();
лучше писать так
using(OleDbDataAdapter adapter = new OleDbDataAdapter(...))
{
...
}
для IDisposable объектов обеспечивает очистку, даже в случае ошибки.
5. Не совсем понял что это значит
TreeNode tn = new TreeNode(topics.Tables["articles"].Rows[k]["articles"].ToString(), 2, 3);
tn.Tag = topics.Tables["articles"].Rows[k]["name"].ToString();
возможно name нужно записать не в Tag, а в Name (чтобы потом можно было просто обратиться или осуществить поиск)
nodes.Add(new TreeNode(row["name"].ToString(),topics.row["articles"].ToString(), 2, 3));
6. Номера картинок из ImageList'а нужно задать константами в начале
7. Подход с создание списка узлов, а уж потом добавления всего списка в дерево должен работать быстрее, так что первую функцию нужно переписать в стиле второй

По общему стилю написания кода существуют определенные стандарты www.idesign.net скачивать IDesign Standard
Если скинешь ссылку на исходники может еще чего подскажу smile

Автор: WALdemar 25.5.2007, 01:26
А залейте куда нить, чтобы всегда можно было скачать...
на ifolder какой нить. Пожалуйста

Автор: RWander 26.5.2007, 15:25
Цитата(quizug @  3.3.2007,  04:47 Найти цитируемый пост)
http://www.ladia.ru/cpp/NET_WORLD.7z

ссылка битая (((

Автор: Softaz 30.5.2007, 20:29
Цитата(RWander @  26.5.2007,  15:25 Найти цитируемый пост)
ссылка битая (((

Там произошло неприятное событие - хостер удалил все файлы (забыли проплатить за хостинг).
Исходящий канал у меня слабый, поэтому временно не доступна.

Автор: RWander 28.6.2007, 10:34
Softaz
Цитата(WALdemar @  25.5.2007,  01:26 Найти цитируемый пост)
А залейте куда нить, чтобы всегда можно было скачать...на ifolder какой нить. Пожалуйста
 

Автор: FR2elancER 28.7.2007, 22:44
Залейте плз!!! Заранее благодарен!

Автор: kurzon 12.8.2007, 12:15
 smile Где скачать все html файлы...  smile 
Я уже перекачав все сылки и все не рабочые проекты без файлов....

Автор: kurzon 17.8.2007, 11:07
Когда буде ета прога, модеры закройте тему, сылки ложные одна прога, а самых сайтов в них нету. я столько трафика перепортил и за вас....

Автор: Idsa 18.8.2007, 11:32
Цитата(kurzon @  17.8.2007,  11:22 Найти цитируемый пост)
Ну только попробуйте меня забанить, до вас никто нибудет хадит, сечас только я сюда хажу, а патом тут никаво нибудет...
Никто в ету тему не заглядует, я тут сам....

Смеюсь сквозь слезы smile

Автор: Linus 27.8.2007, 10:29
Залил на megaupload.com:

http://www.megaupload.com/?d=G5680NUI
http://www.megaupload.com/?d=IUE99YJQ
http://www.megaupload.com/?d=W99YTUIQ
http://www.megaupload.com/?d=62MYB4P3
http://www.megaupload.com/?d=3D3OY68Z
http://www.megaupload.com/?d=SYJTP3PV


Цитата(kurzon)

я столько трафика перепортил и за вас.

А сколько я трафика переплатил, загружая весь текст, который ты нафлудил...

Автор: RWander 28.8.2007, 20:18
Linus, респект! +1

только не понятно что за файлы NET_WORLD_SRC.7z.001, NET_WORLD_SRC.7z.002, NET_WORLD_SRC.7z.003

Автор: RWander 28.8.2007, 20:48
хорошо бы еще добавить в программу функцию загрузки новых статей, как это сделанно в Delphi World 6

Автор: npoka3a 31.8.2007, 08:28
Цитата(RWander @ 28.8.2007,  20:48)
хорошо бы еще добавить в программу функцию загрузки новых статей, как это сделанно в Delphi World 6

Меню Правка
Добавить категорию
Добавить статью
все есть

Автор: RWander 31.8.2007, 14:40
npoka3a, если вы пользовались Delphi World 6, то там была функция "Обновление", при нажатии которой происходит загрузка в базу новый статей из инета, а в .NET World такого, к сожалению, нет. smile 

Автор: Softaz 3.9.2007, 13:14
Цитата(RWander @  31.8.2007,  14:40 Найти цитируемый пост)
npoka3a, если вы пользовались Delphi World 6, то там была функция "Обновление", при нажатии которой происходит загрузка в базу новый статей из инета, а в .NET World такого, к сожалению, нет. 

Автоматического обновления нет, но можно сделать скаачиваемое обновление. Скачай мою оболочку -- там целый визуальный HTML - редактор есть. (http://netcode.ru/opensource/nc07.png)
  • Создаешь новое обновление
  • При создании статей сопоставляешь их этому обновлению
  • Экспортируешь в файл new_articles.txt, архивиуешь и выкладываешь для скачивания
Добавлено @ 13:20
Цитата(RWander @  28.8.2007,  20:18 Найти цитируемый пост)
только не понятно что за файлы NET_WORLD_SRC.7z.001, NET_WORLD_SRC.7z.002, NET_WORLD_SRC.7z.003

Установи архиватор 7-zip и сразу все станет ясно.

kurzonвсе файлы из первого поста скачиваются.

Автор: VisualProgrammerNET 3.9.2007, 20:37
А нельзя ли залить эти же файлы на русскоязычный обменник? Например ifolder или dump? А то с мегааплоада не качает у меня  smile 

Код

В настоящее время все ресурсы загрузки, выделенные для вашей страны (Russian Federation) уже используются.

И так уже который год попыток что-то скачать с мегааплоад... 

Автор: RWander 3.9.2007, 20:40
Цитата(VisualProgrammerNET @  3.9.2007,  22:37 Найти цитируемый пост)
А то с мегааплоада не качает у меня

я закачал все нормально )
там какую-то прогу нужно сначала установить для начала, тогда уже можно без проблем закачать

Автор: mr.DUDA 6.9.2007, 11:18
Обновлённые ссылки - в закреплённом первом посте (см. вверху страницы).

Автор: alhimik 8.9.2007, 21:00
Я че-то не пойму...400мб а статей всего лишь 5552. Все распаковал в base, дерево "last_tree.tree" загружаю а результат всё тот же. Что я делаю не так?

Автор: Softaz 10.9.2007, 07:03
Цитата(alhimik @  8.9.2007,  21:00 Найти цитируемый пост)
400мб а статей всего лишь 5552

Все правильно. Такой размер из-за исходников и картинок.

Автор: Skiminok 10.9.2007, 21:51
В планах после проекта Delphi World насколько помню, было огромное количество миров (http://delphiworld.narod.ru/newworlds.html). Что в итоге произошло с этими начинаниями, кроме собранных здесь C++ World, C# World и ASM World (за которые низкий поклон и респект до самой смерти)? Неужели с авторами вышел такой кошмар, что сиправить ситуацию годичной давности уже никто не в силе?

Автор: Softaz 13.9.2007, 15:40
Цитата(Skiminok @  10.9.2007,  21:51 Найти цитируемый пост)
Неужели с авторами вышел такой кошмар, что исправить ситуацию годичной давности уже никто не в силе

Это ты лучше у них спроси. Ни за кого  говорить не берусь, хотя и думаю, что все начинания построены на голом энтузиазме, который кончается после _ручного_ набора N статей (из переписки с несколькими авторами узнал, что каждую статью они находят и добавляют вручную). 
С таким раскладом, если работать целый день и заниматься только этим (по 8 часов) при условии, что на поиски и добавление одной статьи уходит 10 минут, то за месяц можно добавить 1000 статей. И это при самой быстрой работе.

Я бы тоже с удовольствием почитал новый мир про что-нибудь. Все хочу сделать 1C-World, да руки не доходят.

Автор: kurzon 24.9.2007, 18:55
Ктото заархивировать всю ету книгу и скиньте...
А то я не знаю как их соединять...

Автор: kurzon 2.10.2007, 11:12
А все ответы какие дают на етом форуме пачиму не заносят в C# .NET World...
Былобы здорово если б занасили...
А кто заносит наши ответы на форуме в C# .NET World?

Автор: kurzon 3.10.2007, 11:27
Добавте функцию загрузки статей из разных директорий?

Автор: NikeDeForest 3.10.2007, 19:57
А не предусмотрено возможности продажи дисков (с почтовой доставкой) с этим делом? ПРосто все сразу качать неподъемно, например, для меня. Я бы предпочел купить диск, а потом уже докачивать обновления. Сейчас в принципе СД-диска достаточно. 
Тоже самое и для С++ smile

Автор: Softaz 4.10.2007, 07:29
Цитата
А не предусмотрено возможности продажи дисков (с почтовой доставкой) с этим делом? ПРосто все сразу качать неподъемно, например, для меня. Я бы предпочел купить диск, а потом уже докачивать обновления. Сейчас в принципе СД-диска достаточно. 
Тоже самое и для С++

Отсылать диск почтой выйдет дороже (конечно, если отправлять по правилам - иначе были случаи, когда штамповка на почте карежила диск) - около 500 руб.
Можно пойти в интернет-кафе или найти человека с безлимиткой (я так раньше делал - на городском форуме).
Далее, можно найти диск журнала ХАКЕР за март 2006 г. с DVD-диском - там есть справочник World C++. Или же номер (пока нет под рукой - вечером напишу) за 2007 г. с DVD-диском - там все справочники сайта (в отдельном одноименном разделе).

Автор: Softaz 4.10.2007, 07:49
А по поводу занесения топиков в программу, думаю будет лучше сделать как в Google.Desktop: при поиске в программе посредством http-запроса (GET или POST) на форум Винграда и полученную страничку выводить в результаты программы вместе с найденным локально.

Автор: NikeDeForest 4.10.2007, 12:50
диск в коробочку,отправляешь заказным письмом, в большом конверте, делаешь опись, что диск и они проштампуют вручную. Получится меньеш 50 рублей. 
интернет кафе также невыгодно, найти у кого безлим невозможно, потому как у нас в области операторы не имеют такого в тарифном плане. Журнал хакер также не имеется в продаже.

Автор: Softaz 4.10.2007, 13:11
NikeDeForest, я позвоню на почту еще раз. Может мне не то сказали. А куда надо отправлять диск? Ты в какой стране живешь?

Автор: NikeDeForest 6.10.2007, 18:08
Россия, Тамбовская область. Буду очень признателен. Ну и соотвественно затраты на отправление с меня.

Автор: kurzon 6.10.2007, 23:07
Добавте функцию загрузки статей из разных каталогов, та возможность загружать вордовськи файлы? 

Автор: Softaz 9.10.2007, 09:05
Цитата

Добавте функцию загрузки статей из разных каталогов, та возможность загружать вордовськи файлы? 
  • Загрузка статей из разных каталогов будет в финальной версии из-за сырости (в паблике его еще нет) поискового движка.
  • Вордовские файлы (и не только их) загружать - вернее извлекать текст - можно через выпадающее меню открытия файла (в формме создания новой статьи). Вообще мысль интересная. Надо попробывать.

NikeDeForest, DVD диск пойдет? (на CD нерентабельно). Скинь адрес доставки в PM.

Автор: NikeDeForest 9.10.2007, 11:51
В РМ'е.

Автор: Demonid 13.10.2007, 14:07
Интересно кагда будет новые статии ?

Автор: kurzon 14.10.2007, 12:24
Цитата(kurzon @ 6.10.2007,  23:07)
Добавте функцию загрузки статей из разных каталогов, та возможность загружать вордовськи файлы?

Если ети функции были, то я сам и каждый добавлял новые стати.

Автор: Real 5.12.2007, 23:15
Скиньте исходник  World чтоб я добавил несколько функций?

Автор: Real 9.1.2008, 19:23
Добавте это к справочнику? 

Тема№1: MessageBox
Код

if(MessageBox.Show("Программа", "№1", MessageBoxButtons.YesNo, MessageBoxIcon.Question)==DialogResult.Yes)
{
                MessageBox.Show("Yes");
}
else
{
                MessageBox.Show("No");
}



Тема№2: Сортировки

 
Код

static class BubbleSort
    {
        public static void Sort<T>(T[] array, Comparison<T> comparison)
        {
            for (int i = array.Length - 1; i > 0; i--)
            {
                for (int j = 0; j < i; j++)
                {
                    if (comparison(array[j], array[j + 1]) > 0)
                    {
                        T temp = array[j];
                        array[j] = array[j + 1];
                        array[j + 1] = temp;
                    }
                }
            }
        }
    }
    static class InsertSort
    {
        public static void Sort<T>(T[] array, Comparison<T> comparison)
        {
            int i, j, k;
            for (i = 1; i < array.Length; i++)
            {
                T temp = array[i];
                k = i;

                for (j = i - 1; (j >= 0) && (comparison(array[j], temp) > 0); j--)
                {
                    array[j + 1] = array[j];

                }

                array[j + 1] = temp;

            }

        }
    }
    static class SelectSort
    {
        public static void Sort<T>(T[] array, Comparison<T> comparison)
        {
            int i, j, k;
            for (i = 0; i < array.Length; i++)
            {
                T temp = array[i];
                k = i;

                for (j = i + 1; j < array.Length; j++) // цикл выбора наименьшего элемента
                    if ((comparison(array[j], temp) < 0))
                    {
                        k = j; temp = array[j]; // k - индекс наименьшего элемента
                    }
                array[k] = array[i];
                array[i] = temp; // меняем местами наименьший с a[i]


            }

        }
    }
    static class ShellaSort
    {
        public static void Sort<T>(T[] array, Comparison<T> comparison)
        {
            int j, h;
            bool k;

            h = array.Length / 2;

            while (h > 0)// просмотры
            {
                k = true;
                while (k == true)// просмотры
                {
                    k = false;

                    for (j = 0; j < (array.Length - h); j++)//движение вниз

                        if (comparison(array[j], array[j + h]) > 0)
                        {

                            T buf = array[j];

                            array[j] = array[j + h];

                            array[j + h] = buf;

                            k = true;
                        }
                }
                h = h / 2;
            }

           

        }
    }
    static class PiramidalneSort
    {
        public static void Sort<T>(T[] array, Comparison<T> comparison)
        {

            int i, j, L = array.Length / 2, r = array.Length - 1;
            T temp;

            while (true)
            {

                if (L > 0)
                {
                    

                 
                    L--;

                    temp = array[L];

                }
                else
                {

                    temp = array[r];
                
                    array[r] = array[0];
                  
                    r--;        
                    if (r == 0)     
               
                 
                    {
                        array[0] = temp;
                        return;
                    }
                }

                
                i = L;

               

               
                while (true)
                {
                    j = i;
                    i = i * 2 + 1;
                    if (i < r) 
                    {

                        if (comparison(array[i + 1], array[i]) > 0) 
                            i++;
                    }
                    else if (i != r) 
                        break;

                    if (comparison(temp, array[i]) > 0)
                     
                        break;
                    array[j] = array[i]; 
                  

                }
                array[j] = temp;     

            }
        }




Тема №3 Запуск процесса.

Код

System.Diagnostics.Process.Start("Путь");


Автор: Stepan_Lameroff 9.1.2008, 19:50
[OFFTOP], да простят меня модераторы
Цитата

array[j] = temp;     //Батько міститься на місце сина

Я плакал  smile 

Kurzon, пиши еще!

Автор: Real 9.1.2008, 20:44
2Stepan_Lameroff Где ты такое видел?

Автор: Real 18.1.2008, 00:49
Сколько раз в год выходит дополнительные статии до этого зборника? 

Автор: Maer 31.1.2008, 01:08
Очень хорошая идея!  smile 
Я магу индексатцю и поиск. smile 

Автор: crashower 6.2.2008, 16:02
А можна ли его выложить на какой то банк файлов, что б скорость повыше была. а то у меня больше 6 к не поднимаетса :( хотя канал норм

Автор: Able 7.2.2008, 17:12
Вот на рапиде кому надо, хотя у меня с 1gb (кста мой хостер, просто супер) отлично качается....

http://rs383.rapidshare.com/files/89858103/hjsplit.rar

1. http://rapidshare.com/files/89864110/NET_WORLD.exe.001
2. http://rapidshare.com/files/89870369/NET_WORLD.exe.002
3. http://rapidshare.com/files/89878930/NET_WORLD.exe.003


Автор: Real 21.2.2008, 16:30
А как проверить сколько статей у меня в программе?


Вот пишут на форуме.
Код

Сам справочник можно скачать ниже (более 5500 статей):


А вот пишут на сайте.
Код

  Архив содержит более 3050 статей по C#

Автор: Softaz 26.2.2008, 16:09
Спасибо за замечание.
Это была бага. Поставил галку не там и отображалась старая страничка со старым адресом cs, а надо было dotnet.

Автор: Real 9.3.2008, 22:21
За последних 180 дней сколько статей добавлено?

Автор: Real 10.3.2008, 14:04
Уроки по С# - http://blog.excode.ru/

Вот ссылки по Excel и Word :
http://wladm.narod.ru/C_Sharp/comexcel.html
http://wladm.narod.ru/C_Sharp/comword.html


Как создать PDF из C Sharp (C#). Пример: "Hello, PDF!" - http://www.colorpilot.ru/pdfsample_csharp.html

Статьи по программированию - http://www.ishodniki.ru/art/?cat=1&show=net

Копилка разработчика - http://www.shareinfo.ru/technologies/languages/c-sharp

Основы программирования на C# - http://www.intuit.ru/department/pl/csharp/

Russian Software Developer Network - http://www.rsdn.ru/

http://forum.sources.ru/index.php?showtopic=96457&view=showall

Создание документов в формате PDF средствами .NET - http://www.rsdn.ru/article/dotnet/pdfviadotnet.xml

Блог по .NET => http://blogs.gotdotnet.ru/personal/gaidar/CategoryView.aspx?category=.NET

Вот блог http://blogs.gotdotnet.ru/CategoryView.aspx?category=FAQ

http://blogs.gotdotnet.ru/CategoryView.aspx?category=.NET

http://blogs.gotdotnet.ru/personal/dr.gigabit/PermaLink.aspx?guid=b5dee527-4066-4bcd-abd9-66cac595e433

http://www.podgoretsky.com/ftp/Docs/CSharp/CSharpBasis/#001

Создание компонентов - http://www.progs.biz/csharp/components/components01.aspx

Некоторые вопросы создания компонентов в C# - http://www.gotdotnet.ru/LearnDotNet/CSharp/730.aspx

Неплахая литература по WinForms есть тут http://www.intuit.ru/department/pl/visualcsharp/

Win Forms -> http://devoid.com.ua/csharp/win-forms.html

Windows Presentation Foundation -> http://www.thevista.ru/list.php?c=articles1101

WinForms FAQ - http://www.bousoft.com/winforms.php

DirectX 9 с управляемым кодом. Программирование игр и графики по С# - http://samouchka.net/2007/02/04/managed_directx_9_s_upravljaemym_kodom.html

Работа с Managed DirectX 9 в C# (Csharp)
http://devoid.com.ua/csharp/win-forms/csharp-work-with-managed-directx.html

Основы DirectX на управляемом C#-коде - http://www.maximyudin.com/?p=5

Статья (в формате PDF) и примеры кода доступны Здесь.

GDI+ - > >> http://www.citforum.ru/programming/csharp/gdi_plus/

Примеры GDI+ - http://www.bousoft.com/gdiplus.php

Обзор framework 3.x: WPF http://forum.vingrad.ru/articles/topic-199479/kw-2008-net-wpf.html

Windows Presentation Foundation -> http://www.thevista.ru/list.php?c=articles1101

ADO.NET

Вот тут простенько и со вкусом про ADO.NET для новичков. - http://www.csharphelp.com/archives3/archive586.html

Вот еще онлайн кур по ADO.NET, специально для тебя на русском. - http://www.megalib.com/books/978/Glava_9/Index0.html

Онлайн курс. - http://www.ivobrugge.be/cursusweb/adonet/

Доступ к данным - - - http://msdn.microsoft.com/library/rus/default.asp?url=/library/RUS/vbcon/html/vboriIntegratingDataVB.asp

Книги по ADO.NET - http://www.knigka.info/category/ado_net/

Основы ADO .NET -> http://www.citforum.ru/programming/csharp/ado_dot_net/

Статьи ADO.NET - http://www.gotdotnet.ru/LearnDotNet/ADONET/default.aspx

Подробности об ADO.NET 3.0 - http://blogs.gotdotnet.ru/personal/mihailik/CategoryView.aspx?category=ADO.NET

Литература по ASP.NET - http://www.intuit.ru/department/se/aspdotnet/

Книга Создание приложений ASP.NET - http://www.proklondike.com/contentview.php?content=43

Лекции ASP.NET - http://www.aspnetmania.com/

Использование AJAX в ASP.NET - http://dev.net.ua/blogs/oshastitko/archive/2006/10/28/195.aspx

http://www.aspnetmania.com/default.aspx

Исходники

http://www.bousoft.com/netfr.php

http://www.ddconference.com/feeds/521.html

http://sources.codenet.ru/

Автор: Real 11.3.2008, 16:44
Можеш добавить этот сайт в сборник 
- http://forum.vingrad.ru/articles/dotnet-general-net-questions-csharp.html
- http://forum.vingrad.ru/articles/dotnet-winforms-csharp.html
- http://ru.wikipedia.org/wiki/C_Sharp
- http://amberly.ru/directx/directx_s_upravlaemim.q.html

Автор: Real 18.3.2008, 19:02
Можете добавить это:

http://forum.vingrad.ru/forum/topic-29461/anchor-entry213780/0.html

http://www.thevista.ru/list.php?c=articles1101

Автор: Real 19.3.2008, 16:52
Можете добавить это:

http://www.rsdn.ru/article/mag/200704/FaultsWCF.xml

http://www.rsdn.ru/article/mag/200703/Csharp3_Linq.xml

http://www.rsdn.ru/article/nemerle/MacrosExtCoursePart3.xml

http://www.rsdn.ru/article/dotnet/CSThreading2.xml

http://www.rsdn.ru/article/dotnet/CSThreading1.xml

http://www.rsdn.ru/article/dotnet/pdfviadotnet.xml

http://www.rsdn.ru/article/mag/200704/ResourceGovernor.xml

Автор: Real 21.3.2008, 14:32
Вот я скачал сборник C# World  (  Delphi World 6 ).
Я добавил категорию, а как уже в созданию категорию добавить статии.
После перезапуска, не хочет добавлять статии.
Я не магу сам добавить статии, и ты не хочеш...
Что делать? 

Автор: Andrew20051 3.4.2008, 14:19
Доброго времени суток!

Подскажите, пожалуйста, что нужно для создания собственного World? DelphiWorld 7 Pro? Пытался написать автору delphiworld.narod.ru, но без результата.
Ваша же оболочка заточена прежде всего под NETWorld?

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

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

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

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

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

Эти книги можете закинуть в сборник статтей?

Автор: mr.DUDA 13.4.2008, 11:31
Real, хватит уже ссылок на книги с одного и того же варезника.

Автор: Real 20.4.2008, 16:45
Только кто будет помещать их в сборник статтей 
http://www.frolov-lib.ru/books/msnet/c_sharp2/ch04.html

Автор: DoskhanL 13.5.2008, 12:20
Есть ли код на C# для Tnsping  Oracle 9i баз. При наименовании можно ли получить результат работает ли база или нет?

Автор: SmartBye 22.5.2008, 16:46
Я правильно понял, что данная оболочка не переносима? Установил ее на домашнем компьютере, скопировал на флехе, думал все будет хорошо, да вот пытался запустить с другого компьютера, так она не запустилась( Выдала какую-то ошибку (уж не помню какую).

Автор: Messi 1.6.2008, 11:52
скажите пароль, чтобы откомпилировать исходники файла оболочки NET World(из первого топика).

Автор: Softaz 6.6.2008, 11:03
Цитата

Я правильно понял, что данная оболочка не переносима? Установил ее на домашнем компьютере, скопировал на флехе, думал все будет хорошо, да вот пытался запустить с другого компьютера, так она не запустилась( Выдала какую-то ошибку (уж не помню какую).

Полностью переносима. Net 2.0 + mdac2.8 нужны.

Цитата

скажите пароль, чтобы откомпилировать исходники файла оболочки NET World(из первого топика).

Просто удали файл-сертификат. Тогда пароль будет не нужен.

Цитата

Подскажите, пожалуйста, что нужно для создания собственного World? DelphiWorld 7 Pro? Пытался написать автору delphiworld.narod.ru, но без результата.
Ваша же оболочка заточена прежде всего под NETWorld?

Желание. Если проект не связан с NET, лучше взять за основу оболочку DelphiWorld.
Берете пустую оболочку DelphiWorld (можете удалить статьи в любой имеющейся). И делаете.
Как будет статей 50-100 пишете мне или Николаю. Под Ваш проект делается подвид оболочки.

Дальше как желаете: либо размещается на своем сайте, а на netcode.ru будет ссылка и описание на справочник; либо можно справочник держать на netcode.ru. Веб-версию можно сделать автоматически из готового справочника NetWorld или DelphiWorld.

Автор: Messi 6.6.2008, 12:49
[/QUOTE]
Просто удали файл-сертификат. Тогда пароль будет не нужен.
[QUOTE]

это который Netcode.pfx ? их там 4 штуки, я их удаляю и потом ничего не компилируется, просится этот файл... возможно какой-то другой файл нужно удалять? подскажите пожалуйста

Автор: Softaz 8.6.2008, 22:56
В свойствах проекта проставлено, что надо использовать файл-сертификат.

Открой свойства таких проектов (контекстное меню проекта, пункт Properties).
Перейди на закладку Signing и сними галку Sign the assembly

Потом, я думаю, возникнет вопрос о компиляции проектов c++ совместно с c#.
Так что я предварительно все что надо удалил и полностью скомпилировал.
Размер получился больше, но вопросов будет меньше (хотя бы видно, что программа работает  smile )
http://attach.1gb.ru/File/DOTNET_Browser_pub_all_compiled_v0.6_09.12.2006.7z

Автор: Real 16.7.2008, 23:36
Ктото добавлял новые статии за 180 дней?

Автор: granit1986 23.7.2008, 06:21
странно, а у меня при обновлении из 2005 новых статей скачивается 22 и начиная с файла api_bde_show_data.zip не хочет ни в какую... просто отрубает обновление и всё... и так каждый раз, а там ещё 1983 статьи

Автор: alll 13.9.2008, 18:59
сегодня ночью скачаю прожку - меня она порадовала 
огромный респект авторам и тем кто помогает!!!
а тут реализовано обновление типа как в ДельфиВорлде ? - вышел в инет и обновил ?

Автор: Luter 18.12.2008, 23:54
Цитата(alll @ 13.9.2008,  18:59)
сегодня ночью скачаю прожку - меня она порадовала 
огромный респект авторам и тем кто помогает!!!
а тут реализовано обновление типа как в ДельфиВорлде ? - вышел в инет и обновил ?

Тут статии годовой давности, с тех пор не обновлялись, ну добавилось несколько статей по Делфи.НЕТ, больше не почему.
Обшем хорошый сборник, толко сколько я раз не спросил добавить новые статии, они меня игнорирывали, и не добавляли, и так уже целый год.
Обшето каждых 7 дней появляются в инети новые статии по С#, только некому их добавлять, и так уже целый год.

Нам не нужен делфи, лучше обновите статии по .NET

Автор: Luter 26.12.2008, 03:14
http://netcode.ru/?lang=dotnet 
Код

Архив содержит около 2523 статьи по .NET, не вошедшие в offline-версию

Почиму не вошли эти статии?
Почиму не добавляют статии по .NET 3.5 ?

Автор: CSharp 16.1.2009, 20:22
А можна узнать в планах ASP.NET или PHP будет внедрятся в сборник статьей.
Не магу дождаться кагда будут новые статьи в этом сборнике.

Автор: sadisasha 5.4.2009, 10:48
Цитата(Softaz @  18.7.2006,  10:35 Найти цитируемый пост)
1. Можно скачать все сразу по ссылке (285186117 Байт) - пароль: www.rootkits.ru

Скачал здесь, распаковал нет некоторых книг pdf точнее нет Библии C#, хотя путь в папку, а не в интернет. Может что не так понял и надо ещё что то скачать? Заранее спасибо за ответ. Огромное спасибо за сам проект.  

Автор: ЛунныйОборотень 17.2.2010, 18:52
Скачал приложение, распаковка доходит до 94 процентов и на этом застревает...

Подскажите что делать.

Автор: Pit_Bul 27.1.2012, 21:20
в какой стадии проект, в поддержке. помер или завершен. Если хоть как то жив, то может вылохить искодники под контроль версий и вести совместную доделку и развитие ????

Автор: Felixx 22.8.2012, 19:49
Проект то хоть жив ещо?)) 6 лет уже прошло!

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