Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Декларация WinAPI ф-ции при миграции из 5 - й в 7 - ю версию / 5 сообщений из 5, страница 1 из 1
03.10.2007, 12:19
    #34843328
JenyaD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Декларация WinAPI ф-ции при миграции из 5 - й в 7 - ю версию
Есть ф-ция

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
function long SendMessageLong( long hWindow, uint Msg, ulong wParam, Ref long Parts[] ) Library 'user32' alias for 'SendMessageA'

long alParts[ 2 ]

alParts[ 1 ]= 140 
alParts[ 2 ]= - 1 

//Делим Ststus Bar на части и устанавливаем их текст
//lbSetParts = SendMessageLong( ih_Wnd, SB_SETPARTS,  2 , alParts[] )
asText="GGGg"
lbSetParts =SendMessageText(ih_Wnd,SB_SETTEXT, 0  ,asText)
asText="gfhgfh"
lbSetParts =SendMessageText(ih_Wnd,SB_SETTEXT, 1  ,asText)


В неё передаётся указатель на массив long.

Однако при миграции с 5 на 7 возникает проблема :

Bad argument list for function: sendmessagelong

Как можно в более поздних версиях PowerBuilder передать указатель на массив ??

Проходит вот так :
Код: plaintext
1.
function long SendMessageLong( long hWindow, uint Msg, ulong wParam, Ref long Parts[ 2 ] ) Library 'user32' alias for 'SendMessageA'

Можна как нибудь передать ссылку на массив неопределённого размера в 7-й версии ??
...
Рейтинг: 0 / 0
03.10.2007, 12:40
    #34843424
Dmitry.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Декларация WinAPI ф-ции при миграции из 5 - й в 7 - ю версию
да. можно. обьявления в-ции и массива должны быть идентичны.

Код: plaintext
1.
2.
3.
4.
5.
6.
function long SendMessageLong( long hWindow, uint Msg, ulong wParam, Ref long Parts[] ) Library 'user32' alias for 'SendMessageA'

long alParts[]

alParts[ 1 ]= 140 
alParts[ 2 ]= - 1 
...
...
Рейтинг: 0 / 0
03.10.2007, 19:20
    #34844981
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Декларация WinAPI ф-ции при миграции из 5 - й в 7 - ю версию
Ваша проблема не в декларации функции, а в том как вы её зовёте.
В РВ5 "массив неопределённого размера" и "массив определённого размера", это ОДИНАКОВЫЕ типы дынных, в РВ7 - это РАЗНЫЕ типы дынных.
...
Рейтинг: 0 / 0
03.10.2007, 19:25
    #34844989
Dmitry.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Декларация WinAPI ф-ции при миграции из 5 - й в 7 - ю версию
ФилиппВаша проблема не в декларации функции...
еще типа скажи, что ты ответил что-то другое... ;)
...
Рейтинг: 0 / 0
03.10.2007, 20:07
    #34845031
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Декларация WinAPI ф-ции при миграции из 5 - й в 7 - ю версию
Dmitry. ФилиппВаша проблема не в декларации функции...
еще типа скажи, что ты ответил что-то другое... ;)
Ты отвечал на "как", я обьяснял почему ...
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Декларация WinAPI ф-ции при миграции из 5 - й в 7 - ю версию / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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