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

для защиты Windows приложений

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

Visual Basic 6.0 - Опять иконки...


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

From: "Sergei Ho" <calendarman [@] mtu-net.ru>


Как ни бьюсь, под 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! http://ftned.da.ru (2:464/450.37)

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

From: "Sergey Merzlikin" <sm [@] smsoft.ru>



> Прошу помочь.

>

> Используя программу 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-цветную - для остальных ОС, и программно выбирать нужную в
зависимости от текущей ОС.


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


* Origin: Sovintel (2:5020/400)

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

From: "Sergey Merzlikin" <sm [@] smsoft.ru>


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

"Sergei Ho" <calendarman [@] mtu-net.ru> 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" <sm [@] smsoft.ru>


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

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

"Fedorych Oleh" <fedor [@] ifpan.edu.pl> 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" <broudkov [@] PointLtd.com>


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апример, здесь:
http://www.dcs.ed.ac.uk/home/mxr/gfx/2d-hi.html
http://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" <serg [@] enseza.elcom.ru>


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 - http://www.fido-online.com (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" <calendarman [@] mtu-net.ru>


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)