powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Массив в Dll'ке
6 сообщений из 6, страница 1 из 1
Массив в Dll'ке
    #34792695
BikArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть Dll'ка (Sort.dll) которая содержет процедуру(Написано все на Делфе):

Procedure pSort(var mas: array of string;n:integer);cdecl;

Мне надо подключить ее и использовать эту процедуру в проекте VB... делаю следующее:

Declare Sub pSort Lib "Sort.dll" (ByRef mas() As String, ByVal n As Integer)
Dim BA() As String = New String(2) {"C", "A", "B"}
Dim NA As Integer = 3

и вызываю:

pSort(BA, NA)

Все компилируется, но при вызове процедуры ошибка:
An unhandled exception of type 'System.NullReferenceException' occurred in Подкл. DLL.exe
Additional information: Object reference not set to an instance of an object.

Путем проб и ошибок выяснил, что ошибка возникает из-за массива(вернее из-за того что я изменению элементы массива, т.е. если его не трогать в dll'ке то все работает), как мне быть...
VB почти не знаю... Если можно поподробней объясните...
...
Рейтинг: 0 / 0
Массив в Dll'ке
    #34793170
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BikArt
Dim BA() As String = New String(2) {"C", "A", "B"}

вот так Dim BA() As String = New String(2) {"C", "A", "B"} в васике не пишут. Или вы про васик.net говорите ?
зы
есть еще тэг [src vba].
...
Рейтинг: 0 / 0
Массив в Dll'ке
    #34795659
BikArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чесно говоря я это в .net написал, но я думал разницы нет.... Во всяком случае декларируются dll одинаково (?) Но мне надо чтоб на обычном VB работало...
...
Рейтинг: 0 / 0
Массив в Dll'ке
    #34795670
BikArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть еще тэг [src vba].

Это к чему относится?
Прошу прошение за тупые вопросы но VB, как уже писал, почти незнаю....
...
Рейтинг: 0 / 0
Массив в Dll'ке
    #34795713
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тэг это для форматирования кода на форуме.
По сути — не уверен, что dll на .net можно вызывать из VB 6.0.
Но для проверки, вы все же перепишите код под 6.0
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Public Declare Sub pSort Lib "Sort.dll" (ByRef mas() As String, ByVal n As Integer)
Public sub Test
Dim BA( 2 ) As String 
ba( 0 )="C": ba( 1 )="A": BA( 3 )="B"
Dim NA As Integer: NA= 3 
call  pSort(BA, NA)
End Sub
И это вызывайте из модуля.
...
Рейтинг: 0 / 0
Массив в Dll'ке
    #34802134
BikArt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не... глухо...
ниче не получается... как только дело касается массива, то "программа выполнила недопустимую операцию и будет закрыта", а без массива все работает просто супер...
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Массив в Dll'ке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]