Autor: Heinz Brill (---.dip0.t-ipconnect.de)
Datum: 13.10.20 19:38
Ja, die Bitmaps gehen ja gut.
Im Reshacker bitmap als Typ und den
Namen angeben. Im Programm dann
Handle = Create ("hPic", 0, "RESSOURCENNAME")
laden und mit DrawPic anzeigen.
jpg scheint der ResHacker nicht zu machen.
Da würde ich es mit RCDATA als Ressourcentyp versuchen.
Dann mit Res("Info",..) und Res("Size",..) das Handle und
Größe ermitteln. Damit dann einen Bereich dimensionieren
und mit Res("Get",..) laden.
Hier mal ein Beispiel, wie man mit CatchImage sowas bekommt :
$H Windows.ph
Declare bereich#,x&,y&,z&,p&,text$
Def GetSysColor(1) !"USER32","GetSysColor"
SetTrueColor 1
Proc CatchImage
Struct GdiplusStartupInput = GdiplusVersion&,DebugEventCallback&,SuppressBackgroundThread&,SuppressExternalCodecs&
Var GDIP& = ImportDll("Gdiplus.dll","")
Var OLE& = ImportDll("Ole32.dll","")
Var Kernel& = ImportDll("Kernel32.dll","")
Declare gdpsi#,gdiplusToken&,ImageObject&,GraphicObject&,pStream&,RetVal&
Parameters MemPointer&,Size&
'GDIPlus starten
Dim gdpsi#,GdiplusStartupInput
gdpsi#.GdiplusVersion& = 1
gdpsi#.DebugEventCallback& = 0
gdpsi#.SuppressBackgroundThread& = 0
gdpsi#.SuppressExternalCodecs& = 0
GdiplusStartup(ADDR(gdiplusToken&),gdpsi#,0)
Dispose gdpsi#
'Speicher bereitstellen
Var m_hBuffer& = GlobalAlloc(2,Size&)
Var pBuffer& = GlobalLock(m_hBuffer&)
RtlMoveMemory(pBuffer&,MemPointer&,Size&)
GlobalUnlock(m_hBuffer&)
'Stream erzeugen
CreateStreamOnHGlobal(m_hBuffer&,1,Addr(pStream&))
GdipCreateBitmapFromStream(pStream&,Addr(ImageObject&))
'hBitmap erzeugen
GdipCreateHBITMAPFromBitmap(ImageObject&,Addr(RetVal&),0)
'aufräumen
Var Command& = Long(pStream&,0)
call(Long(Command&,8),pStream&)'IStream.Release
GlobalFree(m_hBuffer&)
GdipDisposeImage(ImageObject&)
GdipDeleteGraphics(GraphicObject&)
GdiplusShutdown(gdiplusToken&)
FreeDll GDIP&
FreeDll OLE&
FreeDll Kernel&
Return RetVal&
EndProc
Declare mem#
Dim mem#,3184
Clear mem#
Long mem#,0=-520103681,1179258880,16795209,16777217,256,-2080318465,117836032,151389960,168298248,218827018,202182422,337317132,538316821,539107869,606019357,606876712,522662182,758983967,976696625,7237289 54,943670335
Long mem#,84=976827459,168427831,218893578,437194522,622798135,926365495,926365495,926365495,926365495,926365495,926365495,926365495,926365495,926365495,926365495,926365495,926365495,-1057016009,528640,630 45827,33563137
Long mem#,168=285409553,12910337,65564,16843522,1
Long mem#,192=50331648,84017412,-16251130,272564420,50397696,100926721,117703177
Long mem#,224=50462976,86053124,1900097810,-2124328685,841094150,606310707,-1586343372,1121042865,-1839983262,1142294512,-1300073645,419480831,16843009,65793
Long mem#,288=33619968,-16448509,287441092,33554689,84082946
Long mem#,316=285344000,70324739,336806177,-10399438,51118298,285343745,1056968963,8977152,-1265159412,-576544138,900166699,1703038918,-378361971,-997991342,481939429,-1996370642,-338862369,-1266991759,-10 80298205,-729860621
Long mem#,396=-334465079,-1252113199,1793769336,-945291009,292019887,378513849,-484953810,-491902053,-134591989,-934292067,2145300431,737388953,-1259927294,-1155735122,-1997891414,-743776746,1459011218,231 878195,-594413268
Long mem#,472=-1034360275,-1118399367,271993425,-835827287,1809679235,-874267635,1469628345,-1094029999,-303704113,-460336272,1907563887,-1441023193,424324749,1261801213,777344058,-1509122606,-1771322967,- 357260040,-1180885685
Long mem#,548=411390857,1160374733,-1697769026,229835636,-1946978137,350218633,1834508991,1828510763,-700871947,-307793455,1474787659,347202716,1809278471,-1965578139,-1321577988,793678482,-1136856279,1716 225878,1416837724
Long mem#,624=-1109074268,-686749985,8389121
Long mem#,640=2033152,-728901832,-1024353352,-1205047264,1905851114,934849832,2007374603,-1485104048,-789523814,-303589756,286342933,1442877585,-1077641835,603799482,911873927,576008682,-1208602979,-143655 4658,2006245065
Long mem#,716=-111985514,-1537893828,714986218,776878221,2089472818,-1698266759,-1414473810,-1231280274,-475868428,-1232007193,-1540704402,-1102497301,-449791285,2093406946,1337843961,-1802710939,101233808 3,1530395083,-892740314
Long mem#,792=801009008,382230394,-1953565203,-1427906295,715298885,-1472670412,-1776000571,-2145249734,966142170,-1466553521,731261138,1706310480,-281916737,393995590,-949524325,1387765
Long mem#,860=-2129722624,478154643,905299367,-1694860234,1692795028,-623956722,1008893482,-1568842478,-920460633,-1111422832,1976285496,986516083,363961458,606860690,-1684564846,278342187,-374598438,-1672 161447,979217015
Long mem#,936=1154712184,-67378533,1803243442,-1029083023,145208119,448933323,1661040585,1069131443,-248508893,1459071029,312479364,-299524918,-1150557131,1395098247,688463388,-320959402,-138287171,7435152 65,1892590161,247730937
Long mem#,1016=-673609827,1479235926,1496715260,42,100663296,522584863,-547604224,869207123,50438924,1047490848,27874261,-1428492483,112339957,-828977541,-810968925,288794526,2073008862,-2066574277,6654218 72,1313347874,-2137640124
Long mem#,1100=341464683,-804039833,341464753,225197994,-315237668,1517386267,1528510874,526231487,-1412217368,-1531487383,-1528431196,-1153937013,-404378062,-1392443546,-594614731,-1920071082,1499316367,- 261771420,-1470047940
Long mem#,1180=-427687936,718461682,-756468393,-1308850609,2077995666,393637686,-1507351148,-187774701,-1382173306,-1296247720,-1745414694,845822899,-1282959448,-1240073814,-707144626,-1115335638,-16323077 79,-717850861,-2033736416
Long mem#,1256=205725008,206798799,125895072,1786639646,1723421359,976612855,1838473360,1088167019,1944635882,-992749652,1283144121,-359315062,1294878413,-752472351,-1184348271,-2036148662,-1183791438,3295 8433,-1468884421
Long mem#,1332=-173168151,-911006187,-107773968,-2066224620,139172197,-1522344989,-555071393,1448102209,-1402607244,1834175078,-881040007,-1905013193,-2103469024,1756345888,-231249591,-1514490076,-88409443 8,-534561781,1231678835
Long mem#,1408=1262907201,182200234,-171801190,2073808616,1455858365,-2095752433,1231016389,-935649771,-832646666,1609993034,177655047,-855146506,8391318
Long mem#,1464=-1590337524,-905840496,-1281688964,1642761007,1912602772,1742083951,1797426644,-174459483,926059060,860991904,-1679953286,-2117637818,1422709022,1325465450,-368306938,-959075819,1537811317,1 622495881,-2052170189
Long mem#,1540=-1488006040,-1536551535,1455236948,456788061,986538202,2094928810,336133523,1172600735,1256842864,-1510481356,-972885086,-1095201852,-1188371061,-1967503374,-851241020,-1553846406,90831933,- 494166088,1166968698
Long mem#,1616=389967126,1511009435,1915891580,160
Long mem#,1636=-274238880,-1525832130,-1414935569,234930216,-855979411,683867898,1652416986,423740527,-702856942,636754595,-1830979250,-1720141342,283330948,1970997679,-639018229,927640919,1974720273,-2091 912362,-418046777
Long mem#,1712=-343317671,-157026442,-1380819013,1412893266,-958932941,-82522191,1698492115,-1294825771,1131799464,1498614159,-993990517,1557388198,-160911977,-406981008,-640232764,2068410177,1519090797,12 09607214,-686191138
Long mem#,1788=-697034071,-1113512091,-1722040899,-1752968850,1568285839,1830925207,1418323222,16774270,1044089730,-967091243,-555253237,-619918341,-855463039,670286511,2130228512,21030244,144,15728896,-10 5030642,-1788594827
Long mem#,1868=-359495133,916611276,-2124287987,1521724623,1877013574,-911460014,-1030976480,-1559713500,1686733428,1409852886,-1667068797,318248031,1501512100,-376130096,601114364,-359156523,1278047563,-1 433539662,-1540540843
Long mem#,1944=-1289454626,-1450367267,1784171372,696134057,1733013860,-146954286,966767418,-799576246,-1787892070,-1666865988,331846504,-1825065667,925485980,-195663261,-1834834711,576352329,1762220126,-1 211513705,1746447702
Long mem#,2020=115393496,1768138717,-1151956166,-471446838,-394668774,-1904658549,634890957,1734561181,-900902578,-247567495,-1263840092,-460012886,-1195037525,-1115294291,-244253554,2107843929,-1455969198 ,-106787755,-363992920
Long mem#,2096=-1437271724,1039194044,655699533,-1556643609,695817077,-1948473375,-161792569,2029772414,-485028393,839409066,2031616,-69277952,1221227285,1179104387,1236110058,-1612545081,-1079392887,14776 68430,2065076331
Long mem#,2172=718561620,-1981674001,-1573083662,-1634065832,-768685333,-1957531542,1680071968,-1855052660,-1264367596,-809044514,1912668065,164264931,1987223731,-1135563577,1839447475,1997858386,-42718493 ,-1548174107,-445384647
Long mem#,2248=-1906172420,1807196115,-916808377,1399505251,1593207387,-4406042,-161228544,-309480138,1973801214,-1444058501,-2074915376,2022939556,-1935545909,-107157842,-1311860429,-1425841959,-183211962 4,539805976,-240863328
Long mem#,2324=1800077819,1168593501,628996570,-1374144680,-28013596,-886867428,-1280107027,1671231086,1787647001,669242491,-445028833,2043859859,-1459812443,-1007438261,444767150,1873404565,2123583554,-16 88543510,712814762
Long mem#,2400=937355585,-1457936657,-1630476816,1105783326,1117248595,1805856059,463819381,984207738,-522366120,1432214680,-262249520,176196662,-1271523580,532092846,311923819,1529481072,332571182,4400329 07,1451622655,-1074147077
Long mem#,2480=964750304,-1097473761,-23379979,-93525747,1792845044,982148933,-1584330112,2092431955,778157977,1073764596,242073256,955358919,1073139718,-888210979,1745066180,1742607803,545886130,115352166 7,1519684180,-2035166852
Long mem#,2560=921685255,1228884797,-775433431,-1817555254,-143879450,1057832692,-1272475710,1453401725,1807590902,1951659047,-225683991,-948929837,-606784753,-2055271684,-680425858,-901922877,-1414538791, 410733010,-369029177
Long mem#,2636=-456221708,-141566093,940395740,1738521377,-143107481,-1850750679,2113429491,-188883532,-1418571811,1334237131,2127027621,-377768746,-1001947447,1907891581,-1175896917,1022971986,746486044,- 1406255749,-1814210614
Long mem#,2712=1196123469,-371080768,-2108539795,363931373,-181145434,-1375892289,15252989,10501364
Long mem#,2756=-1016822271,1935402755,-1517860252,-661176940,-808170148,-109571283,-320868706,402109428,1533633512,-412176941,1314101557,114261329,1204370989,2132541695,1319586114,-1231140018,1462900888,11 75287604,158313438
Long mem#,2832=2128931649,-447358597,75213581,1381636081,-219514482,1523766141,-1144811826,248177001,926872873,622980530,-561335782,-462163844,1803220464,-673686033,216591006,-742239830,-92720397,-32376632 9,-103283968
Long mem#,2924=-1271648504,-826761299,-1029104779,-1478942324,-1816980293,1881821867,1271014804,-2047155188,1569463276,626823178,-709380055,-453772191,-1372711592,-1697436635,-737294462,-1195683380,-152381 6498,1730752198,-1378705854
Long mem#,3000=-1511869577,-1566777770,1867856120,-1086813451,-1802882061,-1515961667,-122947891,1537109043,2019522972,-729880135,1247131304,1906224766,1826722219,1765078760,2072765614,-681913733,152845464 4,1506496570,-1842943332
Long mem#,3076=1420072680,-1174034972,742912211,-742156301,-892893757,79860450,-1153859477,12631662,10112829
Long mem#,3128=1639359232,-69538791,-904835119,-1269042231,1348718995,1605327886,-648220250,902687396,1675174594,-1070813583,1969082172,1475813687,1694877896,55807
Declare hBild&
hBild& = CatchImage(mem#,sizeof(mem#))
Dispose mem#
Window 0,0
' *** Bild anzeigen
DrawPic hBild&, 0,0, 1
Window %BmpX + 100 ,%BmpY + 100
While 1
waitinput
Case %key=2:Break
Endwhile
'*** Bild freigeben
'
DeleteObject hBild&
END
Vielleicht kannst du es ja brauchen. Brauchst ja nur die Proc, den
Bereich hast du ja in einem Bereich, der aus der Ressource stammt.
H.Brill
XProfan X4 + FreeProfan
|
|