Некоторое время тому назад вы задавали вопрос по поводу динамического OLE без создания диалогового окна для просмотра файла. Я таки добился этого и вот код... Uses ..., BOleDefs, ... procedure TPreview.previewOLEFile(fileName: string); var Info: ^BOleInitInfo; cString: array[0..80] of char; begin
Screen.Cursor := crHourGlass; try GetMem(Info,sizeof(BoleInitInfo)); Info^.How := BOLE_EMBED; Info^.Where := BOLE_FILE; Info^.pContainer := nil; Info^.hIcon := 0; Info^.Storage := nil; StrPCopy(cString,fileName); Info^.Path := cString; oleDocument.PInitInfo := Info; ReleaseOLEInitInfo(Info); { данная функция освобождает (getmem) память ! } oleDocument.Visible :=Br> end; end; |