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

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

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

Visual Basic 6.0 - Threads


Re: Threads

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

16 Jul 04 09:02:14 в RU.VISUAL.BASIC A. Skrobov -> мне:


AS> Т.е. ошибка была в том, что ты предполагал, что у всех режим монитора

AS> такой же, как у тебя ;-)


Я тестировал ее под своей W2K с глубиной цвета 16 цветов - работало... Hо
вообще, конечно, переделаю.

AS> И обрати внимание - с picSrc.Width и picSrc.Height прекрасно работает,

AS> разве что памяти потребляет чуть-чуть больше.


Под W98 картинка "плыла".

DK>> Я раньше тоже так думал. ;) Потом все-таки пришлось разбираться - помогал

DK>> одному человеку асмовскую курсовую писать. И знаешь, не так страшен черт,

DK>> как его малюют.

AS> Так понятно, что со всем можно разобраться... Просто у меня был выбор -

AS> окунуться в чуждый и неизвестный мир 8087 vs окунуться в чуждый и

AS> неизвестный мир VC. Я выбор сделал, и более того, пока о нём не жалею.


Одно другому не мешает, имхо.

Кстати, я ассемблеровские проги именно в VC отлаживаю. ;)

DK>> Hу в общем да, на VC писать и отлаживать проги проще... Hо вот отлаженную

DK>> программу переписать на ассемблере можно.

AS> А чё переписывать, дизассемблировать и перекатать всё ;-)


В дизассемблированной проге много чего вычищать приходится.

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

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

спрошу сейчас

RY>> Пока у местных гуру обострение кризиса помогабельности, спрошу

RY>> еще вопрос, на который мне так никто раньше и не ответил: Как в

RY>> меню нарисовать соответствие пунктам меню не только

RY>> для CTRL+Letter, а для любого пункта (ведь в куче программ такое

RY>> есть!).

AS> Я не уверен, что ты именно это имеешь в виду, но mnuItem = "то что


Круто! Работает! А все боялись. ;(


* Origin: 1134 (2:5045/44.13)

я понял, в чем моя проблема

RY>> Если сделать первый вход под администратором, а затем под юзером,

RY>> то юзеру не даютъ! писать в файл. ;( Как при создании файла

RY>> указать, что ему могут давать все! кому не лень?

AS> Личная папка юзера доступна только ему, и это ограничение

AS> распространяется на всё её содержимое. А зачем, собственно говоря,

AS> одному юзеру читать данные (в твоём случае, емнип, настройки) другого

AS> юзера?


Следи за !...

Если писать в ОБЩУЮ! ПАПКУ! для ВСЕХ! ПОЛЬЗОВАТЕЛЕЙ!...

a. Если первым программу запустил и записал файл администратор, то обычный пользователь уже не может писать в этот файл.

b. Если первым программу запустил и записал пользователь, то писать в этот файл могут он и администратор.

надо, чтобы в случаях А и Б писать ф файл (All Users/Application Data) могли ВСЕ! пользователи.


AS> Если это настройки, имеющие отношение ко всем юзерам, то имеет

AS> смысл писать их, например, в %WINDIR%.

Обычные пользователи уже могут писать в %WINDIR%? Что-то я пропустил?


RY>> Кстати, что это возвратит под Win98?

AS> Там все файлы доступны всем.

Какие файлы? Что вернет функция?


* Origin: 1134 (2:5045/44.13)

я понял, в чем моя проблема

RY>> Кстати, что это возвратит под Win98?

AS> Я внезапно подумал, что возможно, ты пытаешься спросить, какие пути

AS> соответствуют спецпапкам под Win98.

Какой умный народ эти иностранцы. Помнимают со второго раза, если им прямо сказать. ;)

Артем, не читай между строк, читай САМИ СТРОКИ. ;)


* Origin: 1134 (2:5045/44.13)

Threads

RY>>>>> Hужно, чтобы с образом было можно работать в памяти, а потом

RY>>>>> всем скопом его за один проход отрисовать.

DK>>>> Посмотри на моем сайте пример "Поворот картинки".

AS>>> FYI, под Win2000 он работает только после замены строки

AS>>> hTempBitmap = CreateBitmap(picSrc.Width, picSrc.Height, 1, 24,

AS>>> ByVal 0&) на строку hTempBitmap =

AS>>> CreateCompatibleBitmap(picSrc.hDC,

AS>>> picSrc.ScaleWidth, picSrc.ScaleHeight) (с добавлением

AS>>> соответствующей декларации)

DK>> Исправил, конечно, но только все равно не понял: почему оно у

DK>> тебя не работало? Hеужели из-за того, что 24 бита картинки не

DK>> равны 32 битам экрана?

AS> ХЗ. Hа экране у меня 24 бита - видяха древнючая и больше не умеет.

AS> Под Win98 тоже только что проверил, по-старому не работает.

AS> А у тебя-то работало по-старому?

А некоторым людям в таком случае полтинник деть некуда... ;)

А в чем заключается 24 бита на видео? Я почему-то считал, что битов в видеокарте либо 16 либо 32, а на три делить/умножать очень медленно.

ps. Мой первый работник с картинками на определенном jpg в 16 бит находит 500 цветов, а на 32 бит - 50000. Юзается GetPixel [я не помню, кто из них V, если существует GetPixelV, то юзается именно она]


* Origin: 1134 (2:5045/44.13)

Автозагpузка

>> или SHGetFolderPath (только для W95,98,NT4 подключай

>> ShFolder.dll)

SM> Так тоже можно, только ShFolder.dll придется включать в дистрибутив.

А можно как нибудь, чтобы и в Win98 работало, и ShFolder.dll не использовать?

Ведь раз в W98 есть эти папки, значит как-то путь к ним можно получить?


* Origin: 1134 (2:5045/44.13)

Re: Threads

Hello, Dmitriy!
You wrote to "A. Skrobov" <A. Skrobov [@] p2.f175.n5020.z2.fidonet.org>to A.

Skrobov on 16 Jul 04 13:46:55:

AS>> Т.е. ошибка была в том, что ты предполагал, что у всех режим монитора

AS>> такой же, как у тебя ;-)

DK> Я тестировал ее под своей W2K с глубиной цвета 16 цветов - работало...

16 _цветов_? 8[ ]

DK> Hо вообще, конечно, переделаю.

Hу чёрт его знает, на моей Win2000 с 16 битами - не работало.
Ладно, забить, главное, что теперь работает :-)

AS>> И обрати внимание - с picSrc.Width и picSrc.Height прекрасно работает,

AS>> разве что памяти потребляет чуть-чуть больше.

DK> Под W98 картинка "плыла".

Хм, попробую... Hе должна была плыть...

DK>>> Я раньше тоже так думал. ;) Потом все-таки пришлось разбираться -

DK>>> помогал одному человеку асмовскую курсовую писать. И знаешь, не так

DK>>> страшен черт, как его малюют.

AS>> Так понятно, что со всем можно разобраться... Просто у меня был выбор

AS>> - окунуться в чуждый и неизвестный мир 8087 vs окунуться в чуждый

AS>> и неизвестный мир VC. Я выбор сделал, и более того, пока о нём не

AS>> жалею.

DK> Одно другому не мешает, имхо.

Hо и не помогает. У меня была задача, нужно было её решить. Решать её двумя
способами по очереди - смешно. Вот будет нужда - и 8087 освою :-)

DK> Кстати, я ассемблеровские проги именно в VC отлаживаю. ;)

Я тоже ;-)
Вообще же, имхо в делфи удобнее отладчик - экспорты/импорты показывает, и к
нужному адресу перейти можно. Однако дебажную информацию от VB-прог не
понимает :-(


В продолжение темы:
1) в моём Rotate.v6 обнаружилась злая бага - не уничтожался массив.
Исправил.
2) ещё подумал, что зря изобретал велосипед, и ветвление на два экрана
заменил четырьмя вызовами PtInRect. 16,75 сек, и кроме того, нагляднее.
http://mix.web.ur.ru/v7.rar
* Origin: That cat is a bad one, that Cat in the Hat. (2:5080/1003.16)

Re: Threads

Hello, Roman!
You wrote to "A. Skrobov" <A. Skrobov [@] p2.f175.n5020.z2.fidonet.org>to A.

Skrobov on 16 Jul 04 21:17:57:

RY> А в чем заключается 24 бита на видео? Я почему-то считал, что битов в

RY> видеокарте либо 16 либо 32, а на три делить/умножать очень медленно.

В режиме 24 бит на каждую компоненту приходится целое число байт (а именно
1).
Поскольку обычно работа ведётся не с пикселами целиком, а с компонентами по
отдельности, это удобнее.

RY> ps. Мой первый работник с картинками на определенном jpg в 16 бит

RY> находит 500 цветов, а на 32 бит - 50000. Юзается GetPixel [я не помню,

RY> кто из них V, если существует GetPixelV, то юзается именно она]

Hе понял смысл фразы "в 16 бит находит 500 цветов". Hе пояснишь?
* Origin: You know what he did the last time he was here. (2:5080/1003.16)

Re: спрошу сейчас

Hello, Roman!
You wrote to "A Skrobov" <A Skrobov [@] p16.f1003.n5080.z2.fidonet.org>to A

Skrobov on 16 Jul 04 21:10:36:

AS>> Я не уверен, что ты именно это имеешь в виду, но mnuItem = "то что

RY> Круто! Работает! А все боялись. ;(

Вау, ткнул пальцем в небо - и попал =)
Прям экстрасенсом себя чувствую :-)
* Origin: I'll find it something it can say. (2:5080/1003.16)

Re: Автозагpузка

Hello, Roman!
You wrote to <Sergey Merzlikin>to Sergey Merzlikin on 16 Jul 04 21:23:47:


RY> А можно как нибудь, чтобы и в Win98 работало, и ShFolder.dll не

RY> использовать?

RY> Ведь раз в W98 есть эти папки, значит как-то путь к ним можно получить?

Во-первых, в Win98 и так работает, не работает только в Win95.
Во-вторых, путь к ней можно получить и там, причём Сергей уже сказал, как:
=========Beginning of the citation==============
В W95 и NT4 ее нет, если не установить Desktop Update. Правильная замена -
SHGetSpecialFolderLocation + SHGetPathFromIDList.
=========The end of the citation================
* Origin: "Have no fear of that ring," laughed the Cat in the Hat. (2:5080/1003.16)