Показать сообщение отдельно
  #4  
Старый 20.03.2014, 17:39
aqula aqula вне форума
Новичок
 
Регистрация: 19.10.2012
Сообщения: 95
Репутация: 10
По умолчанию

Задача такая надо открыть документ Word скопировать содержимое из него и запихнуть в поле бд типа text СУБД MS SQL 2005

Вот код который выдает ошибки (Например, что в Буфере нет ничего нет ничего) Может я не так все делаю?

Код:
procedure TMain.SpeedButton3Click(Sender: TObject);
var COM_Word: variant;
begin
  Screen.Cursor:=crSQLWait;
  with Documents.ADOQuery1 do
  try
    COM_Word := CreateOLEObject('Word.Application');
    COM_Word.Visible := False;
    DisableControls;
    First;
    while not EOF do begin
    if ( not FieldByName('cDocumentPath').IsNull) and
      ((pos('.doc', Fieldbyname('cDocumentPath').AsString)<>0) or
       (pos('.rtf', Fieldbyname('cDocumentPath').AsString)<>0)) then
    begin
      Clipboard.Clear;
      COM_Word.Documents.Open(DirPath + FieldByName('cDocumentPath').AsString);
      COM_Word.ActiveDocument.Select;     // Âûäåëÿåì ÁÄ
      COM_Word.Selection.Copy;
       if (Length(Clipboard.AsText)>0) and (Clipboard.HasFormat(CF_TEXT)) then begin
        Edit;
        FieldByName('cDocumentContent').AsString := Clipboard.AsText;
        Post;
      end; // if
    COM_Word.DisplayAlerts := False;
    COM_Word.ActiveDocument.Close;
    COM_Word.Quit;
    end; // if
    Next;
    end; // while
    EnableControls;
  finally
    COM_Word := UnAssigned;
  end;  // try
  Screen.Cursor:=crDefault;

end;

помогите решить задачку ПОЖАЛУЙСТА
Ответить с цитированием