В Visual Basic 6 буфер обмена имеет различные форматы. Чтобы получить данные HTML из буфера обмена, это отлично работает: https://support.microsoft.com/en-us/kb/274326Vb6 Перетаскивание данных HTML
Теперь мой вопрос: как я могу получить информацию HTML из перетаскиваемых данных, а не буфера обмена?
например, Я хотел бы иметь многострочное текстовое поле, которое при перетаскивании содержимого с веб-страницы - в текстовое поле - текстовое поле будет отображать HTML, извлеченный из информации перетаскивания OLE, а не как vbCFtext ,
I'v пытались использовать ту же технику, что и в ссылке выше, но вместо GetClipboardData - использовать Data.GetData (RegisterClipboardFormat («HTML формат»)) [который приходит от Picture1_OLEDragDrop (...] , но я получаю ошибка над потоком Я искал по всей сети для решения кто-нибудь там
Отредактировано:..? выше был дан ответ, спасибо
Добавление:! большое спасибо Что бы теперь вернемся к тому, чтобы перевернуть это значение, то есть перетащить из текстового поля (содержащего HTML) - и установить его для перетаскивания в режиме HTML?
, когда я просто использую это:
Private Sub Text1_OLEStartDrag (Data Как DataObject, AllowedEffects As Long) «Data.SetData StrConv (Text1.Text, vbFromUnicode), (CF_HTML) Data.SetData Text1.Text (CF_HTML) End Sub
Я получаю сообщение об ошибке: "Non-сущностных OLE перетаскивание форматов, используемых с SetData требуют данных массива байт GetData может возвращать больше байт, чем были даны SetData (Error 675)"
Что будет b e точный способ отправки данных? и обратите внимание, что в нем могут быть символы Юникода. Должен ли я использовать копию памяти и другие, чтобы заставить это работать? Я очень ценю вашу помощь!
Обратите внимание, что для иллюстрации приведенный выше код «предполагает», что возвращаемые данные UTF-8 являются ASCII. Конечно, это небезопасно, и вы должны сделать полное перекодирование вместо того, чтобы просто использовать StrConv(), как показано. Вам также нужно проанализировать результат, поскольку он содержит метаданные, а также необработанные данные HTML. См. Https://msdn.microsoft.com/en-us/library/windows/desktop/ms649015(v=vs.85).aspx – Bob77
Большое вам спасибо, это работает отлично! –
Я добавил еще к вопросу - об обратном действии (отредактировано) –