Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.02.24;
Скачать: [xml.tar.bz2];

Вниз

И когда же этот CodeGear(ака Borland) сделают Delphi 64bit?   Найти похожие ветки 

 
Черный Шаман   (2008-01-20 12:45) [0]

Сабж. Так как приходится думать про перевод некоторых проектов на С++.


 
мойипизвестен   (2008-01-20 12:46) [1]

А я не люблю троллей


 
DVM ©   (2008-01-20 12:47) [2]


> Так как приходится думать про перевод некоторых проектов
> на С++.

Перевод? Считай, что написание заново.
А зачем тебе 64 бит?


 
Черный Шаман   (2008-01-20 12:48) [3]


> DVM ©   (20.01.08 12:47) [2]
>
>
> > Так как приходится думать про перевод некоторых проектов
> > на С++.
>
> Перевод? Считай, что написание заново.
> А зачем тебе 64 бит?


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


 
Черный Шаман   (2008-01-20 12:50) [4]


> DVM ©   (20.01.08 12:47) [2]
>
>
> > Так как приходится думать про перевод некоторых проектов
> > на С++.
>
> Перевод? Считай, что написание заново.
> А зачем тебе 64 бит?


К примеру создание dll для 64-битных приложений.


 
DVM ©   (2008-01-20 12:51) [5]


> а не через прокладку

Это понятно, но вот зачем она 64 бит подсистема? Ускорение работы? Сомнительно, это надо еще постараться чтобы его добиться. Если только больший доступный потенциально объем памяти.


 
DVM ©   (2008-01-20 12:52) [6]


> К примеру создание dll для 64-битных приложений.

Кстати, я вот не в курсе, 64 бит приложение может вызывать функции 32 бит длл или нет?


 
Черный Шаман   (2008-01-20 12:56) [7]


> DVM ©   (20.01.08 12:51) [5]
>
>
> > а не через прокладку
>
> Это понятно, но вот зачем она 64 бит подсистема? Ускорение
> работы? Сомнительно, это надо еще постараться чтобы его
> добиться. Если только больший доступный потенциально объем
> памяти.


Нет. К примеру нужно мне получать PIDL-ы 64-битных алетов контрольной панели или других расширений оболочки Wiondows, так вот с 32-битным кодом они некоррктно работают. Приходится запускать 64-битное приложение на С++ и через него получать данные в 32-битное приложение.


 
Черный Шаман   (2008-01-20 12:57) [8]


> DVM ©   (20.01.08 12:52) [6]
>
>
> > К примеру создание dll для 64-битных приложений.
>
> Кстати, я вот не в курсе, 64 бит приложение может вызывать
> функции 32 бит длл или нет?


В том то и дело что нет. А производительность и ограничение по памяти в 3Гб это явно мало кого волнуют.


 
DVM ©   (2008-01-20 13:17) [9]


> Черный Шаман  

Так это, не использовать 64 бит Windows и нет проблемы :)


 
ketmar ©   (2008-01-20 17:04) [10]

>[9] DVM©(20.01.08 13:17)
ты чего? шо, пацаны зря баблос на дополнительных 32 бита выбивали?!


 
Черный Шаман   (2008-01-20 17:50) [11]


> DVM ©   (20.01.08 13:17) [9]
>
>
> > Черный Шаман  
>
> Так это, не использовать 64 бит Windows и нет проблемы :


А вы убедите в этом пользователей нашего продукта - не использовать Vista64bit


 
ketmar ©   (2008-01-20 17:53) [12]

>[11] Черный Шаман (20.01.08 17:50)
запросто. не делайте продукт под это. если ваш продукт пользователям нужен — они сменят винду. если нет… то ваш продукт не нужен.

%-)


 
Черный Шаман   (2008-01-20 17:56) [13]


> ketmar ©   (20.01.08 17:53) [12]
>
> >[11] Черный Шаман (20.01.08 17:50)
> запросто. не делайте продукт под это. если ваш продукт пользователям
> нужен — они сменят винду. если нет… то ваш продукт не нужен.


У нас продукт рассчитан на миллионы пользователей (пока есть только десятки тысяч), нечто вроде утилиты - помощника работы с Windows.


 
ketmar ©   (2008-01-20 17:57) [14]

так я на что и намекаю. если он пользователям нужен… ну, см. [12]


 
Черный Шаман   (2008-01-20 18:06) [15]


> ketmar ©   (20.01.08 17:57) [14]
>
> так я на что и намекаю. если он пользователям нужен… ну,
>  см. [12]


Так нам нужны все пользователи, в идеале чтобы каждый пользователь Windows установил себе Vista Start Menu - Удобная альтернатива меню http://www.vistastartmenu.com/

Вещь очень удобная, не тот отстой, что предлагает Microsoft.


 
ketmar ©   (2008-01-20 18:12) [16]

>[15] Черный Шаман (20.01.08 18:06)
не, это я оценить не способен. костыль к костылю какой-то. %-)


 
homm ©   (2008-01-20 18:13) [17]

> [15] Черный Шаман   (20.01.08 18:06)
> Удобная альтернатива меню http://www.vistastartmenu.com/

Что то ваше меню состоит из 9-и пунктов «Рисунок».


 
Семен Сурков   (2008-01-20 18:16) [18]

ну посмотри их роадмэп - там все сказано.

http://dn.codegear.com/article/36620

вроде через год


 
Черный Шаман   (2008-01-20 18:17) [19]


> homm ©   (20.01.08 18:13) [17]
>
> > [15] Черный Шаман   (20.01.08 18:06)
> > Удобная альтернатива меню http://www.vistastartmenu.com/
>
> Что то ваше меню состоит из 9-и пунктов «Рисунок».


Графику включать в бровсере нужно, так как Vista Like


 
homm ©   (2008-01-20 18:18) [20]

> [17] homm ©   (20.01.08 18:13)
> Что то ваше меню состоит из 9-и пунктов «Рисунок».

Ах, это список языков, написанный английскими буквами на картинках одним из самых распространенных шрифтов. Ну да, ну да…


 
homm ©   (2008-01-20 18:19) [21]

> [19] Черный Шаман   (20.01.08 18:17)
> Графику включать в бровсере нужно, так как Vista Like

Где корреляция? :)


 
Черный Шаман   (2008-01-20 18:19) [22]


> ketmar ©   (20.01.08 18:12) [16]
>
> >[15] Черный Шаман (20.01.08 18:06)
> не, это я оценить не способен. костыль к костылю какой-то.
>  %-)


Неправда у нас не костыль, у нас очень даже протез позволяющим пользователям Windows работать с ней без мата, причём с элементами искусственного интеллекта :)


 
homm ©   (2008-01-20 18:21) [23]

> [22] Черный Шаман   (20.01.08 18:19)
> причём с элементами искусственного интеллекта :)

РУЧ ? :)


 
Черный Шаман   (2008-01-20 18:21) [24]


> Семен Сурков   (20.01.08 18:16) [18]
>
> ну посмотри их роадмэп - там все сказано.
>
> http://dn.codegear.com/article/36620
>
> вроде через год


Ну тогда действительно смысла нет. На переделку уйдёт намного больше времени.


 
Черный Шаман   (2008-01-20 18:22) [25]


> homm ©   (20.01.08 18:18) [20]
>
> > [17] homm ©   (20.01.08 18:13)
> > Что то ваше меню состоит из 9-и пунктов «Рисунок».
>
> Ах, это список языков, написанный английскими буквами на
> картинках одним из самых распространенных шрифтов. Ну да,
>  ну да…


Веб-сайтом не я занимаюсь.


 
homm ©   (2008-01-20 18:27) [26]

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


 
homm ©   (2008-01-20 18:28) [27]

И что то странное случилось с цветами у моей иконки ользователя.


 
homm ©   (2008-01-20 18:29) [28]

Еще бы фишку с AV убрать, вообще бы круто было ;)


 
homm ©   (2008-01-20 18:30) [29]

Блин, зачем ей 100% мощности моего процессора? В общем брак, как оказалаось.


 
Черный Шаман   (2008-01-20 18:43) [30]


> homm ©   (20.01.08 18:28) [27]
>
> И что то странное случилось с цветами у моей иконки ользователя.
>


Это известный баг, у некоторых он проявляется. Связано с тем, что Microsoft неправильно формирует bitmap, так что стандартным Tbitmap картинка пользователя открывается в смещённых цветах. Уже исправлено, будет в новой версии.

Откройте в любой TBitmap и отрисуйте картинку в
"C:\Documents and Settings\All Users\Application Data\Microsoft\User Account Pictures\Имя пользователя.bmp"

Пришлось переписывать загрузку в TBitmap.


> Блин, зачем ей 100% мощности моего процессора? В общем брак,
>  как оказалаось.


При старте идет сканирование программ и построение базы для нечёткого поиска программы по ее имени или части имени. Допускается до 2 ошибок в одном слове.


> homm ©   (20.01.08 18:29) [28]
>
> Еще бы фишку с AV убрать, вообще бы круто было ;)


Странно, можно скриншот, так как пользователи не жаловались?


 
Черный Шаман   (2008-01-20 18:44) [31]


> homm ©   (20.01.08 18:30) [29]
>
> Блин, зачем ей 100% мощности моего процессора? В общем брак,
>  как оказалаось.


Точнее при первом старте и не более 50% от мощности системы. Тоесть при двух процессорах занят будет один, при одном - 50% одного.


 
Черный Шаман   (2008-01-20 18:47) [32]


> homm ©   (20.01.08 18:28) [27]
>
> И что то странное случилось с цветами у моей иконки ользователя.


Кстати, вот можно увидеть сам этот баг Delphi http://webfile.ru/1696154


 
ketmar ©   (2008-01-20 18:50) [33]

>[22] Черный Шаман (20.01.08 18:19)
>Неправда у нас не костыль, у нас очень даже протез
костыль. %-) а ваш костыль можно вызвать клацем по пустому месту десктопа?


 
Черный Шаман   (2008-01-20 19:01) [34]


> ketmar ©   (20.01.08 18:50) [33]
>
> >[22] Черный Шаман (20.01.08 18:19)
> >Неправда у нас не костыль, у нас очень даже протез
> костыль. %-) а ваш костыль можно вызвать клацем по пустому
> месту десктопа?


Это будет мешать, хоть такую возможность можно было бы прикрутить. Но всегда есть или клик на кнопку Пуск или кнопка на клавиатуре WM_USER


 
homm ©   (2008-01-20 19:03) [35]

> [30] Черный Шаман   (20.01.08 18:43)
> Странно, можно скриншот,

а можно без скриншотов на словах? Глюк произашел после наведения на документ с иконкой эксплорера (при том, что у меня вообщето *.html зарегистрованно за оперой) в списке Resent. Может подсказка хотела всплыть, или еще что, не знаю.


 
homm ©   (2008-01-20 19:04) [36]

> [34] Черный Шаман   (20.01.08 19:01)
> или кнопка на клавиатуре WM_USER

Отличная кнопка %) Наверное поставляется с программой в коробочной версии :)


 
Черный Шаман   (2008-01-20 19:07) [37]


> homm ©   (20.01.08 19:03) [35]
>
> > [30] Черный Шаман   (20.01.08 18:43)
> > Странно, можно скриншот,
>
> а можно без скриншотов на словах? Глюк произашел после наведения
> на документ с иконкой эксплорера (при том, что у меня вообщето
> *.html зарегистрованно за оперой) в списке Resent. Может
> подсказка хотела всплыть, или еще что, не знаю.


В левой части меню? Там где написано Vista Start Menu? или правой где отображаются данные виртуальных папок?


 
ketmar ©   (2008-01-20 19:08) [38]

>[34] Черный Шаман (20.01.08 19:01)
это ты не пользовался нормальными щеллами.


 
Черный Шаман   (2008-01-20 19:08) [39]


> homm ©   (20.01.08 19:04) [36]
>
> > [34] Черный Шаман   (20.01.08 19:01)
> > или кнопка на клавиатуре WM_USER
>
> Отличная кнопка %) Наверное поставляется с программой в
> коробочной версии :)


Кнопка Windows на клавиатуре, рядом с CTRL и ALT


 
DVM ©   (2008-01-20 19:09) [40]


> Черный Шаман  

а WM_USER то тут причем :)


 
Черный Шаман   (2008-01-20 19:14) [41]


> а WM_USER то тут причем :)


В общем сообшение такое explorer приходит при нажатии на неё, сама кнопка как называется не знаю.


 
Anatoly Podgoretsky ©   (2008-01-20 19:18) [42]

> homm  (20.01.2008 18:29:28)  [28]

Нет проблем - try ... except end;


 
homm ©   (2008-01-20 19:23) [43]

Тупейшая программа. Кто думал над ее проектированием просто урод какой-то. Поставил ее чтобы попытатся воспроизвести АВ. К сожалению(счастью) это не удалось.  Нажал стрелочку нод надписью «получить про версию» выпало меню. Захотел закрыть меню, но не закрывать окно программы. Для этого отвел указатель влево от нажатой области со стрелками, не появилось никаких признаков того, что курсор находится над кнопкой «выключить». Места там до кнопки много. Нажал. И компьютер стал выключатся.
Я вообще не понимаю дегениратов, которые помещают ярлычек для выключения и перезагрузки компа в панель быстрово запуска, например. Это что, основная функция компьютера? Перезгружать и выключать? Некоторые производители клавиатур из этих-же извращенцев.


 
Дмитрий Белькевич ©   (2008-01-20 19:23) [44]

Пошла реклама...


 
DVM ©   (2008-01-20 19:24) [45]


> В общем сообшение такое explorer приходит при нажатии на
> неё, сама кнопка как называется не знаю.

Ерунда какая то. Окну панели задач приходит сообщение  

 WM_SHELLHOOKMESSAGE := RegisterWindowMessage("SHELLHOOK");
 if WM_SHELLHOOKMESSAGE<>0 then
   begin
     RegisterShellHook(0, RSH_REGISTER);
     if IsWinNT then
        RegisterShellHook(hTaskBarWnd, RSH_TASKMAN)
     else
        RegisterShellHook(hTaskBarWnd, RSH_REGISTER);
   end;

c wParam = HSHELL_TASKMAN - вот в этот момент надо показывать меню пуск. И никогда более.


 
DVM ©   (2008-01-20 19:26) [46]


> Черный Шаман  

Ваше меню будет неправильно работать с альтернативными оболочками. А могло бы работать и правильно.


 
homm ©   (2008-01-20 19:29) [47]

> [45] DVM ©   (20.01.08 19:24)

Да вообще, поделка, и не говори.


 
Дмитрий Белькевич ©   (2008-01-20 19:29) [48]

По теме: сходите на сайт CodeGear, у них где-то был roadmap. Там всё написано.


 
Черный Шаман   (2008-01-20 19:30) [49]


> homm ©   (20.01.08 19:23) [43]
>
> Тупейшая программа. Кто думал над ее проектированием просто
> урод какой-то. Поставил ее чтобы попытатся воспроизвести
> АВ. К сожалению(счастью) это не удалось.  Нажал стрелочку
> нод надписью «получить про версию» выпало меню. Захотел
> закрыть меню, но не закрывать окно программы. Для этого
> отвел указатель влево от нажатой области со стрелками, не
> появилось никаких признаков того, что курсор находится над
> кнопкой «выключить». Места там до кнопки много. Нажал. И
> компьютер стал выключатся.
> Я вообще не понимаю дегениратов, которые помещают ярлычек
> для выключения и перезагрузки компа в панель быстрово запуска,
>  например. Это что, основная функция компьютера? Перезгружать
> и выключать? Некоторые производители клавиатур из этих-же
> извращенцев.


В новой версии идет коренная переделка интерфейса и функционала(насколько это возможно, так как код не особо). Будет где-то в марте.

Кнопок не будет, они будут на всплывающей панели, будет возможность сменных скинов (когда будут выкинуты полностью старые компоненты то можно будет менять вид программы как в Winamp 5), пока будет нечто типа Winamp3 по части кустомизации.


 
homm ©   (2008-01-20 19:31) [50]

А ваша программа в курсе, что если у пользователя установленно 10 миллисекунд до появления подменю, то и повлятся оно должно после 10-и, а не после 400, как по дефолту.


 
homm ©   (2008-01-20 19:33) [51]

Большое спасибо за ваш отзыв, он поможет нам сделать программу лучше.

Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\Inetpub\vhosts\vistastartmenu.com\httpdocs\action_script\CONTACT\smtp-func.php on line 22

Warning: fsockopen() [function.fsockopen]: unable to connect to start-menu.com:25 (Unknown error) in C:\Inetpub\vhosts\vistastartmenu.com\httpdocs\action_script\CONTACT\smtp-func.php on line 22


 
@!!ex ©   (2008-01-20 19:45) [52]

Автор, если тебя зовут Денис Назаренко, то прога - нифантан.
Мне влом качать новую версию, у мну VistaStartMenu_Setup_2_7_freeware_ru.exe есть...
ОЧЕНЬ не понравилось... хотя навело на идею сделать что нить подобное, но более юзабельное(правда потом пришло понимание, что сделать что-то действительно удобнее чем стандартное врядли удастся).

P.S.
Насчет WM_USER жжошь... эта клавиша называется Win или Super(Linux)

P.P.S.
WM_USER - это сообщение определенное программером(по названию можно догадаться)


 
homm ©   (2008-01-20 19:48) [53]

> [52] @!!ex ©   (20.01.08 19:45)
> (правда потом пришло понимание, что сделать что-то действительно
> удобнее чем стандартное врядли удастся)

Стандартное ХР действительно удобнее стандартного висты :)


 
@!!ex ©   (2008-01-20 19:51) [54]

> [53] homm ©   (20.01.08 19:48)

True Launch Bar клевая штука. заменяет собой стандартный пуск без проблем...


 
Черный Шаман   (2008-01-20 19:57) [55]


> @!!ex ©   (20.01.08 19:45) [52]
>
> Автор, если тебя зовут Денис Назаренко, то прога - нифантан.


В принципе это мой начальник.

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

Например возможность быстрого запуска программ-документов по их имени(с учётом частоты использования), по одному клику папке, отсутствие перетасовки программ при инсталляции или деинсталяции и тому подобное.


 
ketmar ©   (2008-01-20 19:58) [56]

>[46] DVM©(20.01.08 19:26)
юзерам альтернативных оболочек не надо такое альтернативное поделие. %-)


 
@!!ex ©   (2008-01-20 20:05) [57]

> [55] Черный Шаман   (20.01.08 19:57)
> В программе есть некоторые недостатки типа кнопок(которые
> в настройках можно отключить) и кнопки пользователя(которая
> была багом компонент Delphi), но в целом она удобнее стандартного
> пуска.
>
> Например возможность быстрого запуска программ-документов
> по их имени(с учётом частоты использования), по одному клику
> папке, отсутствие перетасовки программ при инсталляции или
> деинсталяции и тому подобное.

Просто я занимался стилизацией винды, у мну штук 20 всевозможных прог для изменения интерфейса...
Vista Start Menu это очень неудобно.


 
Черный Шаман   (2008-01-20 20:22) [58]


> > В общем сообшение такое explorer приходит при нажатии
> на
> > неё, сама кнопка как называется не знаю.
>
> Ерунда какая то. Окну панели задач приходит сообщение  
>
>  WM_SHELLHOOKMESSAGE := RegisterWindowMessage("SHELLHOOK");
>
>  if WM_SHELLHOOKMESSAGE<>0 then
>    begin
>      RegisterShellHook(0, RSH_REGISTER);
>      if IsWinNT then
>         RegisterShellHook(hTaskBarWnd, RSH_TASKMAN)
>      else
>         RegisterShellHook(hTaskBarWnd, RSH_REGISTER);
>    end;
>
> c wParam = HSHELL_TASKMAN - вот в этот момент надо показывать
> меню пуск. И никогда более.


Только это хакерская функция RegisterShellHook, так как в MSDN ничего по ней нет, есть только по RegisterShellHookWindow.

Там реализуется перехват через стандартные хуки.


 
DVM ©   (2008-01-20 20:30) [59]


> Только это хакерская функция RegisterShellHook, так как
> в MSDN ничего по ней нет, есть только по RegisterShellHookWindow.
>
>
> Там реализуется перехват через стандартные хуки.

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

RegisterShellHookWindow - это неправильно описанная функция RegisterShellHook. Короче ошибка в MSDN.


 
Черный Шаман   (2008-01-20 20:37) [60]


> DVM ©   (20.01.08 20:30) [59]
>
>
> > Только это хакерская функция RegisterShellHook, так как
> > в MSDN ничего по ней нет, есть только по RegisterShellHookWindow.
>
> >
> >
> > Там реализуется перехват через стандартные хуки.
>
> Так тебя никто не призывает эту функцию использовать. Я
> тебе толкую о том, что этими самыми стандартными хуками
> надо отслеживать приход WM_SHELLHOOKMESSAGE, зарегистрированного
> указанным образом.
>
> RegisterShellHookWindow - это неправильно описанная функция
> RegisterShellHook. Короче ошибка в MSDN.


Ну и в принципе альтернативные оболочки мы рассматриваем. Зачем человеку ставить альтернативное меню на альтернативную оболочку?

А так она работает нормально от Win2000 до Win Vista 64-bit(включая и XP 64-бит). Хотя интерфейс будет кардинально переделан(так как многие пользователи уже жалуются на неудобства) да и плагины нужно будет прикрутить, но это уже после 2.8 :)

Конечно хорошо сделать приложение которое бы работало в альтернативных оболочках и системах(типа Linux и MacOS), но у нас ресурсов не хватит.


 
DVM ©   (2008-01-20 20:43) [61]


> Конечно хорошо сделать приложение которое бы работало в
> альтернативных оболочках и системах(типа Linux и MacOS),
>  но у нас ресурсов не хватит.

Если альтернативная оболочка пошла по следам эксплорера, а чаще всего так и делают (я так делал, Aston так делает, LiteStep, BlackBox), то обычно стараются сделать все так же, как это сделано в эксплорере для обеспечения максимальной совместимости. Поэтому классы окон часто называют абсолютно так же как у эксплорера и.т.д. Все оболочки также как и сам эксплорер пользуются одними и теми же функциями для установки хука WH_SHELL (та самая RegisterShellHook) и соответственно получают одни и те же сообщения, которые и надо отлавливать.
Если играть по этим неписанным правилам. то твое меню будет работать и в LiteStep и в моем шелле и в Aston. (правда надо во всех шеллах отключить стандартное тамошнее меню, но это тоже у всех делается похоже).


 
Черный Шаман   (2008-01-20 20:52) [62]


> DVM ©   (20.01.08 20:43) [61]
>
>
> > Конечно хорошо сделать приложение которое бы работало
> в
> > альтернативных оболочках и системах(типа Linux и MacOS),
>
> >  но у нас ресурсов не хватит.
>
> Если альтернативная оболочка пошла по следам эксплорера,
>  а чаще всего так и делают (я так делал, Aston так делает,
>  LiteStep, BlackBox), то обычно стараются сделать все так
> же, как это сделано в эксплорере для обеспечения максимальной
> совместимости. Поэтому классы окон часто называют абсолютно
> так же как у эксплорера и.т.д. Все оболочки также как и
> сам эксплорер пользуются одними и теми же функциями для
> установки хука WH_SHELL (та самая RegisterShellHook) и соответственно
> получают одни и те же сообщения, которые и надо отлавливать.
>
> Если играть по этим неписанным правилам. то твое меню будет
> работать и в LiteStep и в моем шелле и в Aston. (правда
> надо во всех шеллах отключить стандартное тамошнее меню,
>  но это тоже у всех делается похоже).


Будет хоть один запрос, переделаем, так как уже знаю как. А пока есть много другой работы.

Хотя RegisterShellHook все же недокументированная функция и не то же самое, что RegisterShellHookWindow.


 
@!!ex ©   (2008-01-20 20:52) [63]

> [60] Черный Шаман   (20.01.08 20:37)

Послушай DVM, он в шеллах разбирается.


 
ketmar ©   (2008-01-20 20:54) [64]

>[60] Черный Шаман (20.01.08 20:37)
>интерфейс будет кардинально переделан(так как многие пользователи уже
>жалуются на неудобства)

убил. наповал.

внимание, викторина!
угадайте, откуда цитата:
«Each detail in Vista Start Menu is well thought-out»


 
ketmar ©   (2008-01-20 20:55) [65]

>[63] @!!ex ©(20.01.08 20:52)
>Послушай DVM, он в шеллах разбирается.

или меня. я не разбираюсь, но тоже писал (и даже юзал) свой, и солидарен с DVM.


 
DVM ©   (2008-01-20 20:55) [66]


> Хотя RegisterShellHook все же недокументированная функция
> и не то же самое, что RegisterShellHookWindow.

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


 
Черный Шаман   (2008-01-20 21:02) [67]


> @!!ex ©   (20.01.08 20:52) [63]
>
> > [60] Черный Шаман   (20.01.08 20:37)
>
> Послушай DVM, он в шеллах разбирается.


Послушал, но пока есть другие переделки.


 
Eraser ©   (2008-01-20 21:03) [68]

> [0]

стыдно должно быть товарищам з борланда, что уж говорить..
2008 на дворе уже, а ни юникода (легко достпного с 2000), ни 64bit нету. стыдно!


 
Черный Шаман   (2008-01-20 21:12) [69]


> DVM ©   (20.01.08 20:55) [66]
>
>
> > Хотя RegisterShellHook все же недокументированная функция
> > и не то же самое, что RegisterShellHookWindow.
>
> Только она работает, в отличие от второй. Название то ей
> можно дать какое хошь, а вот второй параметр забыли в MSDN
> описать.


Да совсем забыл :) Спасибо за информацию, этого действительно не знал.

Хотя код хука уже был написан до меня и он работал (не имею привычки чинить работающие вещи). Ну и политика Microsoft, когда часто невнятная документация с отсутствием исходников.


 
homm ©   (2008-01-20 21:43) [70]

> Черный Шаман

Ты скажи, [50] учтете к следующей версии? Я не тормоз, мне 400мс много. Чай успеет остыть, пока я так по меню буду лазить.


 
Черный Шаман   (2008-01-20 21:48) [71]


> homm ©   (20.01.08 21:43) [70]
>
> > Черный Шаман
>
> Ты скажи, [50] учтете к следующей версии? Я не тормоз, мне
> 400мс много. Чай успеет остыть, пока я так по меню буду
> лазить.


Скорее всего в настройки программы внесём. Не хотелось бы завязываться на настройки Windows.


 
homm ©   (2008-01-20 21:49) [72]

> [71] Черный Шаман   (20.01.08 21:48)
> Скорее всего в настройки программы внесём.

Накуя? Эта натройка уже есть, нужно только из реестра ее считать.


 
Черный Шаман   (2008-01-20 22:11) [73]


> homm ©   (20.01.08 21:49) [72]
>
> > [71] Черный Шаман   (20.01.08 21:48)
> > Скорее всего в настройки программы внесём.
>
> Накуя? Эта натройка уже есть, нужно только из реестра ее
> считать.


Ну хотя бы тем, что там не меню. И использовать MenuShowDelay некорректно.


 
homm ©   (2008-01-20 22:13) [74]

> [73] Черный Шаман   (20.01.08 22:11)
> Ну хотя бы тем, что там не меню.

Ага? O_O


 
ага   (2008-01-21 07:04) [75]


>homm ©   (20.01.08 22:13) [74]
>> [73] Черный Шаман   (20.01.08 22:11)
> Н>у хотя бы тем, что там не меню.

>Ага? O_O


Ага, там тебю.


 
Игорь Шевченко ©   (2008-01-21 10:24) [76]

Дети Ивана Кулибина.
Софт, ты б еще открыватель дверцы CD-ROMа написал. 64-х битный. Не лень время на фигню тратить ?


 
DVM ©   (2008-01-21 10:27) [77]


> Игорь Шевченко ©   (21.01.08 10:24) [76]

Если его программа пользуется спросом (как утверждается десятки тысяч уже, а замах на миллионы), то почему бы ее не писать и не развивать?


 
DVM ©   (2008-01-21 10:30) [78]

Если у меня купят по 1 доллар (или даже за 10 центов) миллион копий программы, я не то что 64 бит открыватель сидирома напишу, я к ней приложу бесплатно еще 64 бит запуздыриватель в трей приложу.


 
Игорь Шевченко ©   (2008-01-21 10:31) [79]

DVM ©   (21.01.08 10:27) [77]

Да кому это нафиг надо ? Даже не смешно.


 
boriskb ©   (2008-01-21 10:33) [80]

> (как утверждается десятки тысяч уже, а замах на миллионы)
>

Теперь полнятно, кто на сайте самый богатый.
Не то чтоб меня это очень тревожило, но интеремно же :))


 
Mystic ©   (2008-01-21 15:14) [81]

> Это понятно, но вот зачем она 64 бит подсистема? Ускорение
> работы? Сомнительно, это надо еще постараться чтобы его
> добиться. Если только больший доступный потенциально объем
> памяти.


Добится ускорения работы в 1.5 - 2 раза можно простой перекомпиляцией :) А объем памяти мало кому интересен ;)

> А производительность и ограничение по памяти в 3Гб это явно
> мало кого волнуют.


Производительность волнует меня. Поэтому у меня дома 64-битная OS :) И как пользователя, и как программиста ;)


 
DVM ©   (2008-01-21 15:26) [82]


> Добится ускорения работы в 1.5 - 2 раза можно простой перекомпиляцией
> :)

А с чего она возрастет то?

Т.е. ты хочешь сказать что все 64 бит приложения работают как минимум в 1.5 раза быстрее, чем аналогичные 32 битные? Даже если их просто перекомпилировали?

Ни за что не поверю.


 
homm ©   (2008-01-21 15:28) [83]

> [82] DVM ©   (21.01.08 15:26)
> Ни за что не поверю.

И правильно. Это сказки для убыстрения перехода.


 
Правильный_Вася   (2008-01-21 15:30) [84]


>  все 64 бит приложения работают как минимум в 1.5 раза быстрее,
>  чем аналогичные 32 битные?

конечно
особенно блокнот
в него нужно в полтора раза быстрее колотить буквы


 
clickmaker ©   (2008-01-21 15:31) [85]

слабые места компа - это не проц, как правило и не шина адреса, а периферия.
Поэтому, пока оно всё всё 64-бит не станет -- смысла нет особого


 
Черный Шаман   (2008-01-21 15:43) [86]


> ага   (21.01.08 07:04) [75]
>
>
> >homm ©   (20.01.08 22:13) [74]
> >> [73] Черный Шаман   (20.01.08 22:11)
> > Н>у хотя бы тем, что там не меню.
>
> >Ага? O_O
>
>
> Ага, там тебю.


Там "виртуальная страница" с динамической подгрузкой данных.


> Игорь Шевченко ©   (21.01.08 10:24) [76]
>
> Дети Ивана Кулибина.
> Софт, ты б еще открыватель дверцы CD-ROMа написал. 64-х
> битный. Не лень время на фигню тратить ?


Вы продаете свою программу 10 организациям по 10000$ а мы по 20$ 10000 пользователей. Так у кого фигня?


 
DVM ©   (2008-01-21 15:45) [87]


> а мы по 20$ 10000 пользователей.

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


 
Игорь Шевченко ©   (2008-01-21 15:48) [88]

Черный Шаман   (21.01.08 15:43) [86]

Всех денег не заработаешь.

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


 
clickmaker ©   (2008-01-21 15:49) [89]


> по 20$ 10000 пользователей
> Курочка по зернышку - нищему рубаха

неплохая такая рубаха, причем. От Джорджио Армани, никак не меньше


 
Mystic ©   (2008-01-21 15:50) [90]

> Ни за что не поверю.

Как хочешь. Но я лично пробовал на одной машине 32-х битную Gentoo и 64-х битную. На глазок разница примерно в полтора два раза. Причины:

1. 32-х разрядный режим реализован как эмуляция на уровне процессора
2. Дополнительные регистры памяти (R8 - R15)
3. Соглашение передачи stdcall под x64 использует для передачи параметров регистры процессора (по сути fastcall)


 
homm ©   (2008-01-21 15:52) [91]

> [90] Mystic ©   (21.01.08 15:50)
> 1. 32-х разрядный режим реализован как эмуляция на уровне
> процессора

Не смешно даже.


 
DVM ©   (2008-01-21 15:53) [92]


> Но я лично пробовал на одной машине 32-х битную Gentoo и
> 64-х битную.

Ну так над ней работали, наверное, в плане оптимизации под 32 и 64 бита отдельно. Не простое же перекомпилирование. Если поглядеть исходники, то наверняка можно найти кучу директив условной компиляции.


 
Mystic ©   (2008-01-21 16:26) [93]

> Не простое же перекомпилирование. Если поглядеть исходники,
>  то наверняка можно найти кучу директив условной компиляции.


Ядро может быть. Но чтобы все прикладные программы... Сомневаюсь...

Да и как ты себе представляешь такую оптимизацию на уровне исходного кода? Насколько я смотрел исходники шахматных движков, там различия минимальны. Если брать crafty, то там отличия в ассембленых вставках на функции FirstOne, LastOne и PopCn. Все.


 
DVM ©   (2008-01-21 16:35) [94]


> Mystic ©

В принципе все легко проверить. Можно взять, написать на MS VC несколько несложных программ, выполняющих какие-нибудь типичные действия, например, сортировка, поиск, поворот картинки и т.д. Просто скомпилировать в том же MS VC под IA-32 и под AMD64 (IA-64 мы вряд ли найдем) и сравнить скорость выполнения в Windows XP и Windows XP Professional x64 Edition. Но у меня нет Windows XP Professional x64 Edition.


 
Sapersky   (2008-01-21 16:49) [95]

Т.е. ты хочешь сказать что все 64 бит приложения работают как минимум в 1.5 раза быстрее, чем аналогичные 32 битные? Даже если их просто перекомпилировали?
Ни за что не поверю.


За счёт дополнительных регистров - вполне возможно.
Вычисление среднего цвета помните? Разница между вариантом, где все переменные укладывались в регистры, и тем, где одна лежала в стеке - 1.3 раза.
Хотя эта разница в большой степени - следствие несовершенства компилятора, но и продвинутый компилятор найдёт куда приспособить лишние регистры, сделать бОльшую развёртку цикла, например.


 
Mystic ©   (2008-01-21 16:55) [96]

> Но у меня нет Windows XP Professional x64 Edition.

А у меня нет обычной Windows XP Professional 32 bit :) Ибо разница в скорости шахматных программ очень ощутима :)


 
ZeroDivide ©   (2008-01-21 16:59) [97]


> Игорь Шевченко ©   (21.01.08 15:48) [88]
>
> Черный Шаман   (21.01.08 15:43) [86]
>
> Всех денег не заработаешь.
>
> Я просто сильно сомневаюсь, что ты найдешь массу тех, кому
> нужны лишние украшалки, да еще и за деньги.


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


 
Игорь Шевченко ©   (2008-01-21 17:00) [98]


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


Все может быть. Но до миллионов дело не дойдет


 
ketmar ©   (2008-01-21 18:22) [99]

>[90] Mystic ©(21.01.08 15:50)
по ходу да — из-за дополнительных регистров таки можно получить неплохое ускорение.


 
homm ©   (2008-01-21 18:27) [100]

> [99] ketmar ©   (21.01.08 18:22)
> по ходу да — из-за дополнительных регистров таки можно получить
> неплохое ускорение.

Например, как это делает замечательная библиотека .Net  :)


 
vsevshareware   (2008-01-21 18:30) [101]

И не такое продается...
Даже калькулятор можно продать :)) Альтернативу обычному... и будут покупать, будут использовать - ЭТО ФАКТ :)


 
Mystic ©   (2008-01-21 18:50) [102]

> Например, как это делает замечательная библиотека .Net  
> :)


Дизассемблируй и посмотри --- .NET Framework так не делает. Он использует регистры процессора как место для временного хранения аргументов функции при ее вызове. После чего первым делом аргументы функции копируются в стек ;)


 
ketmar ©   (2008-01-21 18:50) [103]

>[100] homm ©(21.01.08 18:27)
>>[99] ketmar © (21.01.08 18:22)
>>по ходу да — из-за дополнительных регистров таки можно получить
>>неплохое ускорение.
>Например, как это делает замечательная библиотека .Net :)

появился процессор, нативно выполняющий код этой VM? O_o
или просто вечер понедельника, тяжко? %-)


 
ketmar ©   (2008-01-21 18:51) [104]

интересно, а какой код генерит GCC4x64? мне лень кросскомпилятор собирать, может, кто смотрел?


 
Mystic ©   (2008-01-21 19:03) [105]

Вот образец замечательного использования регистров от JIT компилятора:

           System.Drawing.Color Color = System.Drawing.Color.Black;
           if (Color == System.Drawing.Color.Black)
               System.Console.WriteLine("Catastrophic execution");


компиируется в:


;            System.Drawing.Color Color = System.Drawing.Color.Black;
0000005c  lea         rcx,[rsp+40h]
00000061  call        FFFFFFFFF5A8CBF0
00000066  mov         qword ptr [rsp+000000D0h],rax
0000006e  lea         rcx,[rsp+40h]
00000073  mov         rax,qword ptr [rcx]
00000076  mov         qword ptr [rsp+20h],rax
0000007b  mov         rax,qword ptr [rcx+8]
0000007f  mov         qword ptr [rsp+28h],rax
00000084  mov         rax,qword ptr [rcx+10h]
00000088  mov         qword ptr [rsp+30h],rax

;            if (Color == System.Drawing.Color.Black)
0000008d  lea         rcx,[rsp+20h]
00000092  mov         rax,qword ptr [rcx]
00000095  mov         qword ptr [rsp+58h],rax
0000009a  mov         rax,qword ptr [rcx+8]
0000009e  mov         qword ptr [rsp+60h],rax
000000a3  mov         rax,qword ptr [rcx+10h]
000000a7  mov         qword ptr [rsp+68h],rax
000000ac  lea         rcx,[rsp+70h]
000000b1  call        FFFFFFFFF5A8CBF0
000000b6  mov         qword ptr [rsp+000000D8h],rax
000000be  lea         rcx,[rsp+70h]
000000c3  mov         rax,qword ptr [rcx]
000000c6  mov         qword ptr [rsp+000000B0h],rax
000000ce  mov         rax,qword ptr [rcx+8]
000000d2  mov         qword ptr [rsp+000000B8h],rax
000000da  mov         rax,qword ptr [rcx+10h]
000000de  mov         qword ptr [rsp+000000C0h],rax
000000e6  lea         rcx,[rsp+58h]
000000eb  mov         rax,qword ptr [rcx]
000000ee  mov         qword ptr [rsp+00000090h],rax
000000f6  mov         rax,qword ptr [rcx+8]
000000fa  mov         qword ptr [rsp+00000098h],rax
00000102  mov         rax,qword ptr [rcx+10h]
00000106  mov         qword ptr [rsp+000000A0h],rax
0000010e  lea         rdx,[rsp+000000B0h]
00000116  lea         rcx,[rsp+00000090h]
0000011e  call        FFFFFFFFF5A7DEA0
00000123  mov         byte ptr [rsp+000000E0h],al
0000012a  movzx       eax,byte ptr [rsp+000000E0h]
00000132  test        eax,eax
00000134  je          0000000000000148

;                System.Console.WriteLine("Catastrophic execution");
00000136  mov         rcx,12969090h
00000140  mov         rcx,qword ptr [rcx]
00000143  call        FFFFFFFFF81DFAE0


 
homm ©   (2008-01-21 19:24) [106]

> [102] Mystic ©   (21.01.08 18:50)
> Дизассемблируй и посмотри --- .NET Framework так не делает.
> Он использует регистры процессора как место для временного
> хранения аргументов функции при ее вызове. После чего первым
> делом аргументы функции копируются в стек ;)

Я знаю. Я об этом и говорю. Это был стеб.


 
clickmaker ©   (2008-01-21 20:35) [107]

> [105] Mystic ©   (21.01.08 19:03)

так там же не просто поля, а свойства. Неявные вызовы геттеров-сеттеров и пр.
Правда, судя по количеству mov qword ptr [rsp, там 3 параметра
Ну первый - типа this, второй - собственно value, а третий?..



Страницы: 1 2 3 вся ветка

Форум: "Прочее";
Текущий архив: 2008.02.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.77 MB
Время: 0.043 c
6-1181112499
Сергей Колесник
2007-06-06 10:48
2008.02.24
UDP перехватчик


2-1201638329
kiber-pilot
2008-01-29 23:25
2008.02.24
Вопрос про Close


2-1201861064
mrFreeman2007
2008-02-01 13:17
2008.02.24
Завершение работы


2-1201512491
@!!ex
2008-01-28 12:28
2008.02.24
Запрет SWAP a для приложения


15-1200740613
Dmitry S
2008-01-19 14:03
2008.02.24
Pixel Art





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский