Hard Call в VB6

топ 100 блогов fixin09.09.2015

На VB6 у меня написана внешняя компонента для биометрии Anviz. Хотел сделать, чтобы можно было вызывать метод самой компоненты по имени.


Для этого сделал функцию Hard Call, но не нашел, как вызвать метод VB6 по имени. Поэтому тупо обошелся Select Case (под катом).


Какое-то время бился, чтобы найти способ разыменования, но не нашел.


Правда, набор функций API Anviz ограничен, так что хоть и не универсально получилось, но работает.


Лучшее - враг хорошего.


Hard Call в VB6



Function localHardCall(ParamVal() As Variant)
    'MsgBox "ParamVal1: " & ParamVal(1)
    Select Case ParamVal(1)
    Case "CKT_SetDeviceAdminPassword"
        localHardCall = CKT_SetDeviceAdminPassword(ParamVal(0), ParamVal(2))
    Case "CKT_SetSpeakerVolume"
        localHardCall = CKT_SetSpeakerVolume(ParamVal(0), ParamVal(2))
    Case "CKT_SetRealtimeMode"
        localHardCall = CKT_SetRealtimeMode(ParamVal(0), ParamVal(2))
    Case "CKT_SetRingAllow"
        localHardCall = CKT_SetRingAllow(ParamVal(0), ParamVal(2))
    Case "CKT_SetDoor"
        localHardCall = CKT_SetDoor(ParamVal(0), ParamVal(2))
    Case "CKT_SetWG"
        localHardCall = CKT_SetWG(ParamVal(0), ParamVal(2))
    Case "CKT_SetRepeatKQ"
        localHardCall = CKT_SetRepeatKQ(ParamVal(0), ParamVal(2))
    Case "CKT_SetAutoUpdate"
        localHardCall = CKT_SetAutoUpdate(ParamVal(0), ParamVal(2))
    Case "CKT_SetWorkCode"
        localHardCall = CKT_SetWorkCode(ParamVal(0), ParamVal(2))
    Case "CKT_SetSleepTime"
        localHardCall = CKT_SetSleepTime(ParamVal(0), ParamVal(2))
    Case "CKT_SetDeviceSno"
        localHardCall = CKT_ModifyDeviceSno(ParamVal(0), ParamVal(2))
    Case "CKT_SetDateTimeFormat"
        localHardCall = CKT_SetDateTimeFormat(ParamVal(0), Int(ParamVal(2) / 10), ParamVal(2) Mod 10)

Оставить комментарий

Архив записей в блогах:
Я, человек, измученный гиперплазмой, представляю вам произведение небезызвестного в наших краях автора Р., присланное по частям нашим читателем  itazza Наша отчизна в сердце солдата поет, Яркий луч света нам озаряет мгновенья! Крылья, ...
Давно мечтал невозбранно носить колготы с дырой на жопе. Теперь, говорят, можно! ...
Я поняла одну интересную вещь - я дорвалась до кухни. Возможно, со временем остыну, но пока с удовольствием придумываю себе меню)) Кстати, есть у кого-нибудь любимое повседневное блюдо? ...
Такие, на первый взгляд парадоксальные выводы, напрашиваются по результатам опроса общественного мнения, проведенного институтом Forsa по заказу Wiese Consult GmbH в Германии. Более 75% жителей страны считают, что именно президент США сегодня ведет политику, угрожающую германской ...
Идти полчаса одному по заснеженной дороге три километра. Вспомнил игру, которую хорошо знаю с детства. Я попал на Землю с Розовой планеты. Способности снижены в тысячи раз. Базы данных знаний обнулены. Известна только миссия игры — пройти ...