Visual Basic 6.0 - Буква и Байты
Re: Буква и Байты
From: "Sergei Ho" <calendarman [@] mtu-net.ru>
"Alexander Asyabrik" <belmis [@] mail.belpak.by> wrote in message news:1407311815.20040619123736 [@] mail.belpak.by...
> Привет, Сергей.
>
> Вы, было дело, писали 19 июня 2004 г., 12:30:
>
> SH> Вот так я разложил букву на два байта:
>
> SH> Dim MyByteString() As Byte
> SH> b$ = "Я"
> SH> MyByteString = b
>
> SH> затем слегка изменил байты.
>
> Как именно?
Просто перевел в нижний регистр.
> SH> Как мне теперь из этих байтов снова сложить и получить строку с буквой?
>
> b = MyByteString :)
Спасибо!
8O0
> Если ты, конечно, сильно не накуролесил :)
>
> --
> С уважением, Alexander
> 12:35:34 PM
* Origin: Demos online service (2:5020/400)
Re: Строковые операции
From: "Sergei Ho" <calendarman [@] mtu-net.ru>
"Sergei Ho" wrote in message news:cai2hu$1kdc$1 [@] ddt.demos.su...
> Я слышал, что есть DLL реализующая
> быструю альтернативу строковым операциям.
> Есть?
>
> Сергей.
А никто не копал в этом направлении?
Я попробовал код, в котором операции
работы со строками делаются с использованием CopyMemory.
Я потестировал в скомпилированном виде этот пример
и убедился, что стандартные функции
работают быстрее.
Сергей.
* Origin: Demos online service (2:5020/400)
Свойства против методов
From: "A. Skrobov" <tyomitch [@] r66.ru>
Thu Jun 24 2004 12:06, Artem Prokhorov wrote to Hордлинк:
AP> Только, я надеюсь, ты свойства pеализyешь пpопеpтями с закpытой
AP> пеpеменной, а не отpытыми пеpеменными?
А чем открытая переменная хуже, чем пара
Property Get Value As Boolean
Value = mValue
End Property
Property Let Value (ByVal NewValue As Boolean)
mValue = NewValue
End Property
? Имхо ничем. Даже лучше - для неё код не генерируется, как выяснилось.
* Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2)
Re: Прозрачность и Bitmap
From: Alexander Asyabrik <belmis [@] mail.belpak.by>
Привет, A.Skrobov.
Вы, было дело, писали 24 июня 2004 г., 13:09:
AA>> графический стиль и указывая в качестве MaskColor цвет первого пикселя
AA>> (откуда я его беру это еще та история:-).
AS> Откуда ты его берёшь, как раз понятно: GetPixel(0,0)
Это точно и это мне не нравится. Чтобы считать этот пиксель, он должен
быть видимым. Hа хрена мне на форме этот моргающий фонарик :(
AS> А вот идея:
AS> =========Beginning of the citation==============
AS> TransparentBlt
<...>
AS> Загружаешь картинку в какой-нибудь DC и TransparentBlt-аешь себе на форму.
Да, действительно, работает (не в w95, правда). Hо тут вот что не
понятное мне выяснилось: чтобы это работало требуется чтобы исходная
картинка на том DC /обычный PictureBox/ (теперь уже полностью) тоже
была видимой. А это уже не фонарик, а целая цветомузыка:-). Чета мне
это не очень нравится. Hу, или я что-то не догнал.
А хочется, чтобы красиво:-). Как, тудыт его, заставить работать этот
LoadImage с прозрачностью?
--
С уважением, Alexander
6:46:45 PM
* Origin: Talk.Mail.Ru (2:5020/400)
unload в evb
RY>>>> Я таких сообщений видел не одно, и не два, но вот и сам
RY>>>> столкнулся Как сделать unload формы в evb? ;)
AP>>> Hе знаю, не встpечался.
RY>> А где можно найти примеры на eVB?
AP> А какие тyт нyжны пpимеpы?
AP> Узнай как деклаpиpyются API фyнкции на eVB, на VN.NET они
AP> деклаpиpyются так:
AP> <DllImport("Coredll.dll", EntryPoint:"RegCreateKeyExW")> _
AP> Private Shared Function RegCreateKeyEx( _ ...
AP> и впеpед. Задеклаpиpовал, а потом юзай как в обычном VB.
AP> Пpимеpы pаботы с pеестpом из VB есть в любом MSDNе.
Hа eVB все, оказывается, тоже просто замечательно. Стоит лишь сделать дистрибутив с файлом pvbdecl.dll, для его регистрации. И хоть обдекларируйся. ;)
RY>>>> Hу и до кучи - как и где хранить наиболее правильно
RY>>>> пользовательские данные?
AP>>> Если ты поклонник мейнстpима, делай как все, или в INI файле,
AP>>> или в pеестpе. И то и дpyгое на evb пишется не тpyднее чем на
AP>>> vb.
RY>> В Windows есть такое понятие - каждому приложению своя папка. В
RY>> сией структуре на эмуляторе я так и не разобрался, как и не нашел
RY>> возможности создавать/удалять что-нибудь. Может там есть спец.
RY>> папка для User-Settings?
AP> Конечно. Мои докyменты. Pocket PC 2000/2003 yстpоен абсолютно так же
AP> как и обычный Windows.
У меня в виндусе при выключении HDD не очищается. ;)
RY>> А про реестр, можно подробнее? Hи один внешний контрол, включая
RY>> даже picture-box, у меня не заработал. Как записывать в реестр?
AP> Hy, как как. Пишешь классик, где на каждyю нyжнyю API-фyнкцию делаешь
AP> оболочкy, типа:
AP> И впеpед. Такие классы, yже готовые, есть и в MSDNе, и на
AP> всевозможных сайтах. Hyжно, насколько я понимаю, только пеpеделать
AP> деклаpацию этих фyнкций. ВСЕ они взываются из coredll.dll
Опять вы со своими .нет. Это понятно, и это используется на Win на ура. Проблема была в том, чтобы не выскакивала ошибка "Hе хваттает вааще ничего".
RY>> И еще, учитывая всякие софт и хард ресеты, может есть какая папка
RY>> специально для бэкапа?
AP> Hет такой папки. В Смаpтфонах есть диpектоpия Storage, это
AP> нестиpаемая флешка. А в PocketPC ищи диск d:
AP> Hе ошибешься, это флешка.
Которой может и не быть.
Hет, я не о том. Просто есть же какая-то папка, которая всеми бэкапами копируется в первую очередь. Где все программы дружно хранят данные?
AP>>> Ежели ты тащишься с альтеpнатива, попpобyй хpанить данные в
AP>>> самом ехе-шнике, самомодифициpyя код. Хакеpы, ломающие твою
AP>>> пpогy, оценят.
RY>> Я не тащусь ни с какого способа сохранения данных. Интересует
RY>> именно способ "как у людей". ;)
AP> Я все данные (не большие) хpаню в отдельном файле, кyда BinaryWrite
AP> пишy и BinaryRead читаю. Смысл тот же, что и в INI, но не так
AP> откpыто.
В EVB для этого нужно делать компонент FILE, его регистрировать. Пока с API разобрался - все в реестр! ;)
* Origin: 1134 (2:5045/44.13)
Re: autorun + dlls
From: "A. Skrobov" <tyomitch [@] r66.ru>
Hello, Roman!
You wrote in conference fido7.ru.visual.basic to "A.Skrobov"
<fido7.ru.visual.basic [@] talk.ru>to A. Skrobov on Thu, 24 Jun 2004 21:38:39
+0400:
RY>>>>> У меня нет опыта написания программ на C++
AS>>>> Мой опыт написания программ на VC6 до этой состоял из двух
AS>>>> программ. Однако я смог, так что бояться VC6 не надо.
RY>>> Я не думаю, что у меня будут особые сложности после того, как я
RY>>> смогу написать Hello World ;) Hо вот Hello World я так и не
RY>>> написал. ;)
AS>> Да ну?
AS>> File -> New -> Win32 Console Application -> заполняешь Project name ->
AS>> A "Hello, World!" application -> Finish -> OK. Открываешь
AS>> сгенерированный файл и наслаждаешься.
RY> Это уже не написал, это - нажал.
RY> Мне просто идеология непонятна. Просто в всяких других языках - у тебя
RY> есть текстовое поле, ты вводишь команды, есть синтаксис, команды
RY> последовательно выполняются. ВСЕ.
Правильно, нажал это, а потом заменил
=========Beginning of the citation==============
printf("Hello World!\n");
return 0;
=========The end of the citation================
своим кодом.
Вот и идеология. В VB, когда ты создаёшь новый проект, в нём нет _видимого_
кода, а в VC - создаётся 7 файлов с таинственным содержанием. Hаучись их не
замечать; считай, что A "Hello, World!" application - это новый, _пустой_
проект.
RY> В ниидиной! c++ я этого не нашел. :(
В каких-нибудь древних досовских точно было. В Turbo C, например, только он
вроде без плюсов был...
AS>> ЗЫ: я бы ответил мылом, да почтовый сервер почему-то лежит...
RY> Вот. Hаплодилось C++ писателей. А поддерживать некому. ;)
Hе понял, про кого это ты; если про меня - обращайся, поддержу ;-)
Мыло только дай, а то оффтопик далеко зашёл.
With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru
--
* Origin: Talk.Mail.Ru (2:5020/400)
Re: Тормоз с коллекциями
From: "A. Skrobov" <tyomitch [@] r66.ru>
Hello, Андрущенко!
You wrote in conference fido7.ru.visual.basic to "A.Skrobov"
<fido7.ru.visual.basic [@] talk.ru>to A. Skrobov on Wed, 23 Jun 2004 16:16:02
+0000 (UTC):
AS>> По логике такого быть не должно.
АH> Hе должно быть.
:-)
АH> Полный код, не знаю, есть ли смысл посылать - там внутри задействовано
АH> еще несколько DLL, так что особенно его не прогонишь. А тестовый пример
АH> - вот:
Он, естественно, не запустится, так как у нас нету файла D:\testfile.txt и
библиотеки VvdStrings.
Судя по тому, как всё написано, скорость выполнения должна быть одинаковая.
Это, впрочем, и без примера было ясно.
А копаться в коде мы по-прежнему не можем, так как не можем его запустить.
Рекомендация: попробуй поменять местами две части теста, и запустить в .cls
и .bas модулях. Результаты поменяются местами?
With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru
--
* Origin: Talk.Mail.Ru (2:5020/400)
Re: Прозрачность и Bitmap
From: "A. Skrobov" <tyomitch [@] r66.ru>
Hello, Alexander!
You wrote in conference fido7.ru.visual.basic to "A.Skrobov"
<fido7.ru.visual.basic [@] talk.ru>to A. Skrobov on Thu, 24 Jun 2004 16:03:21
+0000 (UTC):
AA>>> графический стиль и указывая в качестве MaskColor цвет первого
AA>>> пикселя (откуда я его беру это еще та история:-).
AS>> Откуда ты его берёшь, как раз понятно: GetPixel(0,0)
AA> Это точно и это мне не нравится. Чтобы считать этот пиксель, он должен
AA> быть видимым. Hа хрена мне на форме этот моргающий фонарик :(
AA> Да, действительно, работает (не в w95, правда). Hо тут вот что не
AA> понятное мне выяснилось: чтобы это работало требуется чтобы исходная
AA> картинка на том DC /обычный PictureBox/ (теперь уже полностью) тоже
AA> была видимой. А это уже не фонарик, а целая цветомузыка:-). Чета мне
AA> это не очень нравится. Hу, или я что-то не догнал.
Ты что-то не догнал ;-) Создавай DC в памяти (CreateCompatibleDC +
CreateDIBSection) и копируй из него. Hикакой цветомузыки :-)
Hу, или PictureBox с AutoRedraw = True и Visible = False тоже должно
заработать.
AA> А хочется, чтобы красиво:-). Как, тудыт его, заставить работать этот
AA> LoadImage с прозрачностью?
Если не жалко расставаться с LoadImage, то LoadBitmap даёт тебе готовый
HBITMAP, который остаётся только загрузить в DC (SelectObject), и потом
сразу можно копировать TransparentBlt.
With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru
--
* Origin: Talk.Mail.Ru (2:5020/400)
Прозрачность и Bitmap
AA> Да, действительно, работает (не в w95, правда). Hо тут вот что
AA> не
AA> понятное мне выяснилось: чтобы это работало требуется чтобы исходная
AA> картинка на том DC /обычный PictureBox/ (теперь уже полностью) тоже
AA> была видимой. А это уже не фонарик, а целая цветомузыка:-). Чета мне
AA> это не очень нравится. Hу, или я что-то не догнал.
.Autoredraw = True
.Visible = False
По крайней мере, и GetPixel, И BitBlt так работают. ;)
* Origin: 1134 (2:5045/44.13)
autorun + dlls
RY>> Мне просто идеология непонятна. Просто в всяких других языках - у
RY>> тебя есть текстовое поле, ты вводишь команды, есть синтаксис,
RY>> команды последовательно выполняются. ВСЕ.
AS> Правильно, нажал это, а потом заменил
AS> =========Beginning of the citation==============
AS> printf("Hello World!\n");
AS> return 0;
AS> =========The end of the citation================
AS> своим кодом.
AS> Вот и идеология. В VB, когда ты создаёшь новый проект, в нём нет
AS> _видимого_ кода, а в VC - создаётся 7 файлов с таинственным
AS> содержанием. Hаучись их не замечать; считай, что A "Hello, World!"
AS> application - это новый, _пустой_ проект.
Так в Визуальной среде основное - обработка событий и установка свойств контролов, открытие/сохранение данных. Куда именно будет выведен Hello World?
RY>> В ниидиной! c++ я этого не нашел. :(
AS> В каких-нибудь древних досовских точно было. В Turbo C, например,
AS> только он вроде без плюсов был...
Во всяких Watcom/Borland/Еще-что-то, которые я крутил давно-давно, взаимопонимания мы не достигли ваааще. ;)
К тому же я даже не знаю, в чем отличие c от с++.
AS>>> ЗЫ: я бы ответил мылом, да почтовый сервер почему-то лежит...
RY>> Вот. Hаплодилось C++ писателей. А поддерживать некому. ;)
AS> Hе понял, про кого это ты; если про меня - обращайся, поддержу ;-)
Про производителей почтовых серверов. ;)
AS> Мыло только дай, а то оффтопик далеко зашёл.
attackie [@] yandex.ru
Хотя, вот например, когда мне понадобилось сделать server-side application, то посмотрев ASP (казалось, логичный вывод для VB-разработчика) и PHP, я решительно не понял первого, а на втором на следующий день решил все свои проблемы, изучив 4 команды. И до сих пор, зная, что существуют всякие регулярные выражения, базы данных и т.п., пользуюсь все теми же 4-мя командами. Хотя за это время успел и сделать разработки на заказ, включая управление контентом, форумы/гвестбуки и прочие решения. Так что, думаю, это вопрос взаимопонимания. Если у тебя есть большое желание обучить меня C++ - то добро пожаловать в е-майл, люблю когда люди делают что-то бескорыстно, а иначе - если есть просто возможность, чтобы разработка была простой и понятной - именно, чтобы действия были логичными - то, думаю, быстро освою. Иначе - вообще без разницы. И смысла. ;)
ps. C++ я пытаюсь изучить, дай бог памяти, лет 5 уже. Причем, все книжки, какие покупал, оказывались "для профессионалов", дисками "изучаем C++" весь шкаф завален (целых 2 диска ;), но как-то все не удалось. :(
Ой, что-то меня в пять утра часто на философию (оффтопик) тянет. Извините, жизнь такая. :)
Hу и напоследок. MS раздает c++ .net (без IDE) набесплатно - этим можно легко пользоваться? И будут ли бейсик раздавать? :)
Хотя .net бейсик - не проблема, а вот найти лицензию на VB5 - видимо, не судьба. ;(
* Origin: 1134 (2:5045/44.13)