Конференция "Corba" » Проблемы с конвертацией из VB в Delphi [Delphi, Windows]
 
  • Jimmy (08.02.09 13:07) [0]
    Вновь прошу помощи. Макрос Word'а выдал такой скрипт при рисовании кривой:
    With ActiveDocument.Shapes.BuildFreeform(msoEditingAuto, 122.4, 165.6)
        .AddNodes msoSegmentCurve, msoEditingAuto, 360#, 194.4
        .ConvertToShape.Select
    End With


    Вот что я пишу на Delphi:
    Procedure TForm1.Button1Click(Sender: TObject);
    Const msoEditingAuto=0;
         msoSegmentCurve=1;
    Var   Word:  OleVariant;      
    begin
    Word := CreateOleObject('Word.Application');
    Word.Visible := True;
    Word.Documents.Add;
    Word.ActiveDocument.Shapes.BuildFreeform(msoEditingAuto, 122.4, 165.6).AddNodes( msoSegmentCurve, msoEditingAuto, 360, 194.4);
    Word.ActiveDocument.Shapes.BuildFreeform(msoEditingAuto, 122.4, 165.6).ConvertToShape.Select;
    Word := Unassigned;
    end;


    При запуске выдается ошибка:"отказано в доступе" при попытке Select. Подскажите, пожалуйста, в чем дело? Заранее спасибо!
  • Сергей М. © (08.02.09 13:24) [1]
    Точно "Отказано в доступе" ?
    Или все же "Access violation" ?
  • Smile (08.02.09 14:01) [2]
    А с этим:
    Var   Word:  OleVariant;


    я бы постарался быть аккуратнее, дальше код не анализировал:)
  • Jimmy (08.02.09 15:47) [3]
    >Сергей М.
    Точно, "отказано в доступе"
  • Сергей М. © (09.02.09 09:08) [4]
    procedure TForm1.Button3Click(Sender: TObject);
    Const
     msoEditingAuto=0;
     msoSegmentCurve=1;
    var
     MsWord, Shape:  OleVariant;
    begin
     MsWord := CreateOleObject('Word.Application');
     MsWord.Visible := True;
     MsWord.Documents.Add;
     Shape := MsWord.ActiveDocument.Shapes.BuildFreeform(msoEditingAuto, 122.4, 165.6);
     Shape.AddNodes(msoSegmentCurve, msoEditingAuto, 360, 194.4);
     Shape.ConvertToShape.Select;
    end;

  • Jimmy (09.02.09 15:49) [5]
    Огромное спасибо!!! Очень выручили!!!
  • nik © (01.03.11 09:28) [6]
    Помогите пожалуйста написать приведенный ниже скрипт в Delphi:

    Sub mac1()

       Selection.Editors.Add wdEditorEveryone
       ActiveDocument.Protect Password:="123", NoReset:=False, Type:= _
           wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False
    End Sub
 
Конференция "Corba" » Проблемы с конвертацией из VB в Delphi [Delphi, Windows]
Есть новые Нет новых   [118452   +47][b:0][p:0.001]