On-line: гостей 1. Всего: 1 [подробнее..]
АвторСообщение



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 08.01.07 08:18. Заголовок: Чтение строк из ресурса


Понадобилось как-то прочитать строку из ресурса.
В примерах не нашел.
Может кому пригодится.

*test.rc

STRINGTABLE
{
1 , "Строка 1"
2 , "Строка 2"
}


**test.prg
#include "minigui.ch"
FUNCTION Main()
MsgInfo(GetStringRes(1)+Chr(13)+Chr(10)+GetStringRes(2))
RETURN NIL


#pragma BEGINDUMP

#include <windows.h>
#include "hbapi.h"

HB_FUNC( GETSTRINGRES)
{
char * szBuffer=" ";

LoadString( GetModuleHandle(NULL), hb_parnl( 1 ),szBuffer,256) ;

hb_retc(szBuffer);
}

#pragma ENDDUMP



Спасибо: 0 
Цитата Ответить
Ответов - 26 , стр: 1 2 All [только новые]


постоянный участник




Пост N: 203
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 08.01.07 15:44. Заголовок: Re:


SerLog пишет:

 цитата:
В примерах не нашел.
Может кому пригодится.



Конечно пригодиться. Спасибо.

И еще вопрос в эту же тему, а как вытащить bmp из ресурсов ?
Только желательно без MINIGUI для терминала GTWVT GTWVW.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 87
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 08.01.07 19:10. Заголовок: Re:


SerLog пишет:

 цитата:
В примерах не нашел.



Плохо смотрел :)

Advanced\FrameWork\demo.prg

Function GetResStr( nID )
*-------------------------------------------------------------

Return HB_LoadString( nID )


#pragma BEGINDUMP

#include <windows.h>
#include "hbapi.h"
#include "hbapiitm.h"

HB_FUNC( HB_LOADSTRING )
{
LPBYTE cBuffer;
cBuffer = GlobalAlloc(GPTR, 255); //!!!
LoadString(GetModuleHandle(NULL), hb_parni(1), (LPSTR) cBuffer, 254);
hb_retc(cBuffer);
GlobalFree(cBuffer); //!!!
}
#pragma ENDВDUMP


Andrey пишет:

 цитата:
И еще вопрос в эту же тему, а как вытащить bmp из ресурсов ?
Только желательно без MINIGUI для терминала GTWVT GTWVW.




MINIGUI ( ) использует для этих целей WinAPI

LoadImage - The LoadImage function loads an icon, cursor, or bitmap

Например IMAGE пытается сначала загрузить bmp сначала из дискового файла

hpic2 = (HBITMAP)LoadImage(0,filename,IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);

потом из ресурса

if (hpic2==NULL)
hpic2 = (HBITMAP)LoadImage(GetModuleHandle(NULL),filename,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION);

и т.д.

Рекомендую все таки скачать MINIGUI, независимо то того используете ее или нет.
Открытый код - всегда можна что-то подсмотреть.




Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 88
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 08.01.07 19:54. Заголовок: Re:


Что же касается GTWVT, то в ней реализованы такие функции как
hb_wvt_gtLoadPicture, hb_wvt_gtLoadPictureFromResource, hb_wvt_gtRenderPicture, hb_wvt_gtDestroyPicture - может это оно?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 205
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 08.01.07 21:41. Заголовок: Re:


Петр, нет описания к ним, я уже их по разному вызывал, не работают.
Я понимаю, что "кривые руки" и все такое, но нет примеров хотя бы по ним, а без этого не разобраться.

Я хочу файл из ресурса вывести на экран формы.
Разобрался с примерами и нашел только в CONTRIB\GTWVW\SAMPLES\PROG2.PRG строка 68
AddMiscObjects( 0, {|nWindow| WVW_DrawImage( nWindow, 1,0,nmaxrow,nmaxcol, 'demo1.bmp' ) } )

а он только выводит из файла, а я хочу из ресурса.
Если знаешь, то подскажи пожалуйста.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 213
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 10.01.07 21:02. Заголовок: Re:


Петр пишет:

 цитата:
Что же касается GTWVT, то в ней реализованы такие функции как
hb_wvt_gtLoadPicture, hb_wvt_gtLoadPictureFromResource, hb_wvt_gtRenderPicture, hb_wvt_gtDestroyPicture - может это оно?



У кого есть примеры использования этих функций ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 94
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 10.01.07 23:17. Заголовок: Re:


Andrey пишет:

 цитата:
а он только выводит из файла, а я хочу из ресурса.



* Win_LoadImage( ncImage, nSource ) -> hImage
* nSource == 0 ResourceIdByNumber
* nSource == 0 ResourceIdByName
* nSource == 0 ImageFromDiskFile


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 215
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 11.01.07 08:16. Заголовок: Re:


Да не пашет это, я пробовал.
Не могу потом вывести картинку на форму.
AddMiscObjects( 0, {|nWindow| WVW_DrawImage( nWindow, 1,0,nmaxrow,nmaxcol, 'demo1.bmp' ) } )
Как заместо demo1.bmp засунуть вывод из ресурса ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 95
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 11.01.07 09:57. Заголовок: Re:


Andrey

Ты хоть свой вопрос помнишь?

Andrey пишет:

 цитата:
И еще вопрос в эту же тему, а как вытащить bmp из ресурсов ?



вытащить bmp из ресурсов != вывести картинку на форму



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 218
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 12.01.07 13:31. Заголовок: Re:


Каюсь, за такую постановку вопроса. Ну извините меня. А что делать с этим BMP или JPG, ведь потом выводить надо.
Тогда перефразирую вопрос.
Как прочитать BMP или JPG или ICO из файлов ресурса и вывести на форму для GTWVW-терминала ?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3048
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 18.04.13 10:19. Заголовок: Andrey Решил вопрос..


Andrey
Решил вопрос ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2803
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 18.04.13 17:58. Заголовок: Dima пишет: Решил в..


Dima пишет:

 цитата:
Решил вопрос ?


Так никто не помог, наверно никто не ставил перед собой такую задачу....

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 210
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.04.13 12:13. Заголовок: Andrey пишет:Так ник..


Andrey пишет:
 цитата:
Так никто не помог, наверно никто не ставил перед собой такую задачу....


Если из файла вывести на форму для GTWVW-терминала получается, то из ресурсов достаньте и положите на файл. Потом удалите файл.
Как достать из ресурса и положить в файл было в теме : Как "зашить" ini-ник в ЕХЕ-файл ?
http://clipper.borda.ru/?1-4-0-00000821-000-0-0-1363859258

SergKis Отправлено: 20.03.13 14:51. и Отправлено: 20.03.13 16:01
Дополнительно:
 
================================= RC
DT_TM_ ICON datetime_.ico
datetime BITMAP datetime.bmp
...
pvn.lv CUSTOM Pvn.lv
pvn.ru CUSTOM Pvn.ru
pvn0.dbf CUSTOM Pvn0.dbf

dtm.bmp CUSTOM datetime.bmp
dtm.ico CUSTOM datetime.ico

================================= примеры

Res2File('pvn.lv' , '.\hbk\ini\pvn.lv') // по умолчанию берет 'CUSTOM'
Res2File('pvn.ru' , '.\hbk\ini\pvn.ru')
Res2File('DT_TM_' , 'DateTime.ico' , 'ICON' )
Res2File('datetime', 'DateTime.bmp' , 'BITMAP')
Res2File('pvn0.dbf', '.\DataBase\pvn0.dbf', 'CUSTOM')
Res2File('dtm.bmp' , 'dtm.bmp' , 'CUSTOM')
Res2File('dtm.oco' , 'dtm.ico' , 'CUSTOM')


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2805
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.04.13 13:24. Заголовок: SergKis Спасибо БОЛ..


SergKis
Спасибо БОЛЬШОЕ !
Как всегда - помощь номер ОДИН !!!
Даже на глупые вопросы...

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3049
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.04.13 13:26. Заголовок: SergKis Не пашет од..


SergKis
Не пашет однако.
RC
 
MainIcon ICON "111.ico"
LOGO1 BITMAP "l2.bmp"


Res2File("c:\temp\LOGO.bmp",'l2.bmp' ,'BITMAP') // .f.


bkApi_LoadResource(bkApi_GetInst(), cRes, cTip) // empty

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 211
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.04.13 13:37. Заголовок: Dima Res2File("c..


Dima
Res2File("c:\temp\LOGO.bmp",'l2.bmp' ,'BITMAP') параметры:
Res2File(<ResName>, <FileName>, <TypeRes>)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 212
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.04.13 13:39. Заголовок: Вот мой RC: tools ..


Вот мой RC:
 
tools BITMAP tools.bmp
doc_act BITMAP doc_act.bmp
doc_excel BITMAP doc_excel.bmp
doc_pdf BITMAP doc_pdf.bmp
doc_word BITMAP doc_word.bmp
sort_asc BITMAP sort1_asc.bmp
sum BITMAP sum.bmp
undo BITMAP undo.bmp

empty BITMAP br_emp.bmp
ok BITMAP br_ok.bmp
no BITMAP br_no.bmp
up BITMAP up.bmp
down BITMAP down.bmp

pvn.lv CUSTOM Pvn.lv
pvn0.dbf CUSTOM Pvn0.dbf


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3050
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.04.13 13:46. Заголовок: SergKis Исходник FU..


SergKis
Исходник
FUNCTION Res2File( cFile, cRes, cTip )
LOCAL j, l

IF file(cFile); RETURN .T.
ENDIF

Default cTip To "CUSTOM"

j := bkApi_LoadResource(bkApi_GetInst(), cRes, cTip)



l := ! empty(j) .and. valtype(j) == "C"

IF l; hb_memowrit(cFile, j)
ENDIF

RETURN l

SergKis пишет:

 цитата:
Res2File("c:\temp\LOGO.bmp",'l2.bmp' ,'BITMAP') параметры:
Res2File(<ResName>, <FileName>, <TypeRes>)



я так и не понял где не прав или не ту функцию юзаю (Res2File) ?;)



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 213
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.04.13 14:20. Заголовок: Dimaя так и не понял..


Dima
 цитата:
я так и не понял где не прав или не ту функцию юзаю (Res2File) ?


Я не прав. На бегу смотрю - уже клинит. Каюсь.
Эту функцию использую для CUSTOM еще со времен VO, возможно для других типов не доделано.
Сделай :
LOGO1 CUSTOM "2.bmp


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3051
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.04.13 14:35. Заголовок: SergKis Не работает..


SergKis
Не работает ни так ни сяк.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3052
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.04.13 14:39. Заголовок: А как по хендлу полу..


А как по хендлу полученному через Wvg_LoadImage( "LOGO1", 1) , загрузить в память картинку и затем сложить ее на диск в файл ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 214
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.04.13 14:44. Заголовок: Dima Вот prg: *-----..


Dima
Вот prg:
 
*-----------------------------
FUNCTION MAIN( Base )
*-----------------------------
LOCAL i,j,k,oMdi,oPth,xDat,cPth,lPth,cGod
//LOCAL cDir := hb_DirBase(), cExe := hb_ProgName(), cNam

//cNam := subs(cExe, len(cDir)+1)
//?? cDir,cExe,cNam,DiskName(0)+':\'+CurDir()+"\"

PUBL oPub := bkPubl():New()

oPub:SetOrg() // данные на организацию

oPth := BlsPath():New(oPub:DATETEK, '.\') // пути к данным
sColor() // уст. базовый цвет

Res2File('tools.bmp', 'tools_0') // !!!!!!!

oMdi := MdiPvn():New(oPth:cGod) // создание MDI MAIN

oMdi:Show() // показать окно

RETURN NIL

Вот RC:
 
,,,
down BITMAP down.bmp

pvn.lv CUSTOM Pvn.lv
pvn0.dbf CUSTOM Pvn0.dbf

tools_0 CUSTOM tools.bmp

Файл создался tools.bmp и Irfan View показал.


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 3053
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.04.13 14:53. Заголовок: SergKis Да заработа..


SergKis
Да заработало. Похоже только CUSTOM и работает

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 215
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.04.13 15:01. Заголовок: Dima пишет:Похоже то..


Dima пишет:
 цитата:
Похоже только CUSTOM и работает


В WVT и miniGUI, я только CUSTOM и пользуюсь - остальное наверно не доделано за не надобностью.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3286
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 21.03.14 14:35. Заголовок: SergKis пишет: Вот ..


SergKis пишет:

 цитата:
Вот мой RC:
pvn.lv CUSTOM Pvn.lv
pvn0.dbf CUSTOM Pvn0.dbf



Ничего не пойму. Делаю аналогично:
readme.html CUSTOM res\readme.html
haspdinst.exe CUSTOM res\haspdinst.exe.isx

При компиляции выдает ошибку:
Error Test_SLDK.rc 32 7: Expecting resource name or resource type name
hbmk2[test_sldk]: Error: Running resource compiler. 20018

Что не так делаю ?

И где взять функцию bkApi_LoadResource() ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 289
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.03.14 18:28. Заголовок: Andrey пишет: И где ..


Andrey пишет:

 цитата:
И где взять функцию bkApi_LoadResource()



http://clipper.borda.ru/?1-4-0-00000821-000-0-0-1363859258

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 3288
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 25.03.14 20:26. Заголовок: Спасибо ! :sm36: Я..


Спасибо !
Я пропустил ссылку на функцию.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 26 , стр: 1 2 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 215
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет