|
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145
|
|
Что возвращает ObjPtr, (VarPtr, и т.д.) ?07.10.2017, 22:49. Показов 6795. Ответов 54
Метки нет (Все метки)
Добрый день.
Не подскажет ли кто-нибудь: Как получить то, что возвращает нам наша дорогая и недокументированная : ObjPtr Но только из WinAPI ??? (или ещё откуда) ?
0
|
|
| 07.10.2017, 22:49 | |
|
Ответы с готовыми решениями:
54
Определить, что за параметр передается функции и что она возвращает Что означает запись в скобках и что возвращает return Что возвращает функция? |
|
Модератор
|
||||||
| 11.10.2017, 08:24 | ||||||
|
Если хочешь вызывать из DLL функции хоста то тут нужен любой колбек механизм (события, реализация колбек интерфейса, вызов по указателю).
0
|
||||||
|
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145
|
|||||||||
| 11.10.2017, 09:15 [ТС] | |||||||||
скрывают).
события ???
Public Sub Moj_Funj ( ) И вызови её из DLL-ки, НЕ ПРИБЕГАЯ к "волшебным словам" ObjPtr, Form1 и иже с ними...
0
|
|||||||||
|
Модератор
|
|||||||||||||||
| 11.10.2017, 09:26 | |||||||||||||||
0
|
|||||||||||||||
|
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145
|
|||||
| 11.10.2017, 09:55 [ТС] | |||||
|
Што за аналог такой ?
'Класс Option Explicit Public Sub Msg() Form1.Moj_Funj End Sub Что получили ???
0
|
|||||
|
Модератор
|
||||||
| 11.10.2017, 10:07 | ||||||
|
В общем ты нормально вопрос задать не можешь, поэтому я не могу тебе помочь. Играть в экстрасенса - не имею желания. Как будет нормально сформулированный вопрос, тогда будет (возможно) нормальный ответ. В общем случае ответ на вопрос в заголовке топика был дан в 10 посте.
1
|
||||||
|
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145
|
|||||||||||||
| 11.10.2017, 10:41 [ТС] | |||||||||||||
Debug.Print ObjPtr(z) Где нам получить это значение БЕЗ ObjPtr (ну нету в 1С такого понятия - ObjPtr)
СоздатьОбъект("Что_то.Что_то"); из нашей DLL-ки. И обзываться она будет далеко не "Form1" (хз как она там обзывается)... Добавлено через 17 секунд
Debug.Print ObjPtr(z) Где нам получить это значение БЕЗ ObjPtr (ну нету в 1С такого понятия - ObjPtr)
СоздатьОбъект("Что_то.Что_то"); из нашей DLL-ки. И обзываться она будет далеко не "Form1" (хз как она там обзывается)...
0
|
|||||||||||||
|
Модератор
|
||||||||||||||
| 11.10.2017, 10:56 | ||||||||||||||
0
|
||||||||||||||
|
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145
|
||||||||
| 11.10.2017, 11:32 [ТС] | ||||||||
Засунь этот код в эску - и он нифига там не сработает !!!
Но не вызывая этот оператор (ObjPtr), забудь про него, пусть он у нас сегодня будет "запрещён к применению". Выкинь его с головы, не существует его для нас (потому как нет его в "умной" 1С).
CallByName(Ёперная_Форма, "Moj_Funj", 1)
Что примерчик сработает "в обратную сторону", он вызовет Мою_Фуню в Эске?
Option Explicit Public Sub Msg() Form1.Moj_Funj End Sub А по чём же ты её вызывал, по "кличке" штоль ?
(Нету в Умной Эске ранней связи, Только через CreateObject).
0
|
||||||||
|
Модератор
|
||||||||||||
| 11.10.2017, 13:33 | ||||||||||||
|
Обработка событий от COM объекта основывается на интерфейсах IConnectionPointContainer и IConnectionPoint (точка соединения). Если интерфейс событий известен, то просто вызывается IConnectionPointContainer::FindConnectio nPoint с нужным IID, у полученного IConnectionPoint вызывается метод Advise в который передается ссылка не реализованный интерфейс событий. Если интерфейс заранее неизвестен то перечисляется список всех точек соединения через IEnumConnectionPoints и через IConnectionPoint::GetConnectionInterface каждой точки определяется IID интерфейса. Далее динамически имплементируется интерфейс который передается в Advise.
0
|
||||||||||||
|
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145
|
||||
| 11.10.2017, 14:50 [ТС] | ||||
CopyMemory(Куда_Пихать, Откуда_Пихать, 4) Откуда_Пихать, нам где это число взять (низзя Ptr-ом, и Form1 пользоваться сегодня).
Form1 - Это что такое ? Теперь откомпилируй, видишь - шиш на рыло, а когда ты эту ДЛЛ-ку подпихнёшь другой проге (не на 1С, а на твоём любимом VB), то там форма может обзываться Form2, а может и "хз как обзываться". Вот сделай такую ДЛЛ-ку, чтоб она к любому ехе прилипала (с помощью CreateObject), и могла вызвать Moj_Funj на форме, которая "хз как обзывается", конечно предварительно сообщи этой ДЛЛ-ке, как будет называться форма, на которой будет сидеть Moj_Funj. Или создай событие, которе будет вызываться в этой форме (можно и через всякие IConnectionPoint::GetConnectionInterface ), и покажи мне такой приёмчик. Не забывай, ТОЛЬКО CreateObject, и никак более. Плиз ... Добавлено через 10 минут Да можешь ещё проще поступить: Сделай просто DLL-ку, которая вызовет "Moj_Funj" на форме под именем (пущай пока Form1 обзывается).
0
|
||||
|
Модератор
|
|||||||||||||||
| 11.10.2017, 15:00 | |||||||||||||||
![]()
0
|
|||||||||||||||
|
oh my god
|
||
| 11.10.2017, 15:01 | ||
|
0
|
||
|
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145
|
|
| 11.10.2017, 15:31 [ТС] | |
|
The trick.
Сделай пожалуйста так: Есть форма, она обзывается Form1. На ней сидит фуня: Public Sub Moj_Funj ( ) MsgBox("Ку-Ку") End Sub Сделай пожалуйста DLL-ку (и обязятельно её откомпилируй - отдельно): Private Sub Class_Initialize ( ) ???.Moj_Funj 'Не знаю что ты сюда впишешь End Sub И выложи её, а я посмотрю Добавлено через 10 минут fever brain А как бы нам из АПИ получить бы это значение ?
0
|
|
|
Модератор
|
||
| 11.10.2017, 15:31 | ||
|
0
|
||
|
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145
|
|
| 11.10.2017, 15:37 [ТС] | |
|
Да можешь как хочешь поступить (не критично).
Можно и "подготовку" сделать.
0
|
|
|
|
|
| 11.10.2017, 15:49 | |
|
Gazzi, если я все же правильно наконец то понял, то тебе надо из твоей самописной DLL, которая подключена к 1C, вызвать некую процедуру, которая написана на встроенном бейсике 1С ?
Т.е. если перевести в плоскость нашего форума VBA, это если бы я подключил к Excel по средством VBA некую DLL, и из этой DLL пытался бы вызвать функцию, написанную в этом же скрипте VBA? Т.е попытаться из скомпилированной библиотеки вызвать интерпритируемую функцию. Так или нет?
0
|
|
|
-12 / 0 / 0
Регистрация: 28.09.2017
Сообщений: 145
|
||||
| 11.10.2017, 16:09 [ТС] | ||||
В том числе и 1С-ка. Добавлено через 8 минут Не могу открыть callback.rar. Это я торможу или как ... Первое ваше послание открылось на ура (vbdll которая называлась).
0
|
||||
|
|
|
| 11.10.2017, 16:17 | |
|
Тогда идите в 1C раздел форума и узнавайте как получить указатель на 1C функцию.
0
|
|
| 11.10.2017, 16:17 | |
|
Помогаю со студенческими работами здесь
40
Что возвращает функция? Что возвращает процедура?
Что возвращает операто NEW Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер.
Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
|
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта
Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
|
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром.
возможно получится прикрутить интерпретатор питон для кастомизации игровой логики.
что есть на текущий момент:. . .
|
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2.
Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
|
|
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
|
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2.
Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
|
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2.
Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом.
В. . .
|
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2.
Задача: отобразить спецтехнику, которая на данный момент находится в ремонте.
Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
|