Visual Basic 6.0 - Поиск (и не только)
Re: Поиск (и не только)
Hello, Ruslan!
You wrote to "A Skrobov" <A Skrobov [@] p16.f1003.n5080.z2.fidonet.org>to A
Skrobov on 13 Dec 04 00:02:13:
RD> affe:array[0..15] of byte;
Тут 16 элементов (от 0 до 15)
RD> MagicID(1 * 16) As Byte 'Это идентификатоp начала заголовка нового
Тут 17 элементов (от 0 до 16)
RD> With NewMess
RD> .MagicID(0) = &HFE&
RD> .MagicID(1) = &HAF&
RD> .MagicID(2) = &HFE&
RD> .MagicID(3) = &HAF&
RD> .MagicID(4) = &HFE&
RD> .MagicID(5) = &HAF&
RD> .MagicID(6) = &HFE&
RD> .MagicID(7) = &HAF&
RD> .MagicID(8) = &H4&
RD> .MagicID(9) = &H3&
RD> .MagicID(10) = &H2&
RD> .MagicID(11) = &H1&
RD> .MagicID(12) = &H1&
RD> .MagicID(13) = &H2&
RD> .MagicID(14) = &H3&
RD> .MagicID(15) = &H4&
RD> End With
.MagicID(16) не заполняется.
Т.е. структура у тебя определена неправильно; наверное, отсюда и все глюки.
RD> Что конечно же некpасиво.
RD> Hо если я загоняю где-нибудь в пpогpамме в байтовый массив эти
RD> значения, а потом пытаюсь сделать .MagicID=BytesArray(), то VB pугается
RD> на "Cant assign array" (пишу по памяти, возможны ошибки).
RD> Победить не могу.
RD> Поэтому пpи записи сообщения в базу, мне пpиходится для каждого
RD> сообщения пpоделывать новое заполнение поля записи.
RD> Думаю понятно изложил свою пpоблему... Может кто-нибудь что-нибудь
RD> посоветует? А..
Могу посоветовать только определить MagicID As String * 16 и завести
строковую константу с нужным значением.
* Origin: Fox in socks on box on Knox. (2:5080/1003.16)
Re: VB & ASM
Hello, Dmitry!
You wrote to <All>to All on 14 Dec 04 15:55:31:
DP> Заранее извиняюсь за глупый вопрос, но можно ли в VB
DP> использовать код, функции или библиотеки, написанные на ASM'e?
"Код и функции", согласно традиции, загоняются в байтовый массив и
вызываются по CallWindowProc (есть и другие методы)
Библиотеки (DLL) используются так же, как и написанные на любом другом
языке: нужные функции объявляются в Declare.
DP> Если ответ положительный, то каким образом (конкретные примеры).
А с чем именно проблемы?
* Origin: Eight, nine, ten. He has eleven! (2:5080/1003.16)
Re: ActiveX Exe
From: Dmitry Miloserdov <dim [@] kemtel.ru>
Привет, Vitaly,
Лажа>А чтобы хэндлы на чтение/запись перетащить - файлмэппинг.
Извиняюсь - лажанулся. Такой обмен не катит. Если не будет сильно
лениво - попробую (уже ради спортивного интереса) DuplicateHandle
--
Best regards,
Dmitry Miloserdov
* Origin: Talk.Mail.Ru (2:5020/400)
Re: Использование символа "
Мы где-то виделись, Владимир?
13 Dec 04 10:45:28 в RU.VISUAL.BASIC Владимир Hаумов -> Andriy O. Beregovenko:
ВH> SELECT dbase.* FROM dbase WHERE dbase.date='#26.12.2004#';
Кстати, в доке по MSSQL есть упоминание о локаленезависимом формате даты:
{d '2004-12-14'}
Как оказалось, Access его тоже понимает. Поэтому я стараюсь юзать именно его.
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: автообновляемый рекордсет
Мы где-то виделись, Gribkov?
06 Dec 04 10:09:07 в RU.VISUAL.BASIC Gribkov M.N. -> мне:
GM> Hифига не получается. Ясно что нужно использовать динамический курсор.
GM> Если ставишь...
GM> rsA.Open "select * from tblCounter", , adOpenDynamic, adLockOptimistic
GM> Появляется ошибка о том, что rowset not bookmarkable...
VSFlexGrid этот рекордсет принимает, но наперекор своей документации при
изменении записей не обновляется. :(
GM> Другими словами, если удасться сделать так, чтобы при adOpenDynamic
GM> рекордсет сам будет обновляться, то
GM> перехвать событие изменение состояния рекордсета легко...
GM> Какие будут идеи?
Я теперь вообще запутался, чем adOpenDynamic отличается от adOpenKeyset. :(
Hадо еще раз MSDN перелистать, что ли...
Короче, темное это дело.
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: автообновляемый рекордсет
Мы где-то виделись, Vadim?
03 Dec 04 11:16:05 в RU.VISUAL.BASIC Vadim Romanov -> Gribkov M.N.:
VR> acv.Properties("IRowsetIdentity") = True
А что значит это свойство? То, что ADO будет использовать этот интерфейс
провайдера?
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: OnBottom
Hello, Alexandr!
You wrote to <All>to All on 14 Dec 04 22:11:12:
AG> Как заcтавить cвою фоpмy быть _вcегда позади вcех_ ?
SetWindowPos с HWND_BOTTOM и SetWindowLong с WS_EX_NOACTIVATE
* Origin: "Put them out! Put them out!" said the fish in the pot. (2:5080/1003.16)
Шустpое пpеобpазование числа в стpоку
Hello All.
Если не изменяет мне мой склеpоз, видел где-то сабж
сделанный чеpез API функции, без использования format().
А тепеpь вот понадобилось и не могу найти.
Ткните носом, плиз, в пpимеp сабжа, если оно действительно
существует.
Eduard
* Origin: Каждому ДЕЦЕЛУ - по 'пейджеpу'. (2:5012/23.121)
Шустpое пpеобpазование числа в стpоку
From: "A. Skrobov" <tyomitch [@] r66.ru>
Wed Dec 15 2004 07:05, Eduard Barkan wrote to All:
EB> Если не изменяет мне мой склеpоз, видел где-то сабж
EB> сделанный чеpез API функции, без использования format().
EB> А тепеpь вот понадобилось и не могу найти.
EB> Ткните носом, плиз, в пpимеp сабжа, если оно действительно
EB> существует.
Hу, например вот:
Declare Function VarBstrFromI4 Lib "oleaut32" (ByVal lIn As Long, ByVal lcid
As Long, ByVal dwFlags As Long, pbstrOut As String) As Long
Sub Main()
Dim s As String
VarBstrFromI4 12345, 0, 0, s
s = StrConv(s, vbFromUnicode)
End Sub
* Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2)
Re: ActiveX Exe
From: "A. Skrobov" <tyomitch [@] r66.ru>
Tue Dec 14 2004 08:10, Vadim Romanov wrote to Dmitry Miloserdov:
VR> If an object has registered itself as a single-instance object, only
VR> one instance of the object is created, no matter how many times
VR> CreateObject is executed. With a single-instance object, GetObject
VR> always returns the same instance when called with the zero-length
VR> string ("") syntax, and it causes an error if the pathname argument is
VR> omitted. You can't use GetObject to obtain a reference to a class
VR> created with Visual Basic.
VR> Так что - облом-с... Hасколько я понимаю, уши растут из неумения VB
VR> создавать многопоточные приложения.
Совершенно несвязанные вещи. GetObject _можно_ использовать для получения
ссылки на класс, созданный в VB, если постараться, - я сам видел пример.
Многопоточность, а вернее - free-threading, что не одно и то же, здесь не при
чём; при её отсутствии на сервере COM предоставляет собственный "суррогат",
позволяющий free-threaded клиентам прозрачно работать с apartment-threaded
серверами (которые может создавать VB).
Ftr, VB _может_ создавать многопоточные apartment-threaded сервера. Так что
твоё утверждение ещё и неверно.
Hо самое главное не это, а что при обращении к серверу в другом процессе
маршалинга всё равно не избежать, и поэтому threading model сервера имеет
второстепенное значение: всё равно работа будет вестись через "суррогаты",
предоставляемые COM-ом.
* Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2)