|
Из COMSafeArray в ДвоичныеДанные. | ☑ | ||
|---|---|---|---|---|
|
0
Ashtray
11.07.13
✎
09:15
|
В базе есть справочник. У справочника есть реквизит с типом ХранилищеЗначения. Пробую получить файл сразу из SQL базы
c = New COMОбъект("ADODB.Connection"); c.Open("Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=base;Data Source=server"); rs = New COMОбъект("ADODB.Recordset"); s = New COMОбъект("ADODB.Stream"); ИД = "0x8013001E8C0F8D1C11E17A47B9715573"; rs.Open("select * from [_Reference8365] where [_IDRRef] = " + ИД, c, 2, 3); s.Type = 1; s.Mode = 3; s.Open(); s.Write(rs.Fields("_Fld8502").Value); s.SaveToFile("D:\222.pdf",2); И получаю файл который не открывается. Adobe пишет поврежден или не поддерживается. rs.Fields("_Fld8502").Value имеет тип COMSafeArray. Как можно еще из COMSafeArray получить ДвоичныеДанные? |
|||
|
1
Cube
11.07.13
✎
09:27
|
Может так:
COMSafeArray (COMSafeArray) GetValue (GetValue) Вариант синтаксиса: Список индексов Синтаксис: GetValue(<Индекс0>, <Индекс1>) Параметры: <Индекс0> (обязательный) Тип: Число. Значение старшего индекса. <Индекс1> (необязательный) Тип: Число. Значение следующего индекса, если массив более, чем одномерный. Описание варианта метода: В параметрах указываются значения индексов элемента массива, начиная со старшего. Каждый параметр определяет значение одного индекса. Параметров столько, сколько измерений в массиве. Тип всех параметров - Число. Вариант синтаксиса: Массив индексов Синтаксис: GetValue(<Индексы>) Параметры: <Индексы> (обязательный) Тип: Массив. Массив индексов, начиная со старшего. Описание варианта метода: Все индексы перечислены в одном массиве, начиная со старшего индекса. Индексов столько, сколько измерений в массиве COMSafeArray. Тип всех элементов массива параметров - Число. Описание: Получает значение элемента массива по указанным индексам. Доступность: Сервер, толстый клиент, внешнее соединение. Примечание: Если какой-нибудь из индексов выходит за допустимый диапазон, то никаких действий не производится и выдается сообщение "Значение индекса выходит за границы диапазона". |
|||
|
2
1Сергей
11.07.13
✎
09:27
|
можешь просмотреть что в файле? нули?
|
|||
|
3
Ashtray
11.07.13
✎
09:37
|
(2) Файл не пустой.
|
| Форум | Правила | Описание | Секции | Поиск |