Можно хранить картику в контейнере, потом вываливать в ActiveX компонент.
PHP код:
#WinAPI
Image logoImage;
str html;
str tempdir;
str imgName;
str filename;
binData bin;
container image;
image = hb_InventTable::getImage(HB_images.ItemId);
if (conlen(image))
{
bin = new BinData();
bin.setData(image);
tempdir = WinAPI::getFolderPath(#CSIDL_INTERNET_CACHE);
if (tempdir && strFind(tempdir, '\\', strLen(tempdir), 1) == 0)
tempdir += '\\';
bin.saveFile(tempdir + HB_images.filename());
html = '<html><body>' +
'<img src="' + tempdir + HB_images.filename() + '" border=0 width=100%>' +
'</body></html>';
shower.documentHTML(html);
}
Таким же образом туда её впихивать.
PHP код:
filter = ['Image Files','*.bmp;*.jpg;*.gif;*.jpeg;*.wmf;*.xbm;*.art;*.png'];
binData = new BinData();
filename = Winapi::getOpenFileName(element.hWnd(),filter,'', "@SYS53008", '','');
if (filename)
{
if (binData.loadfile(filename))
{
HB_images.ItemId = Invtbl.ItemId;
HB_images.image = binData.getData();
// find type
pos = strscan(filename,'.',strlen(filename),-strlen(filename));
ext = subStr(filename,pos+1,strlen(filename));
HB_images.Format = ext;
if (_hbInvTbl.ItemId == InvTbl.ItemId)
{
HB_images.update();
}
else if (! _hbInvTbl.ItemId)
{
HB_images.ItemId = Invtbl.ItemId;
HB_images.insert();
}
HB_images_ds.reread();
element.HB_showImage();
}
}