Динамическое OLE
|
Чем компьютер лучше женщины:
1. Компьютер не скажет: "ты мне не нравишься, я люблю другого".
2. Кожух с компьютера снимается без сопротивления.
3. Изображение на компьютере легко поменять.
4. Звук на колонках легко выключить.
5. У компьютера не бывает месячных.
6. Компьютер не потащит тебя знакомится со своими родителями.
7. Память на компьютере можно увеличить.
8. У девушки не бывает режима турбо.
9. Вирусы компьютера пользователю не передаются.
10. Компьютер можно собрать из тех частей, которые тебе нравятся.
11. Компьютер можно отформатировать.
12. У компьютера не болит голова.
13. Компьютер можно иметь в присутствии других.
14. Компьютер можно иметь везде.
15. К компьютеру можно подключить дополнительные периферийные устройства.
16. Компьютер не залетит.
17. Компьютер потерпит любые извращения.
18. Компьютер не ревнует, когда вы имеете другой компьютер.
19. На компьютер можно поставить пароль.
20. Девушку нельзя перезагрузить и начать всё сначала.
21. Сетевой сервер может одновременно обслуживать уйму народа.
22. На компьютере можно играть с друзьями.
23. Компьютер не заставит тебя на нем женится.
24. Компьютер не обидится, если ты назовешь его другим именем.
25. На компьютере можно отлаживать чужие программы.
26. У компьютера не бывает тещи.
27. Компьютер всегда запомнит, что ему скажешь.
28. Компьютер никогда не опаздывает.
29. Компьютер не боится мышей.
30. Компьютер не требует постоянно спонсировать его.
31. С глюками компьютера легко справится.
32. Компьютер грузится быстрее.
33. Компьютер не волнует, когда ты кончишь.
34. Компьютер мыслит логически.
35. Компьютер не потеет.
|
Некоторое время тому назад вы задавали вопрос по поводу динамического 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 := True;
finally
Screen.Cursor := crDefault;
end;
end;
|
|