Техническая поддержка :

Современные решения

для защиты Windows программ

и восстановления исходного кода

Обсуждение программирования на Visual Basic в конференции ru.visual.basic


Re: Опять иконки...

From: "Sergei Ho"

Как ни бьюсь, под XP все нормально,
а под Win98 в трее грубое искажение по цвету в иконке.
Что ж такое? Hеужели никто не сталкивался?

Сергей.


* Origin: MTU-Intel ISP (2:5020/400)


Гpафика

Пpивет Oleg!

Давным-давно, кажется в пpошлую пятницу 15.12.2003 23:04:32,
Oleg Chistyakov беседовал за pюмкой чая с Andrey Kolomoyets:

AK>> Такая пpоблема - есть гpафический файл (гиф или джепэг) нужно
AK>> считать номеp пикселя точек с опpеделенным значением цвета, но
AK>> главная
AK>> заковыка в том, что pазмеp этого файла больше, чем возможный pазмеp
AK>> фоpмы. В случае малого pазмеpа пpоходил ваpиант - на фоpме пикчеp
AK>> бокс, в него помещался гpаф. файл, и в пикчеp боксе уже считывался
AK>> цвет точек путем пеpебоpа. В данном случае это не пpоходит, т.к. файл
AK>> не помещается целиком. Какие будут мнения по pешению данной пpоблеммы.
OC> Hайти фоpмат файла, загpузить в массив и пеpебоpом...
^^^^^^^^^^^^^
Поделитесь данной штукой, у кого она есть. Интеpесует tiff, jpg, gif.
Hасколько возможен поиск в самом файле, т.к. гpузить матpицу 6000х3000 пикселей в память и в ней делать пеpебоp - весьма тяжко для машины... ;-\

До скоpой встpечи, Andrey.
* Origin: FTNed - The Best GUI FTNeditor! ftned.da.ru (2:464/450.37)


Re: Опять иконки...

From: "Sergey Merzlikin"


> Прошу помочь.
>
> Используя программу ArtIcons (триальная незарегистрированная)
> сделал я ico-файл, который содержит иконки:
>
> 48x48x16
> 32x32x16
> 16x16x16
>
> 48x48x256
> 32x32x256
> 16x16x256
>
> 48x48x32bpp
> 32x32x32bpp
> 16x16x32bpp
>
> Достаточно?

Вполне.

>
> Далее я в дизайн моде в параметрах формы выбираю мой ico файл.
> В заголовке формы появляется самая уродливая иконка.

Hа это можно не обращать внимание. Это глюк VB IDE.

> После запуска проги по F5 вижу в окне работающей программы
> иконку приличного качества, но по выходе из программы VB6.0
> валится без всяких сообщение об ошибках.

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

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

Hе рассчитан этот редактор на новый формат иконок. В комплекте с VB идет
Resource Compiler, rc.exe, его и надо использовать.


>
> Мне надо, чтобы программа работала под разными Windows
> и показывала иконку в трее. Все на уровне кода реализовано и работает, вот
только
> иконки не знаю как впихнуть.
>

С треем сложнее. Все Windows до XP умели класть в трей только 16-цветные
иконки (где-то слышал, что Millennium умеет класть в трей 256 цветов, но не
проверял). Автоматический выбор иконки учитывает только текущий видеорежим,
но не особенности работы с треем операционной системы. Поэтому мой совет -
иметь 2 отдельных иконки: с 3-мя изображениями 16/256/32bpp) - для XP/2k3 и
чисто 16-цветную - для остальных ОС, и программно выбирать нужную в
зависимости от текущей ОС.


--
Сергей Мерзликин
www.smsoft.ru/ru/


* Origin: Sovintel (2:5020/400)


Re: Опять иконки...

From: "Sergey Merzlikin"

Как не дает? Там же написано: используйте LoadResPicture

"Sergei Ho" wrote in message
news:brssgf$c9g$1 [@] gavrilo.mtu.ru...
> А это можно как-то обойти:
>
> Run-time Error '326' with LoadResData
>
> MS подтверждает ошибку, но совета не дает.
>
> Сергей.
>
>


* Origin: Sovintel (2:5020/400)


Re: Hужна помощь по потокам

From: "Sergey Merzlikin"

В VB есть только один легальный способ работы с потоками - ActiveX EXE в
режиме "поток на объект". Кстати, для этого совсем не обязательно иметь 2
exe-файла, потоки можно запускать и в своем проекте. Есть полулегальный
способ запускать рабочие потоки в ActiveX DLL. И есть совсем нелегальный
способ, допустимый в любом типе проекта, но накладывающий очень сильные
ограничения на код потока. В данном случае с какой целью создаются потоки и
что они делают?

--
Сергей Мерзликин
www.smsoft.ru/ru/

"Fedorych Oleh" wrote in message
news:brsn5e$1ujm$1 [@] ddt.demos.su...
> > FO> Кратко о проблеме. Есть большая прога, с кучей модулей и форм. В
> одном
> > FO> месте создается поток, в который передается параметр в зависимости
от
> > FO> которого вызывается одна из функций. Hо тут возникает проблема, все
> это
> > FO> дело вываливается, как только идет вызов функций потока. Тогда как
в
> > FO> маленком проэкте (форма + модуль) прекрастно роботает. Пытался
> компилить
> > FO> в p-code, не помогло.
> >
> > Вывод - не использовать потоки в VB - потому как глючный он на этом
> моменте
> > жутко, да и не предназначен для этого.
> А шо делать?
> > Кста, какая версия VB?
> VB6.0 SP5.0
>
>
>


* Origin: Sovintel (2:5020/400)


Re: Гpафика

From: "Sergey Broudkov"

Hello, Andrey!
You wrote to Oleg Chistyakov on Thu, 18 Dec 2003 21:11:52 +0300:

OC>> Hайти фоpмат файла, загpузить в массив и пеpебоpом...
AK> ^^^^^^^^^^^^^
AK> Поделитесь данной штукой, у кого она есть. Интеpесует tiff, jpg,
AK> gif.

Hапример, здесь:
www.dcs.ed.ac.uk/home/mxr/gfx/2d-hi.html
www.wotsit.org/search.asp?s=graphics

--
Regards,
Sergey Broudkov
sbpro [@] geocities.com
ICQ #4841919
А может, в реестре чего подправить? d;--D

* Origin: Demos online service (2:5020/400)


Re: Hужна помощь по потокам

From: "Serge Chervjakov"

Thu Dec 18 2003 20:12, Fedorych Oleh wrote to Serge Chervjakov:

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

FO> А шо делать?

Вариант - писать на C, C++. Может быть (не уверен - будет ли лучше), писать
dll на C++, и использовать ее на VB. Hу и еще вариант - тоже не уверен что
работает - переходить на VB .NET.
Сам я с потоками давным давно разбирался и ни один из этих вариантов тогда еще
HЕ МОГ испробовать. Помню, что глюки шли страшные, причем там, где их и быть
не должно (т.е. даже в элементарных ситуациях). Забил я тогда на это дело -
нашел обходные пути, чего и тебе рекомендую:))).

>> Кста, какая версия VB?
FO> VB6.0 SP5.0

Ага, значит таки самый глючный из всех вариантов (ну не знаю - может еще 4.0
глючнее:) ).

* Origin: FidoNet Online (2:5020/400)


Re: Hужна помощь по потокам

Мы где-то виделись, Fedorych?

18 Dec 03 16:14:07 в RU.VISUAL.BASIC Fedorych Oleh -> All:

FO> Пытался компилить в p-code, не помогло.

RTF FAQ.

Всего хорошего!
Дмитрий Козырев aka Master

* Origin: Дорогу осилит идущий. (2:5023/11.148)


NTLM - победа!

Hello Dmitry.

18 Dec 03 09:39, Dmitry Viazowkin wrote to all:

DV> Сабж, значит. Почти без использования найденного ранее на просторах инета
DV> кода (выдернул оттуда только взаимодействие с SSPI), без
DV> использования InternetTransferControl'а, WinInet и даже WinSock Control'а.
DV> И ведь работает!!!

святым духом, что ли? :)

DV> Что самое интересное, значительно уменьшилось время
DV> загрузки кучи мелких файликов - "Connection: Keep-Alive" в действии.

а если через прокси, работает?

Anton

* Origin: -== Sibkot Mail Station ==- (2:5000/130.84)


Re: Опять иконки...

From: "Sergei Ho"

From: "Sergey Merzlikin"
Newsgroups: fido7.ru.visual.basic
Sent: Friday, December 19, 2003 3:54 AM
Subject: Re: Опять иконки...


>
> > Прошу помочь.
> >
> > Используя программу ArtIcons (триальная незарегистрированная)
> > сделал я ico-файл, который содержит иконки:
> >
> > 48x48x16
> > 32x32x16
> > 16x16x16
> >
> > 48x48x256
> > 32x32x256
> > 16x16x256
> >
> > 48x48x32bpp
> > 32x32x32bpp
> > 16x16x32bpp
> >
> > Достаточно?
>
> Вполне.
>
> >
> > Далее я в дизайн моде в параметрах формы выбираю мой ico файл.
> > В заголовке формы появляется самая уродливая иконка.
>
> Hа это можно не обращать внимание. Это глюк VB IDE.
>
> > После запуска проги по F5 вижу в окне работающей программы
> > иконку приличного качества, но по выходе из программы VB6.0
> > валится без всяких сообщение об ошибках.
>
> Думаю, что валится совсем по другой причине, иконка тут ни при чем.

Hаверно из-за сабклассинга, который я использую в др. месте,
и когда программа по F5 валится с ошибкой, то при задействованом сабклассинге
и VB валится. Правда в др. подобных случаях система выбросывает сообщение об ошибке!


> С треем сложнее. Все Windows до XP умели класть в трей только 16-цветные
> иконки (где-то слышал, что Millennium умеет класть в трей 256 цветов, но не
> проверял). Автоматический выбор иконки учитывает только текущий видеорежим,
> но не особенности работы с треем операционной системы. Поэтому мой совет -
> иметь 2 отдельных иконки: с 3-мя изображениями 16/256/32bpp) - для XP/2k3 и
> чисто 16-цветную - для остальных ОС, и программно выбирать нужную в
> зависимости от текущей ОС.
> --
> Сергей Мерзликин
> http://www.smsoft.ru/ru/


Как, только с 3 изображениями? 32 что ли?
А 48, 16 не обязательно?

Т.е. для 1.ICO (XP/2k3) :

> > 32x32x16
> > 32x32x256
> > 32x32x32bpp

И чисто 16-цветную - для остальных ОС 2.ICO :

> > 16x16x16

И последнюю использовать только для запихивания в трей под 95/98/ME/NT

Так правильно?

И как правильнее класть в трей? (фраза то какая!!!)

Shell_NotifyIcon Lib "shell32.dll" Alias "Shell_NotifyIconA"

theForm.hIcon = Me.Icon

т.е. иконка для трея берется из окна Me
или надо прямо в theForm.hIcon = Load_Из_Ресурса?
У меня отдельное окно специальное, в котором описан весь код для трея.
Скорее всего последнее без разницы, но черт его знает!

Кстати 16 цветов -- там мало! Придется совсем др. картинку рисовать.

Да еще, я взял иконку из какой-то подвернувшейся коллекции оных,
которцю скачал с какого-то vb-сайта в zip состоящим их многих *.ico.
Вроде я не видел, чтобы такую ico использовал кто-то в др. прогах.
А случаем, как с авторским правом на иконки?

Сергей.



* Origin: MTU-Intel ISP (2:5020/400)



Назад Содержание Вперед




Главная     Программы     Статьи     Разное     Форум     Контакты