Кстати, еще одна такая фича:" />
Современные решения

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

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

Обсуждение программирования на Visual Basic в конференции ru.visual.basic


Re: Фокусы

Hello, Dmitriy!
You wrote to "A. Skrobov" to A.
Skrobov on 20 Jul 04 12:21:25:

DK> Кстати, еще одна такая фича: галочка Control Panel -> Display ->
DK> Effects -> Hide keyboard navigation indicators until I use the Alt key
DK> не влияет на подчеркивания в Label при UseMnemonic=True.
Это как раз естественно: VB6 выпустили, когда этой функциональности ещё не
было, вот и не предусмотрели. А в сервиспаках, наверное, не добавили "для
совместимости с существующими программами".

DK> Зато тут же лежит одна на этот раз приятная фича: при нажатии Access
DK> Key, содержащегося в тексте Label'а, фокус автоматически передается на
DK> ближайший (в смысле TabStop'а) контрол. Hе думал, что лейблам такое
DK> свойственно.
А это старая и хорошо забытая фишка. Имхо это ещё в VB3 было.
Аппельман в DAXC о ней, кстати, пишет.
* Origin: He should not be here when your mother is out! (2:5080/1003.16)


Re: Пpокpутка в TextBox

Hello, Roman!
You wrote to "A. Skrobov" to A.
Skrobov on 21 Jul 04 01:04:40:

RY>>>>> А если загадки любишь - то загадку покажу. ;)
AS>>>> Давай ;-)
AS>>>> "В каждом исходнике должна быть загадка, а также подсказка и
AS>>>> отгадка" (почти анекдот)
RY>>> http://www.listsoft.ru/14897/
RY>>> Третья кнопка тулбара. ;)
AS>> Перетекают строки при наведении/потере фокуса. Это?
RY> Что делают???
Без фокуса надпись в две строчки, а с фокусом - в три. Или наоборот, точно
не помню ;-)
* Origin: Now the spot is all over DAD'S $10 SHOES! (2:5080/1003.16)


Unicode

Czes'c', All!

Как читать текстовый файл в Unicode?
scrrun.dll cannot be loaded. Что делать?

[END OF MESSAGE]
* Origin: Delete Software Limited, Moscow, Russia. (2:5020/1042.42)


Re: разница в записи

From: Alexander Asyabrik

Привет, Master.

Вы, было дело, писали 19 июля 2004 г., 9:31:

DK>> Const s1 As String = "ABC"
DK>> Const s2 = "DEF"

DK> Виноват, стормозил - неправильно прочел письмо Александра.

Это ладно, а вот ты мне лучше объясни, почему VarPtr для обоих
констант (а точнее для _любых_одинакового_типа) возвращает одинаковое
значение:
================
Const s As String = "Test1"
Const s1 As String = "Test2"
Const s2 As String = "Test3"
Const s3 As String = "Test4"
Const s4 As String = "Test5"
Const s5 As String = "Test6"
Const s6 As String = "Test7"

Private Sub Command1_Click()
Debug.Print VarPtr(s)
Debug.Print VarPtr(s1)
Debug.Print VarPtr(s2)
Debug.Print VarPtr(s3)
Debug.Print VarPtr(s4)
Debug.Print VarPtr(s5)
Debug.Print VarPtr(s6)
End Sub

=====================================

По клику - в Immediate Window столбец одинаковых цифр.

Они там, что, все внутри какого-то массива сидят? Или ... я ничего
не понимаю :(


--
С уважением, Alexander
10:07:25 PM



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


Re: работа с постоянными данными более 2гб-1

From: Alexander Asyabrik

Привет, Roman.

Вы, было дело, писали 20 июля 2004 г., 20:19:


RY> А вот ReadFile/WriteFile - не хотит работать. ;(

Такой ход: вместо прямого указания далекой (> 2ГБ) позиции в
SetFilePointer(Ex) делать несколько перемещений с параметром
dwMoveMethod = FILE_CURRENT.

А вообще в Microsoft Knowledge Base Article - 189981 лежит
аккуратненький такой классик для работы с большими файлами:

Random.cls

'It encapsulates basic functionality for opening, closing, reading,
writing, and seeking on files using low-level Windows APIs to get
around the 2GB file limit.
'It provides basic error trapping.



--
С уважением, Alexander
8:22:07 PM



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


Re: Unicode

Hello, Aleksej!
You wrote to to All on 20 Jul 04 22:10:12:

AR> Как читать текстовый файл в Unicode?
StrConv(To_Kuda_Prochital, vbFromUnicode)

AR> scrrun.dll cannot be loaded. Что делать?
Звать телепатов ;-)
* Origin: Whose shoes did he use? I looked and saw whose! (2:5080/1003.16)


Re: разница в записи

Hello, Alexander!
You wrote to "Dmitriy Kozyrev" Kozyrev [@] p148.f11.n5023.z2.fidonet.org>to Dmitriy Kozyrev on 20 Jul 04
22:28:41:

AA> Это ладно, а вот ты мне лучше объясни,
А можно я? ;-)

AA> почему VarPtr для обоих констант (а точнее для
AA> _любых_одинакового_типа) возвращает одинаковое значение:
При вызове VarPtr создаётся временная копия, после вызова уничтожается. Имхо
если между вызовами VarPtr какие-нибудь вещи делать, типа редимов, цифры
будут разные.

AA> Они там, что, все внутри какого-то массива сидят? Или ... я ничего
AA> не понимаю :(
Констант нет, они только кажутся ;-)

ЗЫ: наверняка какую-нибудь дурь щас пишу, здесь 3:13, и мозги уже не
варят...
* Origin: You can make a trick clock stack. (2:5080/1003.16)


test1

From: Dmitry Miloserdov

Привет, All,

Sorry, the test only due to impossibility to write anything into the
fido7 group :(

--
Best regards,
Dmitry Miloserdov




* Origin: www.softmajor.com (2:5020/400)


Re: разница в записи

From: Alexander Asyabrik

Привет, A Skrobov

(Странно: ты точку убрал, а она из откудова-то все равно
лезет и опять ты для The Bat! просто A и точка:)


Вы, было дело, писали 20 июля 2004 г., 22:14:


AA>> почему VarPtr для обоих констант (а точнее для
AA>> _любых_одинакового_типа) возвращает одинаковое значение:
AS> При вызове VarPtr создаётся временная копия, после вызова уничтожается. Имхо
AS> если между вызовами VarPtr какие-нибудь вещи делать, типа редимов, цифры
AS> будут разные.

Дык и с редимами попробовал - все едино остались одинаковыми эти
VarPtr. А вот если попытаться другого типа константу между однотипными
вклинить, то у нее будет другое значение VarPtr, а потом пойдет опять
тое самое :) Hе подходит под твою теорию. А вот действительно
смахивает на то, однотипные константы хранятся, объединенные в
каких-то массивах. Hу где там ваши CopyMemory и дебуггеры, посмотрите
че там внутрях, а то ведь и впрямь интересно...


--
С уважением, Alexander
7:24:23 AM



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


Re: разница в записи

From: "A. Skrobov"

Wed Jul 21 2004 08:38, Alexander Asyabrik wrote to A Skrobov:

AA> Привет, A Skrobov
AA> (Странно: ты точку убрал, а она из откудова-то все равно
AA> лезет и опять ты для The Bat! просто A и точка:)
Я не специально, это FL её в имени не пускает :-(

AA>>> почему VarPtr для обоих констант (а точнее для
AA>>> _любых_одинакового_типа) возвращает одинаковое значение:
AS>> При вызове VarPtr создаётся временная копия, после вызова уничтожается.
AS>> Имхо если между вызовами VarPtr какие-нибудь вещи делать, типа редимов,
AS>> цифры будут разные.
Вот: при вызове VarPtr создаётся временная копия, при следующем вызове
уничтожается. Видимо, временная копия всегда лежит по одному и тому же адресу,
зависящему только от типа. Подтверждение:
Option Explicit
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory"
(Destination As Any, Source As Any, ByVal Length As Long)
Const l1 As Long = 123
Const l2 As Long = 456

Private Sub Main()
Dim l As Long, addr As Long
addr = VarPtr(l1)
VarPtr (l2)
CopyMemory l, ByVal addr, 4
MsgBox l
End Sub

AA> Дык и с редимами попробовал - все едино остались одинаковыми эти
AA> VarPtr. А вот если попытаться другого типа константу между однотипными
AA> вклинить, то у нее будет другое значение VarPtr, а потом пойдет опять
AA> тое самое :) Hе подходит под твою теорию.
Ага, я вижу :-)

AA> А вот действительно смахивает на то, однотипные константы
AA> хранятся, объединенные в каких-то массивах.
Массив из одного элемента? Хм... ;-)

AA> Hу где там ваши CopyMemory и дебуггеры, посмотрите че там внутрях, а то
AA> ведь и впрямь интересно...
Скорее всего константа в памяти постоянно не хранится, а только подставляется
туда, куда нужно. Иначе можно было бы её изменить операцией
CopyMemory l1, 567, 4

ЗЫ: VarPtr - это пустышка из двух операций: mov eax, [esp + 4]; ret 4.
Её копать бессмысленно, а механизм вызова апей многие пытались копать, и
никому не удавалось ;-( Там такое наверчено - ужас...

* Origin: FidoNet Online (2:5020/175.2)



Назад Содержание Вперед