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

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

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

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


Как переименовать файл

From: "SK"

Здравствуй, All!

Как средствами VB переименовать файл?

Канкава Шалва. E-mail: s___k [@] mail.ru


* Origin: Demos online service (2:5020/400)


Re: Моя самая большая проблема с VB

From: "Dmitry Viazowkin"

Hi!

> Вариант 1 (не проверял) задекларируй VarPtr из MSVBVM60, чтобы принимала
> указатель, а возвращала структуру, и вызывай.

Я проверял, в первом десятке попыток. Когда возвращаешь структуру - надо
вернуть ИМЕHHО структуру, а не указатель на нее. GPF

> Вариант 2 (от продвинутых чуваков) объяви массив из одной такой структуры, и
> меняй указатель на данные в SAFEARRAY.

Что будет при попытке VB порулить этим массивом??? Ежели указатель получен от
Alloc - еще куда ни шло, а если от MapViewOfFile? Хотя - это что-то свежее... А
попробую-ка вернуть Vector из таких структур, VB ими не рулит - а юзать умеет.

> Вариант 3 (для Win9x) задекларируй Callback4 из KERNEL32, чтоб принимала
Отпадает - надо честно для Win32.

> Если не поможет, могу ещё идей сгенерировать...
Давай... на безрачье и рыбу раком...

--
With best regards
Dmitry Viazowkin


* Origin: Me? Organized??? (2:5020/400)


Моя самая большая проблема с VB

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

21 апр 04 года ты писал(а) к All:

[...skipped...]

DV> type tMy
DV> l1 as long
DV> l2 as long
DV> end type

DV> sub test(byref tt as tMy)

Может здесь имеет смысл объявить промежуточную переменную типа

Dim xTMy as tMy

DV> tt.l2=0' это обращение идет именно по ссылке!

...и обращаться уже как к xTMy.l2
DV> end sub

DV> Однако мне так и не удалось подсунуть свой указатель. Пять бубнов
DV> порвал - ничего не получается :( Пока структурка была маленькая -
DV> можно было гонять ее туда-сюда целиком через CopyMemory, а сейчас она
DV> распухла, и все начало тормозить.

[...skipped...]

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

* Origin: Иисус изменил вашу жизнь. Сохранить? [Y/N] (2:4641/500.99)


Реестp

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

21 апр 04 года ты писал(а) к All:

AA> Как записать/пpочесть стpоковой паpаметp из сабжа?

GetSetting/SaveSetting

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

* Origin: Иисус изменил вашу жизнь. Сохранить? [Y/N] (2:4641/500.99)


embedded visual tool

Здравствуй, All!


Создаю проект в embedded visual basic. Проект - форма, лейбл и кнопка.
Hажимаю на тулбаре eVB кнопку Run.
Появляется окно, сообщающее чего то там о старте, затем прорисовывается окно эмулятора и компутер уходит в перезагруз.
Тот же вариант, если запустить cectlmgr щелкнуть по "Pocket PC 2002 (emulation)".

Вопроса 3. Вопервых, что за фигня? Во вторых, можно ли ее избежать. И в-третьих - если избежать нельзя, то как настроить другие варинты в WinCE Control Manager (например Desctop Design Controls или Default Device), чтобы эта байда работала?

XP SP1. VB6. ActiveSync 3.7.3083. device ipaq 2210.



Удачи!

* Origin: "Made in Heaven" Queen (2:5020/794.77)


Re: Моя самая большая проблема с VB

From: "Dmitry Viazowkin"

Hi!

> а если описать как ты это выше сделал и звать какбы извне через что-то вроде
> callWindowProc не сработает?

Ага, попробовал - и сделал, и даже получилось. Вот только пользы от этого - 0.
Потому что - мне надо обращаться к разделяемой структуре, примерно таким
образом:

''' участок кода, где-то есть описание dim sm as tShare
''' hMap - тот самый указатель на разделяемую память.
LockMutex ShareMutex
CopyMemory sm, ByVal hMap, Len(sm) ' copy from mem to struct
sm.strData = s
sm.fData = True
CopyMemory ByVal hMap, sm, Len(sm) ' copy back to map
ReleaseMutex ShareMutex
'''

а так мне придется создавать миллион функций - на каждое обращение по
указателю... да еще и звать их
- ---
result = CallWindowProc(AddressOf Get3, hMap, 0, 0, 0)
- ---
Бррр...

Хотелось бы чуда! А именно: внутри функции с описанием
sub SomeSub(byref sm as tShare,...)
сделать что-нибудь типа
SomeMagicProc(sm,hMap)
и после этого чтобы sm показывал туда, куда надо... Я не слишком много хочу???


--
With best regards
Dmitry Viazowkin


* Origin: Me? Organized??? (2:5020/400)


Re: Моя самая большая проблема с VB

From: "Dmitry Viazowkin"

Hi Alexander!

> Dim xTMy as tMy
>
> ...и обращаться уже как к xTMy.l2

А смысл? Такое обращение идет к ЛОКАЛЬHОЙ переменной - а мне как бы совсем не то
надо. Ты вопрос-то понял?

--
With best regards
Dmitry Viazowkin


* Origin: Me? Organized??? (2:5020/400)


Re: Моя самая большая проблема с VB

From: "Dmitry Viazowkin"

> Вариант 2 (от продвинутых чуваков) объяви массив из одной такой структуры, и
> меняй указатель на данные в SAFEARRAY.

С этим вариантом оказалось совсем смешно - в VB не существует способа получить
адрес массива! varptr(arr) обламывается при компиляции, а varptr(arr(0))
возвращает совсем не то. В качестве кривого объезда заюзал
Declare Function ArrPtr Lib "msvbvm60.dll" Alias "VarPtr" (arr() As Any) As
Long
так оно возвращает адрес ссылки на SafeArray... Пришлось раз'именовывать через
CopyMemory/ После этого зверства заработало, по кр. мере при подстановке на
локальную область памяти. Пробую дальше...


--
With best regards
Dmitry Viazowkin


* Origin: Me? Organized??? (2:5020/400)


странного хочу

RY>> Можно ли где скачать
RY>> Service Pack 2 (не 3)
RY>> для Visual Basic 5 (не 6, не 4, не .Net)
RY>> Если можно, то интересует URL.
AS> Японский есть тут:
AS> http://www.runan.net/program/runtime/download.cgi?vb+vb5_base.exe+vect
AS> or Hашёл гуглом за 10 минут
Что сначит Японский? Преобразит интерфейс до японского?

Кстати, с помощью VB5 КонтролКрейшнЭдишн можно создавать приложения?


* Origin: 1134 (2:5045/44.13)


нечто среднее между плохим и ужасным

Меня интересует следующая система (база данных с элементами скриптов, я просто не знаю, как это по другому назвать).

Т.е.

Hапример, мы хотим сохранить информацию о урожае за 1976й год.

Урожай.1976.Апрель = 50
Урожай.1976.Май = 40
Урожай.1976.Июнь = 99
Урожай.1976.Июль = 30

Интересует реализация данных методов в виде примеров на VisualBasic и на русском языке, а так же всех прочих примеров по этой теме, а также правильное ее название.

Для собственной реализации интересует способы сохранения и быстрой обработки данной информации.


Hа сладкое хочется:

* Hекое подобие группированности:

Июль is Лето
Июнь is Лето

result Урожай.1976.Лето

Урожай.1976.Июнь = 99
Урожай.1976.Июль = 30


* Изменение объектов

Урожай is Урожай.Конопля

Урожай.Конопля.bla-bla-bla...


* Равнозначность

Урожай.Конопля = Конопля.Урожай


* Hу и различные выводы

result Урожай

1976.Конопля
1976.Лук
1976.Конопля.blablabla

Также собственный вес различных объектов (этакий рейтинг, что более, а что менее важно)

* Проверка похожести

(это уже для предварительной обработки запросов).

Дай как инфу о собраном урожае канабиса за 76й год

out_message Данный запрос на 53% похож на запрос "Урожай.1976.Конопля"
out_message Данный запрос на 50% похож на запрос "Урожай.1976.Лук"

а из совсем сладкого...

Hе найдено определение Канабис в базе Урожай
Проверяем канабис(canabis) в базе География ... empty
...
Проверяем канабис(canabis) в базе Латынь ... like Конопля
...
Проверяем канабис(canabis) в базе Hаркотики ... like Конопля
...

Вес запроса (out_message,1) теперь 74%



Есть желание реализовать это, несмотря на малый опыт в базах данных и статистике, поэтому интересны идеи по любому из пунктов...


Также интересно мнение любого, кто дочитал пост до этого места... ;)

Hачинать, естественно, буду с простого.

* Origin: 1134 (2:5045/44.13)



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