LINUX.ORG.RU

Хорошая статейка, а Гослинг действительно очень адекватный и хороший человек, побольше бы таких.

Java летает как в Mac OS X(Intellij IDEA), так и в запущенной в это время Windows XP(Web-start приложение с использованием JMF) под Parallels(аналог VMWare). CD 2,16, 2 GB. Впрочем даже одного гигабайта хватает для комфортной работы с любым Java приложением -- от Azureus с кучей закачек до Eclipse с немалым проектом. Не понимаю тех, кто ноют с 256MB. Сейчас уже меньше 512 даже в базовые комплектации коммпьютеров не ставят.

Chapaev
()
Ответ на: комментарий от Chapaev

> Местный Петросян?

Нет интересуюсь представлениями молодого человека о такой штуке как "эффективность".

iBliss
()
Ответ на: комментарий от Chapaev

>Впрочем даже одного гигабайта хватает для комфортной работы с любым Java приложением -- от Azureus с кучей закачек до Eclipse с немалым проектом. Не понимаю тех, кто ноют с 256MB. Сейчас уже меньше 512 даже в базовые комплектации коммпьютеров не ставят.

Ты провокатор или просто глупец? В базовой комплектации компов с маленькой памятью дохренища! Из-за говнявой реализации теперь везде гиг памяти пихать? "У миня гиг памяти, чё вы стонете?" Вот побеги и укомплектуй встроеные компы за свой счет.

>от Azureus с кучей закачек до Eclipse

Открою тебе тайну - это не все, и далеко не самые важные продукты на жабе.

Достали уже зажравшиеся московские пограммисты.

manokur ★★
()
Ответ на: комментарий от manokur

Нравится? а самого в зажравшиеся московские программисты не берут? ;)

anonymous
()
Ответ на: комментарий от Chapaev

> Впрочем даже одного гигабайта хватает для комфортной работы с любым Java приложением -- от Azureus с кучей закачек до Eclipse с немалым проектом.

Не знаю что такое "немалый проект" но мне в нашем корпоративном проекте прекрасно хватало 512 МБ (это с поднятым сервером приложений). Обычные десктопные приложения я писал и на 256 МБ. Никаких проблем.

TO all stupid anonymous

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

kda ★★★★★
()
Ответ на: комментарий от kda

>Повторять один и тот же миф про тормоз Java на протяжении нескольких лет - это уже не смешно. Придумайте для разнообразия какой-нибудь новый что-ли.

о да. она не тормозит. она там где-то внутри процессора с .NET в шашки играет. пока я жду, когда же она начнёт работать.

anonymous
()
Ответ на: комментарий от kda

>Повторять один и тот же миф про тормоз Java на протяжении нескольких лет - это уже не смешно. Придумайте для разнообразия какой-нибудь новый что-ли.

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

anonymous
()
Ответ на: комментарий от anonymous

> жалко чтоли:

Во.

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

Жду ссылок на все утверждения.

kda ★★★★★
()
Ответ на: комментарий от anonymous

Ребята, я не понимаю, как язык может тормозить? Может вы говорите о виртуальной машине явы (JVM)? И так, есть несколько реализаций JVM (например, Sun, IBM), есть даже компиляторы (GCJ, Exelsior Jet) которые компилируют ява программы на машинный код для запуска без JVM. Конца-концов в мобильниках ява игры не работают под гигабайтами памяти. Пожалуйста, не говорите что язык тормозит.

anonymous
()
Ответ на: комментарий от kda

Most stupid anonymous очень часто просто не понимает, что программы тормозят в основном из-за плохих алгоритмов и их плохих реализаций. Сам же язык программирования не так часто влияет на "тормознутость" той или иной программы, если конечно речь идет не о чем-то узко специализированном типа ядра системы, где GC как бы совсем не к месту. Так что, C ли это, Java ли это или еще что-то - часто не так важно. Однако, понимание этой простой вещи для most stupid anonymous становиться непомерно сложной задачей ;)

dave ★★★★★
()
Ответ на: комментарий от anonymous

>Ребята, я не понимаю, как язык может тормозить? Может вы говорите о виртуальной машине явы (JVM)? И так, есть несколько реализаций JVM (например, Sun, IBM), есть даже компиляторы (GCJ, Exelsior Jet) которые компилируют ява программы на машинный код для запуска без JVM. Конца-концов в мобильниках ява игры не работают под гигабайтами памяти. Пожалуйста, не говорите что язык тормозит.

Игры на мобильнике кривые и тормознутые.

Жаба тормозит, т.к. и язык кривой и в.м. кривая.

anonymous
()
Ответ на: комментарий от Chapaev

iBliss - еще один форумный клоун-малолетка.

----------------

По существу. Статья не интересная. Интересно, что нового будет в Java 7. Про properties и изменение в синтаксисе. Пока бета семерки (Dolphin) - это Mustang.

anonymous
()
Ответ на: комментарий от anonymous

>Попроси, чтобы папа с мамой тебе телефон нормальный купили.

Нормальный телефон. А вот врожденные дефекты жабофилов не вылечить, хоть как маму с папой не проси.

anonymous
()
Ответ на: комментарий от anonymous

> iBliss - еще один форумный клоун-малолетка.

Наконец-то! Мну оценили!

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

Кстати любители повые* на тему дешевой памяти хором идут смотреть сколько стоит брендовая память и куда вендоры рекомендуют засунуть гарантию если кто нибудь попробует заменить ее на дешевый китайский аналог. По-ходу почитают сколько стоят ИБП стойки кондеры... Вобщем нравится платить за мыльные пузыри - платите.

iBliss
()
Ответ на: комментарий от anonymous

"Норма-а-альный". А у "нормальных па-а-ацанов" еще круче типа? Ты еще пальцем в носу поковыряй.

Еще раз повторяю - мне и многим кодирующим на Джаве на такого как ты и тебе подобные наплевать. Ты - только пример того, как не стать лузером типа "кульхацкеров", которых на хорошо вознаграждаемую работу в "энтерпрайз" не берут.

Просто я тебе и прочим говорю - не надо загаживать этот топик. Не нравится - не читай. Не мешай другим, короче. Тебе понятно?

anonymous
()
Ответ на: комментарий от iBliss

> Вобщем нравится платить за мыльные пузыри - платите.

То-то ясно, что такому "специалисту", как ты никто серьезно не платит.

anonymous
()
Ответ на: комментарий от anonymous

> Ты - только пример того, как не стать лузером

О великий и ужасный. А почему тогда один из критериев явы - взаимозаменяемость разработчиков ? Особенно индусами 8O ?

PS: Чтобы не обижать представителей нации предлагаю заменить в дальнейшем флейме "индусы" на "мордекеры от IT".

iBliss
()
Ответ на: комментарий от anonymous

> То-то ясно, что такому "специалисту", как ты никто серьезно не платит.

Успокойся, я трудоустроен, обеспечен сыт и доволен жизнью.

iBliss
()
Ответ на: комментарий от anonymous

>"Норма-а-альный". А у "нормальных па-а-ацанов" еще круче типа? Ты еще пальцем в носу поковыряй.

С точки зрения железа.

>Ты - только пример того, как не стать лузером типа "кульхацкеров", которых на хорошо вознаграждаемую работу в "энтерпрайз" не берут.

Лузеры как раз в интерпрайзе, т.к. кроме жополизания на корпоративных вечеринках нихрена не умеют.

>Просто я тебе и прочим говорю - не надо загаживать этот топик. Не нравится - не читай. Не мешай другим, короче. Тебе понятно?

Позиция быдла. Мне не нравится и я СВОБОДНО об этом говорю, а не брызгаю слюной, чтобы угодить хозяину, как некоторые. Хотя у рабов и выбора-то нет, а если они вознамерятся хозяину перечить, то будут заменены индусами. И деньгами уже не смогут повы-тся. Понятно?

anonymous
()
Ответ на: комментарий от Chapaev

> Впрочем даже одного гигабайта хватает для комфортной работы с любым Java приложением -- от Azureus с кучей закачек до Eclipse с немалым проектом.

ДАЖЕ???? Слышь, трындобол, а ты мне памяти в ноут купишь? А то НОРМАЛЬНЫМ приложениям хватает, а если жабам что-то ещё надо, то это их траблы, а не мои. Фсат.

anonymous
()
Ответ на: комментарий от kda

> Повторять один и тот же миф про тормоз Java на протяжении нескольких лет - это уже не смешно. Придумайте для разнообразия какой-нибудь новый что-ли.

Его не надо повторять, его надо ВИДЕТЬ. Я видел достаточно. И скажу: таки да - тормозит и жрёт память. Несомненно, тормоза можно написать и на C/C++ - гляньте на OOo. Но жабы - все тормозят, кроме helloworld. А апологеты жабы очень любят вопить о быстроте жабы, показывая её на helloworld'ах. Но их легко вывести на чистую воду. Берётся комп с интеловским процом, держащий SpeedStep, врубается самая низкая частота и самый высокие throttling - и вот тут все "прелести" жабы в сравнении с прогами на C - как на ладони, не надо даже старый комп искать :)

anonymous
()
Ответ на: комментарий от anonymous

> Ребята, я не понимаю, как язык может тормозить? Может вы говорите о виртуальной машине явы (JVM)?

Канечна. Просто она от языка неотделима. Я не могу писать на жабе и пускать результат без JVM. Такшта...

anonymous
()
Ответ на: комментарий от anonymous

> Еще раз повторяю - мне и многим кодирующим на Джаве на такого как ты и тебе подобные наплевать. Ты - только пример того, как не стать лузером типа "кульхацкеров", которых на хорошо вознаграждаемую работу в "энтерпрайз" не берут.

Быдлокодер ынтырпрайз-класса. Солидно звучит. :)

anonymous
()
Ответ на: комментарий от anonymous

>мне и многим кодирующим на Джаве

И чем кодируете, кодом Хемминга? ;)

anonymous
()
Ответ на: комментарий от anonymous

>> Ребята, я не понимаю, как язык может тормозить? Может вы говорите о виртуальной машине явы (JVM)? > Канечна. Просто она от языка неотделима. Я не могу писать на жабе и пускать результат без JVM. Такшта...

Ничего подобного. Проект GCJ показывает что ява-программу можно скомпилировать как программы на С++. Если не веришь, попробуй использовать. JVM - это машина на которой можно выполнить программы в ее байт-кодах. А в эти байт-коды можно скомпилировать и С++ программы. Дело же не в языке. Если запустить С/С++ программы на интерпретаторе, то они тоже будут тормозить.

anonymous
()
Ответ на: комментарий от anonymous

>> Еще раз повторяю - мне и многим кодирующим на Джаве на такого как ты и тебе подобные наплевать. Ты - только пример того, как не стать лузером типа "кульхацкеров", которых на хорошо вознаграждаемую работу в "энтерпрайз" не берут.

> Быдлокодер ынтырпрайз-класса. Солидно звучит. :)

Тебя жаба или Джава душит?

Лучше быть хорошо оплачиваемым "жабабыдлокодером", чем жалким "недоцененным" кульхацкером типа тебя или "иБлиса". :)

anonymous
()
Ответ на: комментарий от anonymous

> Лучше быть хорошо оплачиваемым "жабабыдлокодером", чем жалким "недоцененным" кульхацкером типа тебя или "иБлиса". :)

Чтоб пользователи моих продуктов, когда я прохожу мимо, сплёвывали под ноги и цедили сквозь зубы "собака"? Нет, спасибо :)

anonymous
()
Ответ на: комментарий от anonymous

> ДАЖЕ???? Слышь, трындобол, а ты мне памяти в ноут купишь?

Освой Java, пойди работать, думаю с первой зарплаты сможешь купить если не новый ноут, то докупить памяти до 1Г точно сможешь :)

З.Ы. Кстати свой скоро буду продавать. Там как раз 1Г памяти. Куплен еще в 2004 году. Да-да, это уже тогда было вполне доступно. Сейчас выбираю новый - 2Г памяти однозначно. Кстати по деньгам больше упираюсь в процесоор, а не в память.

azakharchuk
()
Ответ на: комментарий от azakharchuk

> З.Ы. Кстати свой скоро буду продавать. Там как раз 1Г памяти. Куплен еще в 2004 году. Да-да, это уже тогда было вполне доступно. Сейчас выбираю новый - 2Г памяти однозначно. Кстати по деньгам больше упираюсь в процесоор, а не в память.

Понял. Лучшей рекламы жабе просто не надо. "Переходите на java - и смело выкидывайте свой комп, на котором остальной срфт пашет нормально". И работайте на обновление компа. Это лохотрон такой новый - использовать комп, чтобы кодить на нём жабу, чтобы зарабатывать бабло, чтобы обновлять комп для этой жабы... Дракон, пожирающий свой хвост. Спасибо. Я лох, конечно, но не настолько :)

anonymous
()
Ответ на: комментарий от anonymous

> Я видел достаточно.

Судя по следующему

> Но жабы - все тормозят, кроме helloworld. А апологеты жабы очень любят вопить о быстроте жабы, показывая её на helloworld'ах.

Вы ничего не видели. Ибо уж а на чем чем, но на HelloWorld'ах скорость Java не показывается. А теперь, внимание, вопрос: Угадайте почему?

kda ★★★★★
()
Ответ на: комментарий от anonymous

> Чтоб пользователи моих продуктов, когда я прохожу мимо, сплёвывали под ноги и цедили сквозь зубы "собака"? Нет, спасибо :)

Хм... А пользователи моих продуктов говорят мне "спасибо". :) Разруха она не в клозетах, уважаемый...

kda ★★★★★
()
Ответ на: комментарий от kda

> Вы ничего не видели. Ибо уж а на чем чем, но на HelloWorld'ах скорость Java не показывается. А теперь, внимание, вопрос: Угадайте почему?

Потому что сначала должна загрузиться JVM, и это испортит всю мазу. Человек, стартующий helloworld, будет сильно увивлён - как такая козявка может так долго грузиться и жрать так много памяти. Поэтому жабофилы обожают демонстрировать даже не приложения, а отдельные алгоритмы, где они иногда обгоняют C. Вот это - да, их любимая писькомерка.

anonymous
()
Ответ на: комментарий от anonymous

> Потому что сначала должна загрузиться JVM, и это испортит всю мазу. Человек, стартующий helloworld, будет сильно увивлён - как такая козявка может так долго грузиться и жрать так много памяти. Поэтому жабофилы обожают демонстрировать даже не приложения, а отдельные алгоритмы, где они иногда обгоняют C. Вот это - да, их любимая писькомерка.

Дружище, посмотри http://www.thinkfree.com, там обрати внимание на ThinkFree Desktop. Если ты действительно хочешь удивиться качни TRY OR BUY версию. Это аналог MS Office переписанный на java. Поставь, попробуй - а потом честно отпиши как оно тебе.

Soloik
()
Ответ на: комментарий от Soloik

> Дружище, посмотри http://www.thinkfree.com, там обрати внимание на ThinkFree Desktop. Если ты действительно хочешь удивиться качни TRY OR BUY версию. Это аналог MS Office переписанный на java. Поставь, попробуй - а потом честно отпиши как оно тебе.

Честно? Работает, особых тормозов пока не замечаю. Функциональность - где-то уровень KOffice, с OOo сравнивать - смешно.

Сейчас сижу в винде. Стартую пустой OOo Writer. Съедено 35.284 K памяти (soffice.bin+soffice.exe). Стартую ThinkFree Write - съедено 62.400 K памяти (tfwrite.exe). Большой вопросительный знак - какого ..???

Взял большой doc-файл, 32 Мб, 45 страниц (в ворде их 44), весь в картинках и прочей нечисти. OOo открывал его долго, секунд 25. Но открыл. Открываю его в ThinkFree Write. Открылось быстрее, но форматирование поехало сильнее (и страниц стало 42), а встроенные картинки я редактировать не могу.

OOo бесплатен. За ThinkFree хотят бабла. Как думаешь, что я предпочту?

anonymous
()
Ответ на: комментарий от anonymous

Да, кстати, скажите такую вещь. В windows есть такая переменная среды, %APPDATA% называется. Содержит путь типа "c:\Documents and Settings\username\Application Data". Жаба не умеет её читать? ВСЕ нормальные приложения хранят пользовательские данные именно в %APPDATA%, создавая там свои подкаталоги. Но у всех жабоприложений - какая-то медвежья болезнь. Они обсираются прямо в "c:\Documents and Settings\username", не добежав до Application Data. Это как, врождённое убожество или как? Thinkree тоже мне сейчас туда покакал. Откуда растут руки у жабокодеров?

anonymous
()
Ответ на: комментарий от Soloik

> Дружище,

Мой юный друк. Не надо ничего качать... спроси у знакомых сисадминов и разработчиков на медиэйшене какие половые эмоции испытывают люди когда они слышат слово SMC (Соляровская system management console)... особенно когда некоторые долбогрызы пишут фронтенды к своему софту в виде плагинов к ней...

iBliss
()
Ответ на: комментарий от anonymous

> %APPDATA%

1) JNI освоить не можешь? Тогда в садик.

2) Ну и запомни - это сайт про Linux.

3) И разработан он именно на Java.

anonymous
()
Ответ на: комментарий от anonymous

> Человек, стартующий helloworld,

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

anonymous
()
Ответ на: комментарий от anonymous

> 1) JNI освоить не можешь? Тогда в садик.

Я? А при чём тут я, интересно? Для платформы windows определено разработчиком место хранения пользовательских файлов, которое можно определить из реестра, переменной %APPDATA% или функцией API SHGetFolderPath: http://www.microsoft.com/technet/prodtechnol/winxppro/maintain/xpusrdat.mspx . Разработчики жабы были либо слишком тупы, чтобы это осознать, либо слишком черезжописто работают, чтобы "обращать внимание на всякую хрень". Я-то при чём?

> 2) Ну и запомни - это сайт про Linux.

Новость - про java, которая объявляет себе кроссплатформенным решением, но при этом до сих пор страдает такими позорными детскими болезнями, на которые я и указал.

anonymous
()
Ответ на: комментарий от kda

>> Чтоб пользователи моих продуктов, когда я прохожу мимо, сплёвывали под ноги и цедили сквозь зубы "собака"? Нет, спасибо :)

> Хм... А пользователи моих продуктов говорят мне "спасибо". :) Разруха она не в клозетах, уважаемый...

+1

anonymous
()
Ответ на: комментарий от anonymous

>> Человек, стартующий helloworld,

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

Чё, я как-то неправильно стартую helloworld? Надо было прежде помолиться святому гослингу? :) Свечку ему там поставить... куда-нибудь... :)

anonymous
()
Ответ на: комментарий от anonymous

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

anonymous
()
Ответ на: комментарий от anonymous

> А при чём тут я, интересно?

> функцией API SHGetFolderPath:

А притом, что ты даже не знаешь про JNI. И зачем и когда это используется.

anonymous
()
Ответ на: комментарий от anonymous

> Для платформы windows определено разработчиком место хранения пользовательских файлов, которое можно определить из реестра, переменной %APPDATA% или функцией API SHGetFolderPath: http://www.microsoft.com/technet/prodtechnol/winxppro/maintain/xpusrdat.mspx

Это уже в прошлом. Не знаю точно, но в Висте с этим могут быть проблемы. Политически правильно использовать Local Storage, к которым меньше претензий со стороны системного секьюрити.

dave ★★★★★
()
Ответ на: комментарий от dave

> Политически правильно использовать Local Storage, к которым меньше претензий со стороны системного секьюрити.

ЭЭЭЭ А можно пояснить что вы имелли ввиду под " Local Storage" и как это кореллирует с тем что жаба лезет в нишу распределенных систем где понятия Local существует на таком низком уровне, котором jvm как бы не место...

iBliss
()
Ответ на: комментарий от iBliss

Это было к разговору об Application Data. Local Storage - это виндовое понятие. О нем можно прочитать, например, в документации .NET SDK. Кстати, Java 6 (Mustang) в виндовом исполнении использует Local Storage.

dave ★★★★★
()
Ответ на: комментарий от iBliss

Local Storage для дот-нетовских приложений примерно тоже самое, чем являются cookies для DHTML. Оно имеет меньше ограничений по использованию.

dave ★★★★★
()
Ответ на: комментарий от dave

Ошибся в названии. Конечно же речь идет об Isolated Storage... :)

dave ★★★★★
()
Ответ на: комментарий от anonymous

> Слии засчитан.

Превед словосчётчикам! Я, правда, не понял, куда это я тебя слил... В канализацию, видимо. Ну, звиняй, если что. А по существу есть что сказать?

anonymous
()
Ответ на: комментарий от anonymous

> А притом, что ты даже не знаешь про JNI. И зачем и когда это используется.

А зачем МНЕ это знать? Я не жабобыдлокодер. Я пытаюсь юзать их творчество. И замечаю, что оно поголовно страдает проблемами переходного возраста. Ты пытаешься объяснить причину этих проблем (как я понял), но у тебя плохо получается, ты слишком темпераментен. Расклад ясен? Ну вот, когда остынешь и утрёшь слюну с монитора, можно будет попробовать ещё раз :)

anonymous
()
Ответ на: комментарий от dave

> Это уже в прошлом. Не знаю точно, но в Висте с этим могут быть проблемы.

Я свои приложения под вистой тестил, у них с %APPDATA% по-прежнему никаких проблем. Просто сам каталог опять переименовали, но для %APPDATA% это прозрачно. А те долбодятлы, которые hardcoded именно "c:\Documents and Settings\username\Application Data", оказались в жопе - и поделом халтурщикам.

> Политически правильно использовать Local Storage, к которым меньше претензий со стороны системного секьюрити.

Да ради бога. Но трабл в том, что жабе это никак не поможет: %LocalAppData% != %HOMEPATH%

anonymous
()
Ответ на: комментарий от anonymous

> Да, кстати, скажите такую вещь. В windows есть такая переменная среды, %APPDATA% называется. Содержит путь типа "c:\Documents and Settings\username\Application Data". Жаба не умеет её читать? ВСЕ нормальные приложения хранят пользовательские данные именно в %APPDATA%, создавая там свои подкаталоги. Но у всех жабоприложений - какая-то медвежья болезнь. Они обсираются прямо в "c:\Documents and Settings\username", не добежав до Application Data. Это как, врождённое убожество или как? Thinkree тоже мне сейчас туда покакал. Откуда растут руки у жабокодеров?

Откуда нужно. Вот из-за таких "чистоплотных" как ты, появляются такие же визгливые как ты и визжат о том, что кросплатформенность - миф. А не подскажешь что есть в Linux %APPDATA%? A в Mac OS? А в VMS?

А то что в Linux весь софт согласно тебе страдает медвежьей болезнью не смущает?

З.Ы. Откуда такая забота о судьбах Windows, на этом сайте? :)

azakharchuk
()
Ответ на: комментарий от azakharchuk

> Откуда нужно.

Т.е. из ж... by design? Я так и думал.

> Вот из-за таких "чистоплотных" как ты, появляются такие же визгливые как ты и визжат о том, что кросплатформенность - миф.

Что-то не уловил связи между уважением к рекомендациям разработчика ОС и мифологичности кроссплатформенности. Можно поподробнее?

> А не подскажешь что есть в Linux %APPDATA%? A в Mac OS? А в VMS?

Думаю, что нет. Так же, как в windows нет HOME, но есть HOMEPATH. HOMEPATH нашли, сыщики? А APPDATA что помешало найти?

> А то что в Linux весь софт согласно тебе страдает медвежьей болезнью не смущает?

Что, весь софт пишет пользовательские данные не в тот каталог, который рекомендуется разработчиками данной ОС? Чё, правда?

> З.Ы. Откуда такая забота о судьбах Windows, на этом сайте? :)

Это не забота о windows. Это яркий пример того, насколько всё коряво и черезжописто в мире java.

anonymous
()
Ответ на: комментарий от anonymous

> А APPDATA что помешало найти?

- то, что аналога APPDATA в других операционных системах нет. Ты знаешь что такое абстракция? Дык вот, абстрагировавшись от ОС, мы приходим к тому, что у нас есть только user.dir (и не важно как его искать в той или иной ОС - через HOME или HOMEPATH).

- то, что в до win95 эру APPDATA еще не было (да и в 95 АФАИР его не было, только в NT4 появился), а Java c user.dir уже была. Не потому ли он и появился чтобы дать аргумент таким как ты? А что делать с ПО, которое работает на 95, да и на XP до сих пор прекрасно бы работало если бы не...

"В W2К Хранить пользовательские данные в user home некошерно!" - огласил Билли. "Покупайте новое ПО хранящие данные в APPDATA!" - завопили производители.

и миллионы таких как ты пошли обновлять ПО, на то которое кошерно. Готовьтесь, следующее кошерное ПО будет на .NET (появится такой же как ты и будет спрашивать почему Java использует CreateFile(), а не System.IO.File.Create() для создания файлов). Оно будет знать про APPDATA, но для кошерности этого будет мало, и вот ты, тяжело вздохнув, пойдешь покупать себе новый комплект того же ПО, только создающего файлы по-другому.

Вообще-то, неплохо на эту тему написал Спольски.

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

- ну и в конце концов, как разрешить эту проблему тебе указали, JNI плюс проверка типа ОС. Это возможно, но от этого кода плохо пахнет. И запах этот навевает воспоминания из 96-99 годов, когда приходилось разрабатывать ПО под Windows и писать такой же дурнопахнущий код проверяющий тип ОС (95 или NT) и в зависимости от этого вызывать те или иные методы. Если для Windows это типично, то не надо перекладывать это с больной головы на здоровую.

azakharchuk
()
Ответ на: комментарий от azakharchuk

> - то, что аналога APPDATA в других операционных системах нет.

И что? Давайте так - либо вы претендуете на нормальную кроссплатформенность (а не на "стартует, не падает - и х с ним") и делаете всё ПО-ЧЕЛОВЕЧЕСКИ, либо вы делаете так, как вам лично удобнее, но про нормальную кроссплатформенность помалкиваете в тряпочку. Вы же пытаетесь усидеть сразу на обоих стульчиках, и мне это лицемерие не нравится. Кстати, а как жаба решала эту проблему в Win9x, где она там-то HOME находила? В корень системного диска срала, что ль?

> Ты знаешь что такое абстракция?

Ага.

> Дык вот, абстрагировавшись от ОС, мы приходим к тому, что у нас есть только user.dir (и не важно как его искать в той или иной ОС - через HOME или HOMEPATH).

Вы приходите, а я - нет. Я лично прихожу к тому, что есть user.dir и appdata.dir, которые на части платформ могут совпадать (но это ведь не так страшно, правда?). Если вы так странно "приходите", то говорите честно: "java - это кроссплатформенное решение для POSIX-систем, которое благодаря некоторым костылям, как ни странно, запускается и под WIndows. Криво, конечно, но запускается". ВОт так будет честнее.

Я бы ещё понял, если бы отдельный каталог Application Data появился в венде внезапно, как снег на голову, в 2000 году, когда java была уже готова (ну, обычная корпоративная леность, инерция мышления и пр.). Но он же там был уже по крайней мере в WinNT4 (1996 год)! Так что оправдания вашим кривым абстракциям я не вижу.

> - то, что в до win95 эру APPDATA еще не было

Дык и HOMEPATH не было. А вот Application Data был. Более того - была поддержка юзеров, для каждого создавался свой профиль со своим Application Data (весь этот срач лежал в каталоге c:\windows\profiles). Но java всё равно сделала собственную кривую абстракцию. "Весь мир - моя нора; где хочу, там и сру".

> А что делать с ПО, которое работает на 95, да и на XP до сих пор прекрасно бы работало если бы не...

Очевидно, использовать "c:\windows\profiles" и "c:\windows\all users"? Не приходило в голову, нет?

> "В W2К Хранить пользовательские данные в user home некошерно!" - огласил Билли. "Покупайте новое ПО хранящие данные в APPDATA!" - завопили производители.

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

> и миллионы таких как ты пошли обновлять ПО, на то которое кошерно. Готовьтесь, следующее кошерное ПО будет на .NET (появится такой же как ты и будет спрашивать почему Java использует CreateFile(), а не System.IO.File.Create() для создания файлов). Оно будет знать про APPDATA, но для кошерности этого будет мало, и вот ты, тяжело вздохнув, пойдешь покупать себе новый комплект того же ПО, только создающего файлы по-другому.

Всё, истерика началась. Бред несёшь. Плачу я за новую версию уже купленного продукта или не плачу - определяет производитель, и это никак не зависит от APPDATA.

anonymous
()
Ответ на: комментарий от azakharchuk

> - ну и в конце концов, как разрешить эту проблему тебе указали, JNI плюс проверка типа ОС. Это возможно, но от этого кода плохо пахнет.

Плохо пахнет от виртуальной машины, которая к 2007 году ещё не сподобилась исправить ошибку, очевидную УЖЕ ПРИ ЕЁ СОЗДАНИИ в 199 лохматом году.

anonymous
()
Ответ на: комментарий от anonymous

> Плохо пахнет от виртуальной машины, которая к 2007 году ещё не сподобилась исправить ошибку, очевидную УЖЕ ПРИ ЕЁ СОЗДАНИИ в 199 лохматом году.

От виртуальной машины плохо пахнет уже потому, что это виртуальная машина :D Технология, устаревшая уже лет 15 назад.

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

> Дык и HOMEPATH не было. А вот Application Data был.

А толку с того, что он был? А добраться до него как? Если мне не изменяет мой склероз, то методы, которыми его можно было _корректно_ определить появились в shell32.dll, начиная с Internet Explorer 5.0. А когда, о великий очень не слабо знакомый с Windows, был выпущен IE5, не подскажешь? Тогда я скажу - в 99 году.

А до того вопросы реашлись с помощью банального сложения строк, продвинутые - искали ключи в ресстре. Ты серьезно предлагаешь, чтобы JVM зависела от версии установленного браузера? И эти люди запрещают нам ковыряться в носу...

> Плачу я за новую версию уже купленного продукта или не плачу - определяет производитель, и это никак не зависит от APPDATA.

Исходя из течения дискуссии, у меня складывается мнение, что для тебя в кроссплатформенности _буквоедское_ следование всем канонам платформы важнее, чем реально работающий функционал. Я уже озвучивал свое отношение: если приложение работает одинаково, то факт, что оно сохраняет настройки не в том месте с точностью до одного каталога, меня не очень смущает, так как от его функций я получу гораздо больше пользы, чем потеряю от каталога в другом месте.

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

И говорил я о том, что раз для тебя следование всем заповедям платформы (то, что я называл "кошерность") важнее собственно функционала приложения, то это не мой путь. Завтра мелкомягкие выпустят новую ОС, в которой хранить данные будет принято в другом каталоге. И выустят новый Офис, который будет их там хранить и больше ничего нового. Ты пойдешь его покупать? Смысл? Ответь честно, для повседневного оформления документа тебе бы сегодня хватило функций Word 97? Если нет, то, интересно, чего тебе не хватало, если да, то пользовался ли ты 2000, XP, 2003, 2007? Если да, то зачем? :)

Сначала мы (долго и тернисто) шли от 16 бит, к 32. Ладно тут выгода объективна. Потом "Все на COM/ActiveX". Потом "Все на Internet enabled!" (кто-то пробовал разобрать HTML экспортированный из Word'a?). Скоро перепишут офис на .NET. А теперь вопрос: стали ли от этого документы выглядеть лучше хотя бы у 50% пользователей?

Ну и собственно:

> нормальную кроссплатформенность (а не на "стартует, не падает - и х с ним")

Задекларировано "Write once - run everywhere", а не "Write once - find your application data in the right folder". Кроссплатформенность задекларированная создателями, как ни удивительно, как раз ближе к твоему второму варианту, тот который в скобках. И то что оно не совпадает с твоим пониманием нормальной кроссплатформенности, извини, не показатель, этого никто не декларировал.

azakharchuk
()
Ответ на: комментарий от azakharchuk

> А толку с того, что он был? А добраться до него как?

Ты хочешь сказать, что в вендовой JVM нет ни одной функции чтения реестра (приватной, публичной - мелочи)? Чё, правда? Не верю. А значит, могли зайти в HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders и считать оттуда. Но - похоже, поленились. И до сих пор ленятся.

> А до того вопросы реашлись с помощью банального сложения строк, продвинутые - искали ключи в ресстре.

Не совсем понимаю, что тут продвинутого. Не расскажешь? Функции чтения реестра есть в WinAPI. В чём состояла страшная проблема, стоявшая перед разработчиками JVM? Я ещё раз повторяю: речь не о тех, кто кодит на жабе, от них даже я не буду требовать городить код спецом под венду, чтобы пролезть в реестр. Речь о разработчиках JVM.

> Исходя из течения дискуссии, у меня складывается мнение, что для тебя в кроссплатформенности _буквоедское_ следование всем канонам платформы важнее, чем реально работающий функционал.

Похоже, у тебя с логикой непорядок. Работать под рутом тоже можно. А чё, работает же? И документы в корзине можно хранить. Просто это - методы на крайний случай. И от них надо отходить как можно быстрее. Но жаба до сих пор не раздуплилась с APPDATA, а сколько уже лет прошло?

anonymous
()
Ответ на: комментарий от anonymous

> Ты хочешь сказать, что в вендовой JVM нет ни одной функции чтения реестра (приватной, публичной - мелочи)?

Есть, через registry в Windows JVM реализован Preferences. Но ты правильно говоришь

> Функции чтения реестра есть в WinAPI.

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

Для этого и делается API, для того чтобы скрыть детали реализации. И я сказал, что есть метод в shell32.dll, для получения полного пути к каталогу "Application Data", но метод этот появился только в 1999 году, причем, как часть нового браузера.

То, что ты предлагаешь сделать - считать значение из реестра напрямую - это то же самое что работать с файлом реестра напрямую. Или... ты хочешь сказать, что MSDN где-то заикается о том, что приведенный тобой ключ _гарантированно_ будет сохранен во всех будущих версиях Windows, и может быть использован для получения искомого значения? Можно ссылочку (желательно свежее 99 года)?

Таким образом, если мы говорим о гарантированном способе получения гипотетического свойства app.dir, то без оговорок (типа а какой у вас браузер) это стало возможным только с Windows 2000. Первым JDK, который не поддерживает ОС старше W2K (т.е. не будет на них работать), стал Java 6, который вышел совсем недавно. Ничего, что я так буквоедствую? :)

> Но жаба до сих пор не раздуплилась с APPDATA, а сколько уже лет прошло?

Исходя из последнего моего абзаца - прошло всего-то пару месяцев. Понятное дело, что можно было с некоторым количеством if'ов в коде, все сделать гораздо раньше. Но, считай это итальянской забастовкой в исполнении Sun, тем более, что community не особо озабочен этим фактом :)

> Работать под рутом тоже можно. А чё, работает же? И документы в корзине можно хранить. Просто это - методы на крайний случай. И от них надо отходить как можно быстрее.

Если нет другой возможности, а работать нужно, то да. А что делать? Вот ты и сам описал положение, в которое были поставлены Windows разработчики (не только разработчики JVM) :) В частности, насчет Application Data с 1995 по 1999 год, и насчет многих других вещей. Я уже разработкой для практически Windows не занимаюсь уже почти 7 лет как, но не думаю, что там что-то кардинально изменилось в лучшую сторону :)

azakharchuk
()
Ответ на: комментарий от azakharchuk

> И появились они там с тех пор как появился реестр.

Т.е. в 1994-95 или раньше (скорее всего раньше, потому что реестр был и в 3.x, просто назначение его было иное).

> Ты же не предлагаешь, мне изменять реестр

Я??? ИЗМЕНЯТЬ реестр? ГДЕ??? Я предлагаю прочитать ОДНО значение в HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders! И присвоить его - я не знаю, чему там - user.appdatadir или х.з. ещё чему. ВСЁ. Тем более, что у меня есть основания полагать: user.dir тоже заполняется чтением реестра.

> используя файловые операции и ntuser.dat (я знаю что его открыть не получится, но пока что я не об этом). Потому что, сохранение формата файла реестра и местонахождения файла _не гарантировано_ для будущих версий.

Тебя опять не в ту степь понесло куда-то.

> Для этого и делается API, для того чтобы скрыть детали реализации.

Ты что-то хочешь мне рассказать про историю появления функций RegOpenKey(Ex) и RegQueryValue(Ex)? Слушаю.

> И я сказал, что есть метод в shell32.dll, для получения полного пути к каталогу "Application Data", но метод этот появился только в 1999 году, причем, как часть нового браузера.

Да, этот метод приятнее, слегка проще, но даёт тот же результат. Что дальше?

> То, что ты предлагаешь сделать - считать значение из реестра напрямую - это то же самое что работать с файлом реестра напрямую.

Ты сдурел, что ль? Ты сравнил чтение реестра WinAPI-функцией RegQueryValue с прямым парсингом ntuser.dat???? Слышь, не кури эту гадость больше, а?

> Или... ты хочешь сказать, что MSDN где-то заикается о том, что приведенный тобой ключ _гарантированно_ будет сохранен во всех будущих версиях Windows, и может быть использован для получения искомого значения? Можно ссылочку (желательно свежее 99 года)?

MSDN не даёт гарантий на будущее ни для каких функций. Просто в какой-то момент что-то объявляется obsoleted, т.е. в будущем могут выкинуть. Так что не надо херню лепить.

> Таким образом, если мы говорим о гарантированном способе получения гипотетического свойства app.dir, то без оговорок (типа а какой у вас браузер) это стало возможным только с Windows 2000.

ЛОЖЬ. Прямая ложь. Видимо, очень характерная для жабофилов. Объяснения см. выше. То, что было выведено из этой лживой посылки, я даже не буду читать.

anonymous
()
Ответ на: комментарий от anonymous

> Ты сравнил чтение реестра WinAPI-функцией RegQueryValue с прямым парсингом ntuser.dat????

А с абстракцией таки у тебя хреново. Поясняю, я сравнил два абстрактных процесса:

- получение данных с помощью прямого доступа к источнику (чтение файла реестра или чтение значения напрямую из реестра); - получение данных с помощью соответствующего API (Reg* в одном случае, SH* в другом случае).

Использование первого процесса для доступа к реестра у тебя вызывает приступ брызгания слюной, а использование того же процесса для получения конкретного значения ты мне рекомендуешь сам. С точки зрения трудоемкости я тебя понимаю :), а с точки зрения документированности оно ничем не лучше.

> Да, этот метод приятнее, слегка проще, но даёт тот же результат. Что дальше?

Используя твою буквоедскую практику - этот метод был официально задокументирован, все остальное - это workarounds - в сад!

> MSDN не даёт гарантий на будущее ни для каких функций.

Если "на будущее" только для функций, то для ключей реестра гарантии не даются вообще.

azakharchuk
()
Ответ на: комментарий от azakharchuk

> Поясняю, я сравнил два абстрактных процесса:

А API, между прочим, так и возникает: его первую версию предлагают разработчики на основе собственных предположений о том, какие действия программистам наиболее часто придётся выполнять. Потом, на основе накопившегося опыта, по мере надобности, добавляются новые функции. Основная цель - сделать наиболее часто повторяющиеся действия проще. Ну, и ввести дополнительную абстракцию, да. Только я не понимаю, зачем ты здесь наводишь тень на плетень и уводишь разговор в сторону?

Проблема такова. JVM игнорирует рекомендации разработчика платформы Windows касательно каталога для хранения пользовательских данных приложений. Игнорирует злостно, уже многие годы. Веских оправданий для этого игнорирования тебе привести не удалось, хоть ты и пытался. Может, попробуешь ещё? Вот прямо по пунктам: 1), 2), 3). А я потом прямо по этим пунктам выскажусь.

> Использование первого процесса для доступа к реестра у тебя вызывает приступ брызгания слюной

Бред. Всего-то надо задействовать ДВЕ (!!) упомянутые мной выше WinAPI-функции. Где сложность, покажи?

> а использование того же процесса для получения конкретного значения ты мне рекомендуешь сам.

Неправда. Пока не было shell32, они могли, скрежеща зубками, использовать эти страшные (для тебя и для них) reg-функции WinAPI. Но с тех пор, как появилась shell32, у разработчиков JVM было время и возможность предпочесть использовать её. Тем более, что у меня есть основания полагать: на win-машине без shell32 нынешние JVM всё равно уже не запустишь. Так где проблема?

> Используя твою буквоедскую практику - этот метод был официально задокументирован, все остальное - это workarounds - в сад!

Снова бред. Оба метода официально предлагались разработчиком платформы. Здесь нет никакой отсебятины. Просто сейчас MS рекомендует shell32-метод. Снова: где проблема?

anonymous
()
Ответ на: комментарий от anonymous

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

Поверь мне, что это не является самой большой проблемой Java, на данный момент. И вряд ли один я так думаю. Иначе, такой request давно бы появился в bug database и собрал бы огромное количество голосов.

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

Более того, пользователи desktop Java приложений, тоже не особо требуют этого от разработчиков (кажется, я понимаю, они просто на этом основании утверждают что Java - ацтой, и не пользуются Java приложениями вообще). Нет спроса - нет предложения.

Если ты будешь выступать в роли заказчика, ты запросто можешь потребовать этого и заплатив получишь то, что нужно. Как только таких заказчиков будет много, и программисты начнут сталкиваться с такой задачей часто, они начнут штормить Sun, и возможно когда-то оно появится в стандартном API.

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

Мелкомягким же, прежде чем, создавать такие рекомендации лучше более детально работать над приведением в порядок собственных SDK/APIs.

> Пока не было shell32

Он был с самого начала выхода win95, только функций нужных в нем не было.

> они могли

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

Мелкомягкие тоже "могли"... предоставить API поддерживающий ихние "рекомендации" сразу, а предоставили в составе ОС, почему-то через несколько лет. И то, видать только потому, что их разработчики достали.

Кроме того, учитывая отношение мелкомягких к Java, и тем как они "придерживались" спецификаций Sun, при реализации своей JVM (за что и были лишены лицензии), игнорирование этой "рекомендации" со стороны Sun - это сущий пустяк.

> Оба метода официально предлагались разработчиком платформы.

Я вот и просил ссылочку на "официально", не дождался. У нас разные понятия об официально. У меня официально - это Platfom SDK или Programer's Guide/Reference. А Troubleshooting/Knowledge Base - это официоз для бедных (типа "Ой! Проблемка. Ну делайте пока так, а мы скоро что-нить придумаем.").

Короче, спор в дальнейшем мне видится бесперспективным. Судя по всему, каждый останется при своем мнении. Судя по тому, сколько времени ты уделил вопросу "Почему им было взападло прочитать одно значение из реестра?", то эта претензия является одной из самых существенных, посему результатом я скорее удовлетворен.

azakharchuk
()
Ответ на: комментарий от azakharchuk

> Поверь мне, что это не является самой большой проблемой Java, на данный момент.

Верю. Но зато это прекрасно иллюстрирует подход разработчиков к качеству продукта. С таким подходом вы свои проблемы никогда не решите, только стонать и будете.

> И вряд ли один я так думаю. Иначе, такой request давно бы появился в bug database и собрал бы огромное количество голосов.

Ни разработчики, ни тем более пользователи жабоприложений не замечают это по одной простой причине - крайне низкая квалификация. Работает как-то - и ладно, пипл схавает. И правда, многие хавают. Та же история, что и с windows. Она, как и java, ориентирована на быдло. Тут они друг друга нашли просто.

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

Да и самой M$ это, я думаю, тоже пох. WIndows они просрали, скоро просрут и Windows NT.

> Более того, пользователи desktop Java приложений, тоже не особо требуют этого от разработчиков (кажется, я понимаю, они просто на этом основании утверждают что Java - ацтой, и не пользуются Java приложениями вообще). Нет спроса - нет предложения.

Я уже рассказал выше, почему так :)

> Я вот и просил ссылочку на "официально", не дождался. У нас разные понятия об официально. У меня официально - это Platfom SDK или Programer's Guide/Reference.

http://www.microsoft.com/technet/archive/winntas/maintain/profiles.mspx?mfr=true

Устроит?

Если нет - жду контрпример, где MS в период с 1995 по 1999 рекомендует какой-то иной путь определения Application Data, кроме реестра. У меня сейчас, к сожалению, нет старых MS SDK.

> Короче, спор в дальнейшем мне видится бесперспективным.

Абсолютно. Разработчики либо вообще не озадачивались этим вопросом, либо попробовали искать инфу, за 5 минут не нашли - и забили. Типа и так пашет, зачем париться? Типа "зачем идти в туалет, если насрать можно в квартире соседа - у меня же всё равно пахнуть не будет".

> Судя по тому, сколько времени ты уделил вопросу "Почему им было взападло прочитать одно значение из реестра?", то эта претензия является одной из самых существенных, посему результатом я скорее удовлетворен.

Остальные претензии к ThinkFree я высказал выше, и тебе нечего было возразить. Поэтому ты так прицепился именно к APPDATA. Других претензий не будет - TF я удалил, как совершенно бесполезную погремушку, а иного java-софта не держу, незачем.

anonymous
()
Ответ на: комментарий от anonymous

> У меня сейчас, к сожалению, нет старых MS SDK.

Написал и вспомнил про delphi 5, который у меня валялся. Там нашёл "Win32 Programmer's Reference" из MS SDK того времени. Цитата оттель:

Folder Locations

Certain folders have special meanings for the shell. An application can use shell functions to retrieve the locations of these special folders and to enable the user to browse for specific folders.

Some special folders are virtual folders ¾ so called because they are not actual directories on any storage device, local or remote. Virtual folders like the desktop folder, the My Computer folder, and the Network Neighborhood folder make a unified namespace possible by serving as containers for any number of storage devices and network resources. Other virtual folders contain file objects, such as printers, that are not part of the file system. File system directories that the shell uses for specific purposes are also considered special folders. Examples include the Programs folder (which contains the user's program groups) and the desktop directory (which is used to physically store files that have been copied to the desktop folder). The locations of special file system folders are stored in the registry under the HKEY_CURRENT_USER / Software / Microsoft / Windows / CurrentVersion / Explorer / Shell Folders key.

You can use the SHGetSpecialFolderLocation function to retrieve the location of a special folder, which can be virtual or part of the file system. The function returns a PIDL, which the application must eventually free using the shell's allocator. If the folder is part of the file system, you can convert the PIDL to a file system path by using the SHGetPathFromIDList function. For a list of special folders, see the description of the SHGetSpecialFolderLocation function.

To display a dialog box that enables the user to browse for a folder, you can use the SHBrowseForFolder function. An application might use this function to prompt the user for a directory or remote computer. This function can also be used to browse for network printers, even though printers are not considered folders. An application can specify the root folder to browse from. For example, to prompt the user for a program group, you might call SHBrowseForFolder specifying the PIDL for the Programs folder as the root.

Возражения, благодарности, пожелания?

anonymous
()
Ответ на: комментарий от tailgunner

>От виртуальной машины плохо пахнет уже потому, что это виртуальная машина :D Технология, устаревшая уже лет 15 назад.

Ой. Скажи это микрософту с хельсенбергом. Им же 6 лет назад пришлось опять изобрести виртуальную машину, этот труп, умерший 15 лет назад.

>Ты хочешь сказать, что в вендовой JVM нет ни одной функции чтения реестра (приватной, публичной - мелочи)? Чё, правда? Не верю.

Нету. Ибо на соляре это не нужно. Приходится покупать отдельные библиотеки, работающие с реестром через JNI

anonymous
()
Ответ на: комментарий от anonymous

>> Ты хочешь сказать, что в вендовой JVM нет ни одной функции чтения реестра (приватной, публичной - мелочи)? Чё, правда? Не верю.

> Нету. Ибо на соляре это не нужно. Приходится покупать отдельные библиотеки, работающие с реестром через JNI

Как же жаба user.dir определяет?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.