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

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

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

Visual Basic 6.0 - Авторизация на прокси


Авторизация на прокси

Respect, All!

Может, кто-нибудь из многоуважаемых читателей конференции сталкивался с сабжем и решил эту проблему средствами VB? Если да, сообщите как...
Очень надо....

Заранее спасибо!

Let it be... All.
* Origin: If you wanna be, be a little bee...(c) (2:5033/39.7)

Re: Byte Array(Variant) and API (Part 2)

From: Alexander Asyabrik <belmis [@] mail.belpak.by>


Привет, A.Skrobov.

Вы, было дело, писали 13 октября 2003 г., 5:43:18:

AS> В этом случае третий DWORD варианта указывает не на SAFEARRAY, а

AS> как раз на первый байт массива.


Дык пробовал я. Hепохоже на правду: "...недопустимая операция".

AS> Как различать эти два случая, сам догадаешься, или подсказать?


Когда передается массив в варианте, то маска поля vt определяется как
vt_ui1 or vt_array

а если "чистый" байтовый массив то
vt_ui1 or vt_byref or vt_array

тоесть разница в установке бита vt_byref

И що цэ мэни дало?:) Где данные-то искать?

PS Я тут тупо справку по OLE просмотрел. Может мне вот это нужно?

The VariantChangeType function handles coercions between the
fundamental types (including numeric-to-string and string-to-numeric
coercions). A variant that has VT_BYREF set is coerced to a value by
fetching the referenced value.

Или я уж совсем не туды?


--
Alexander
* Origin: Talk.Mail.Ru (2:5020/400)

Re: Byte Array(Variant) and API (Part 2)

From: Alexander Asyabrik <belmis [@] mail.belpak.by>


Привет, Master.

Вы, было дело, писали 13 октября 2003 г., 7:22:23:

DK> Hе понимаю, ты ведь скриптовый компонент пишешь? А разве там есть Byte?

DK> Или, если это компонент для программ на чистом VB, то тогда почему не

DK> получается принять аргумент как () As Byte?


Я пишу, в этом смысле, _универсальную_ ActiveX DLL. И в соответствии с
идеями COM технологии, должна быть возможность использовать ее в любой
среде, эту технологию поддерживающую. Вот и пытаюсь соответствовать.

DK> В общем, пример кода надо бы.


А ты его просто запустить не сможешь полноценно. Он работает не с
win32api, а со специфическим апи одной утилиты. Hо это типа _lWrite

Если только для визуального изучения (все детали опущены):

' В модуле класса, естественно

Private Declare Function WHX_WritePtr Lib "whxapi.dll" Alias _
"WHX_Write" (ByVal lpBuffer As Long, ByVal Bytes As Long) As Long

Public Sub WriteBytes(bBuffer As Variant)
Dim res&, Lindex&, Uindex&, Size&
Dim VarArrPtr&
Size = (Uindex - Lindex) + 1
VarArrPtr = GetVariantArrayPtr(bBuffer)
res = WHX_WritePtr(VarArrPtr, Size)
If res = 0 Then GenerateError ERR_Write
End Sub

Проще некуда. И с массивом в варианте работает. Hо если в качестве
аргумента будет передан байтовый массив, то VarArrPtr равен нулю и ...
ласты, короче.


--
Alexander
* Origin: Talk.Mail.Ru (2:5020/400)

Вопрос

From: "Mihail Borisov" <skull [@] amur.ru>


Hi All,

Как создать новую директорию в той же папке где установлена программа?

* Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)

Re: Byte Array(Variant) and API (Part 2)

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 Mon, 13 Oct 2003

13:53:31 +0000 (UTC):

AS>> В этом случае третий DWORD варианта указывает не на SAFEARRAY, а

AS>> как раз на первый байт массива.

AA> Дык пробовал я. Hепохоже на правду: "...недопустимая операция".

А мне удавалось, как раз сегодня утром. Хорошо проверял?

AA> Когда передается массив в варианте, то маска поля vt определяется как

AA> vt_ui1 or vt_array

AA> а если "чистый" байтовый массив то

AA> vt_ui1 or vt_byref or vt_array

AA> тоесть разница в установке бита vt_byref

То же значение можно получить ф-ей VarType.

AA> И що цэ мэни дало?:) Где данные-то искать?

А ты просто посмотри на все поля варианта, авось в каком-то нужный адрес лежит.

AA> PS Я тут тупо справку по OLE просмотрел. Может мне вот это нужно?

AA> The VariantChangeType function handles coercions between the

AA> fundamental types (including numeric-to-string and string-to-numeric

AA> coercions). A variant that has VT_BYREF set is coerced to a value by

AA> fetching the referenced value.

AA> Или я уж совсем не туды?

Я ожидаю, что можно сделать и 'обычно', без АПИ. Где-то данные ведь должны лежать.


With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru
--
* Origin: Talk.Mail.Ru (2:5020/400)

Авторизация на прокси

||*()*|| Ах это вы, Pavel ? А я вас не узнал без санитара...

13 окт 03 года ты писал(а) к All:


PB> Может, кто-нибудь из многоуважаемых читателей конференции сталкивался

PB> с сабжем и решил эту проблему средствами VB? Если да, сообщите как...

PB> Очень надо....


Можешь воспользоваться готовыми библиотеками EasyMail.

(https://www.quiksoft.com)

Там есть такие опции для протокола IMAP4


I'll be back, Pavel !
http://www.caligari.zp.ua - реальная психологическая и психиатрическая помощь. Анонимно. Пока бесплатно.

* Origin: Hе мошенничайте! Государство не любит конкурентов (2:4641/500.99)

Firebird

||*()*|| Ах это вы, Ivan ? А я вас не узнал без санитара...

06 окт 03 года ты писал(а) к A:

[...skipped...]

AB>>> Кто-нибудь работал с сабжем из VB.

AS>> Я, я, я работал!


IK> А чего там стpашного? Вpоде же ODBC дpайвеpов на него -- как собак

IK> неpезанных.


Ах, разочаровался я и в Firebird. С ним тоже дистрибутив безобразно распухает.

I'll be back, Ivan !
http://www.caligari.zp.ua - реальная психологическая и психиатрическая помощь. Анонимно. Пока бесплатно.

* Origin: Hе мошенничайте! Государство не любит конкурентов (2:4641/500.99)

MsChart тормозит

||*()*|| Ах это вы, Oleg ? А я вас не узнал без санитара...

08 окт 03 года ты писал(а) к All:

OC> САБЖ! Сильно. Вывод на 3 панели 10-ти спектров по 1000 точек в каждом.

OC> Как ускорить? Или может есть что-то похожее, но не такое тормозное? Я

OC> раньше делал ручной вывод Pset-ом - таких тормозов не было, но в

OC> ручную долго и плохо масштабируется. :(


Hачиная, кажется, с третьей версии дельфей в комплекте с ней идет файлик cfx32.ocx. Лучшей библиотеки для построения графиков еще не видел. И из VB полностью работоспособно. Я в свое время за час разобрался что там к чему. Только вместе с нею в WINDOWS\SYSTEM должет еще лежать файл cfx32.lic.

I'll be back, Oleg !
http://www.caligari.zp.ua - реальная психологическая и психиатрическая помощь. Анонимно. Пока бесплатно.

* Origin: Hе мошенничайте! Государство не любит конкурентов (2:4641/500.99)

Re: Вопрос

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

13 Oct 03 19:11:09 в RU.VISUAL.BASIC Mihail Borisov -> All:


MB> Как создать новую директорию в той же папке где установлена программа?


MkDir
App.Path

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

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

Re: Byte Array(Variant) and API (Part 2)

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

13 Oct 03 17:53:32 в RU.VISUAL.BASIC Alexander Asyabrik -> мне:


AA> Public Sub WriteBytes(bBuffer As Variant)


В общем, я разобрался.
Череда указателей: OleVariant -> DWORD -> SAFEARRAY -> массив.


Sub a(v)
Dim ov As OLEVARIANT
Dim sa As SAFEARRAY
Dim l As Long
Dim b As Byte

CopyMemory ov, v, Len(ov)
CopyMemory l, ByVal ov.dwData, 4
CopyMemory sa, ByVal l, Len(sa)
CopyMemory b, ByVal sa.pvData, 1
MsgBox b
End Sub

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

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