Здравствуйте
у меня есть Exсel файл, который вытягивает картинки из интернет-магазина по заданной ссылке ( для каждой строчки с товаром). До вчерашнего дня я пользовался Exсel версией 2007 года и все загруженные картинки сохранялись внутри файла. Для получения картинки использовалась функция
Код |
---|
Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" _
(ByVal pCaller As Long, ByVal szURL As String, _
ByVal szFileName As String, ByVal dwReserved As Long, _
ByVal lpfnCB As Long) As Long |
и после чего вставлялась в файл
Код |
---|
Dim ph As Picture: Set ph = PicRange.Parent.Pictures.Insert(PicPath), где PicPath - адрес картинки на компьютере. |
вчера поставил версию 2019 г, и пришлось перекомпилировать под х64 и переопределил функцию как
Код |
---|
private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" ( _
ByVal pCaller As LongPtr, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As Long, _
ByVal lpfnCB As LongPtr _
) As Long
Private Declare PtrSafe Function DeleteUrlCacheEntry Lib "Wininet.dll" _
Alias "DeleteUrlCacheEntryA" ( _
ByVal lpszUrlName As String _
) As Long |
после чего картинки подгрузились, но объем excel файла явно был меньше нужного, изображения видимо хранятся в виде ссылки. При пересылке по почте другой пользователь картинки не видит.
С чем это связано и как можно исправить?
Спасибо