опубликован 10-05-2001 22:09 MSK
Такой простой пример на VB.Public AExcel As Excel.Application, AWord As Word.Document
Private Sub Button1_Click()
Set AExcel = New Excel.Application
AExcel.Visible = True
End Sub
Private Sub Button2_Click()
Set AWord = New Word.Document
AWord.Visible = True
End Sub
При нажатии каждой из кнопок запускается приложение либо Excel либо Word.
По правилам OLE если пользователь закроет сам это приложение, в то время пока на него есть ссылки со стороны приложения клиента ( в нашем случае программы на VB), то оно должно сделаться невидимым, но не закрыться. Excel так и делает. Word же завершается полностью. Это можно увидеть с помощью TaskManager.
Та же ситуация если мы пишем клиента на С++ или Дельфи (пример на VB дан только для краткости).
У меня возникают большие сомнения, что Microsoft сделал такоя явный и критичный баг, в нарушение собственных же стандартов. Может все же я что-то не понимаю.
У кого какие мысли?