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

Вниз

XP Manifest   Найти похожие ветки 

 
Zarmi ©   (2006-09-03 01:09) [0]

Здравствуйте друзья! Я пишу достаточно большую программу, несколько форм. До поры до времени все работало нормально, но после того как добавил XP manifest программа на некоторых операциях начала подвисать, причем иногда навсегда, а на несколько минут. Хотя бывает, что все ок. На разных компах проверял, везде по разному. Но суть в том, что программа должна работать на любом компьютере, а не только на моем. Если убрать XPMan, то все в порядке и летает. Не зависит XPMan или файл Имя_приложения.manifest.
Удалось примерно выяснить где происходят зависания, на границе между
 Potok1:=potok.Create(false); и самим входом в процедуру Procedure potok.Execute; Причем могут быть разные потоки. Если идти последовательно отладчиком F7, то не разу не зависает! Проверял раз 50! Никаких таймеров нету.
Подскажите, что делать? В какую сторону копать. Красоту XP терять категорически не хочется!

PS: было мною замечено, что при добавлении манифеста визуальные операции над компонентами выполняются на несколько секунд дольше, но в данной проблеме никаких сложных операций, тем более над кучей компонентов не выполняется!


 
Ketmar ©   (2006-09-03 01:12) [1]

ищем в сторону багов в своём коде.


 
Юрий Зотов ©   (2006-09-03 01:15) [2]

Подвисание наблюдается только на компах с гипертрейдингом, или нет?


 
Anatoly Podgoretsky ©   (2006-09-03 01:22) [3]

XP manifest это всего лишь заявление для виндоус, он не имеет ни одного байта кода, программа вообще не изменяется.


 
Ketmar ©   (2006-09-03 01:33) [4]

> [3] Anatoly Podgoretsky ©   (03.09.06 01:22)
зато кардинально меняется способ отрисовки контролов.


 
SerJaNT ©   (2006-09-03 02:03) [5]

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


это уже Windows отрисосывает а не программа


 
Furyz ©   (2006-09-03 10:34) [6]

может стоит попробовать сторонние компоненты ????
winda может тоже иметь глюки , свои проги пишу без XpMANIFEST"a


 
SerJaNT ©   (2006-09-03 10:47) [7]

Как и было сказано выше, XPManifest никаким образом не может влиять на скорость работы программы и вызывать оишбки. Проблема в чем-то другом, а чем надо смотреть код. Код в студию!


 
Ketmar ©   (2006-09-03 10:53) [8]

> [5] SerJaNT ©   (03.09.06 02:03)
хоть шогготы -- способ отрисовки меняется.


 
Ketmar ©   (2006-09-03 10:53) [9]

> [7] SerJaNT ©   (03.09.06 10:47)
может. у меня, например, "скинованые" контролы рисуются медленней. %-)


 
SerJaNT ©   (2006-09-03 10:59) [10]

> способ отрисовки меняется.


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


 
SerJaNT ©   (2006-09-03 11:01) [11]

> может. у меня, например, "скинованые" контролы рисуются
> медленней. %-)


Ну это другое. Тут уже дейтсвительно сама программа отрисовывает, а с XP Manifest программа "говорит" винде что отрисовывать надо в стиле XP (и то, только в том случае, если в винде выбран соответствующий стиль).


 
Ketmar ©   (2006-09-03 11:18) [12]

> [10] SerJaNT ©   (03.09.06 10:59)
но способ меняется. а кто именно отрисовывает -- совершенно не важно. важно, что работает другой код.

> [11] SerJaNT ©   (03.09.06 11:01)
я в состоянии понять различия между скинами, которые я делаю вручную и "темами" WinXP. также я в состоянии прочесть сабж. более того -- я знаю, зачем нужен хыр-манифест (удивительно, правда?). посему при минимальной внимательности можно понять, что слово "скинованые" я употребил по отношению к хыр-темам, а не самописным skin engines.


 
Gero ©   (2006-09-03 12:18) [13]

> [7] SerJaNT ©   (03.09.06 10:47)

Еще и как может. Ошибки могут содеражаться, например, в VCL, код которого может неадекватно работать с новыми контролами.


 
Furyz ©   (2006-09-03 15:21) [14]

я тут немного подумал:
Возможно конфликт возникает из-за НЕ стандартных контролов : URLlabel и т.д. какието там супер-мемо и супер-дбгриды , или например из-за движущийся картинки или анимированного гифа , или ты форму создаеш динамически


 
Anatoly Podgoretsky ©   (2006-09-03 15:25) [15]

Доказательством является, что рядом с уже скомпированой программой можно положить файл program.exe.manifest и программа сразу станет отображать виндоус компоненты по новому. Не требуется для этого бросать XPMan на форму.


 
SerJaNT ©   (2006-09-03 15:28) [16]

> Доказательством является, что рядом с уже скомпированой
> программой можно положить файл program.exe.manifest и программа
> сразу станет отображать виндоус компоненты по новому. Не
> требуется для этого бросать XPMan на форму.


При этом возможен ли такой вариант что программа станет тормозить, а то и вообще вылетать с ошибкой?


 
Anatoly Podgoretsky ©   (2006-09-03 15:41) [17]

В нашем мире все возможно.


 
tesseract ©   (2006-09-03 15:56) [18]

> [13] Gero ©   (03.09.06 12:18)


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


> [4] Ketmar ©   (03.09.06 01:33)


Точнее используеться 6-я версия Comctrl.dll вместо 4. До D7 например VCL корректно отображались очень редко (личный опыт).


> [15] Anatoly Podgoretsky ©   (03.09.06 15:25)


Запускаеться ComCtrl.dll новой версии. Например, 1с, при таком файле, нормально не отображает половину форм.


 
Anatoly Podgoretsky ©   (2006-09-03 15:59) [19]

Так это проблема не Виндоус, в 1С


 
tesseract ©   (2006-09-03 16:01) [20]

> [19] Anatoly Podgoretsky ©   (03.09.06 15:59)


А где я обвиняю Windows ????

Я просто говорю что системная библиотека отличаеться и манифесты куда угодно бросать не рекомендуеться.


 
Furyz ©   (2006-09-03 16:05) [21]

мда... ситуация плохая...

> Я просто говорю что системная библиотека отличаеться и манифесты
> куда угодно бросать не рекомендуеться.

Универсальноть??зачем??
убери манифесты и поставь скины и все...зачем себя мучать???


 
tesseract ©   (2006-09-03 16:07) [22]

> Универсальноть??зачем??
> убери манифесты и поставь скины и все...зачем себя мучать?
> ??


УниверсальностьЮ, затем, что-бы работало!!!!!!!!!!!!!!!!!!.

У меня сфера деятельности манифестами  и скинами вообще баловаться не позволяет :-)


 
kaif ©   (2006-09-03 16:09) [23]

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


 
tesseract ©   (2006-09-03 16:17) [24]

> [23] kaif ©   (03.09.06 16:09)


Верно, просто уже вьелась легендарная synchronize. Без него хоть с манифестами, хоть без, программа валиться будет.


 
Furyz ©   (2006-09-03 16:17) [25]

> У меня сфера деятельности манифестами  и скинами вообще
> баловаться не позволяет :-)

интерсно что это за сфера?


 
tesseract ©   (2006-09-03 16:19) [26]

> [25] Furyz ©   (03.09.06 16:17)


Автоматизация.


 
vrem   (2006-09-03 16:21) [27]

[15] Anatoly Podgoretsky ©   (03.09.06 15:25)
Создал рядом со своей программой такой файл, теперь программа не запускается, пишет -
"Том для открытого файла был изменён извне, поэтому работа с этим файлом не возможна."


 
tesseract ©   (2006-09-03 16:43) [28]

> [27] vrem   (03.09.06 16:21)


Файл надёюсь типа этого содержание имеет :


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
 version="1.0.0.0"
 processorArchitecture="X86"
 name="random interesting information"
 type="win32"
/>
<description>Sklad control program.</description>
<dependency>
 <dependentAssembly>
  <assemblyIdentity
   type="win32"
   name="Microsoft.Windows.Common-Controls"
   version="6.0.0.0"
   processorArchitecture="X86"
   publicKeyToken="6595b64144ccf1df"
   language="*"
  />
 </dependentAssembly>
</dependency>
</assembly>


 
vrem   (2006-09-03 18:07) [29]

[28] tesseract ©   (03.09.06 16:43)
Пустой я думал, раз ни строчки кода..)
С таким работает.


 
Furyz ©   (2006-09-03 20:24) [30]

а вообще реально ли заменить

> name="Microsoft.Windows.Common-Controls"

библиотеки на чтонибудь не виндовое?


 
Ketmar ©   (2006-09-03 20:26) [31]

> [30] Furyz ©   (03.09.06 20:24)
запросто. возьми библиотеки от SPARC и замени. работать, правда, не будет. но заменить -- реально.


 
Grom PE ©   (2006-09-03 21:14) [32]

Манифест не оптимизирован! %) Минимальная его версия:

<?xml version="1.0"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1"
manifestVersion="1.0"><dependency><dependentAssembly><assemblyIdentity
type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0"
processorArchitecture="*" publicKeyToken="6595b64144ccf1df"/>
</dependentAssembly></dependency></assembly>


 
Furyz ©   (2006-09-03 23:35) [33]

> запросто. возьми библиотеки от SPARC и замени. работать,
> правда, не будет. но заменить -- реально.

и зачем оно тогда надо ?
По-приколу? :)))


 
Gero ©   (2006-09-03 23:36) [34]

> [32] Grom PE ©   (03.09.06 21:14)

И в чем проявляется оптимизированность?


 
Ketmar ©   (2006-09-03 23:40) [35]

> [33] Furyz ©   (03.09.06 23:35)
кто ж его знает, зачем. вопрос-то не я задавал.


 
tesseract ©   (2006-09-04 08:18) [36]

> [31] Ketmar ©   (03.09.06 20:26)


Винды под SPARC никогда не было.

Есть Mono-среда вроде, но манифест манифест тут по барабану.


 
Grom PE ©   (2006-09-04 14:55) [37]

> Gero ©   (03.09.06 23:36) [34]

Как раз в размере самого манифеста.


 
Gero ©   (2006-09-04 15:19) [38]

> [37] Grom PE ©   (04.09.06 14:55)

Экономия места на винчестере?


 
Grom PE ©   (2006-09-04 15:26) [39]

> Gero ©   (04.09.06 15:19) [38]

Да нет, ну, смысл подобной оптимизации приближен к смыслу миниатюризации, то есть, для красоты =)


 
Gero ©   (2006-09-04 15:49) [40]

> [39] Grom PE ©   (04.09.06 15:26)

В [28] выглядит гораздо красивее.



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

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

Наверх





Память: 0.55 MB
Время: 0.042 c
15-1157015686
TGX
2006-08-31 13:14
2006.09.24
PHP скрипт виснет!


4-1148412487
Mr tray
2006-05-23 23:28
2006.09.24
из приложения добавить языковую раскладку


2-1156982136
AlDun
2006-08-31 03:55
2006.09.24
Access Violation


15-1157101702
TUser
2006-09-01 13:08
2006.09.24
Для школьников


1-1155199143
Kolan
2006-08-10 12:39
2006.09.24
Использование паттерна Comand.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский