EmptyClipboard
hGlobal = GlobalAlloc(GMEM_MOVEABLE Or GMEM_DDESHARE, Len(StrData))
lpString = GlobalLock(hGlobal)
CopyMemory lpString, ByVal StrData, Len(StrData)
GlobalUnlock hGlobal
SetClipboardData CF_FORMAT, hGlobal
CloseClipboard
GlobalFree hGlobal
GSerg писал(а):Чё тут окидывать.
hGlobal = GlobalAlloc(GMEM_MOVEABLE Or GMEM_DDESHARE, Len(StrData)*2)
lpString = GlobalLock(hGlobal)
CopyMemory byval lpString, ByVal strptr(StrData), Len(StrData)*2
GlobalUnlock hGlobal
Len(StrData)*2=LenB(StrData)
Konst_One писал(а):может у тебя проблема в самих данных?
Eugenio писал(а):Konst_One писал(а):может у тебя проблема в самих данных?
Я вот и задаю себе вопрос, что у меня туда попадает?![]()
GSerg писал(а):Туда попадает твоя строка...
Вопрос в том, как ты потом её читаешь.
OpenClipboard ByVal 0
hStrPtr = GetClipboardData(CF_FORMAT)
lpString = GlobalLock(hStrPtr)
If lpString <> 0 Then
lLength = lstrlen(lpString)
If lLength > 0 Then
sBuffer = Space$(lLength)
CopyMemory StrPtr(sBuffer), lpString, lLength
End If
End If
GSerg писал(а):Слюшай....
Раз у тебя данные строковые, ну не страдай фигнёй, юзай объект clipboard
GSerg писал(а):Я не спрашиваю, что там в конце. Я спрашиваю, что там в середине
GSerg писал(а):Как copymemory объявил?
Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
(ByVal Destination As Long, Source As Any, ByVal Length As Long)
sBuffer = StrConv(sBuffer, vbUnicode)
GSerg писал(а):Нет.
У тебя нет Byval на втором аргументе. Поэтому при чтении туда передаётся не указатель, а указатель на указатель.
Konst_One писал(а):на счет Unicode я тебе сказал еще 2-е страницы назад
GSerg писал(а):А то, что показывал я, сохраняет вообще без конвертации...
sBSTR = "How do you do?"
cBytes = LenB(sBSTR)
' ReDim array, with space for terminating null
ReDim b(1 To cBytes + 2) As Byte
' Point to BSTR char array
lpwsz = StrPtr(sBSTR)
' Copy the array
CopyMemory b(1), ByVal lpwsz, cBytes + 2
' Point lpsz to new array
lpwsz = VarPtr(b(1))
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3