Очень интересно. Никогда не слышал чтобы MS открыл (для общественного пользования) проприетарный (закрытый) формат своих файлов, который используется в документах MS Word и MS Excel.
"Я делаю программу...", мало делать программу, надо знать формат файлов .doc, чтобы прочитать из нее данные. А для этого, как минимум, надо быть в команде разработчиков MS Word (а вы когда-нибудь были в Рендмоде?).
Впрочем, выход все равно есть. Если мы не можем напрямую работать с файлами формата Word, то воспользуемся возможностью Delphi работать с Word'ом через OLE. Например, так: открыть документ Word (не показывая самого Word'а) и выполнить одну из выше приведенных мной команд.
Код:
procedure Doc2html;
var
WApp : Variant;
begin
try
WApp:= CreateOleObject('Word.Application');
except
on E : EOleError do begin
MessageDlg('MS Word на компьютере не найден!', mtError, [mbOk], 0);
Exit;
end;
end;
try
WApp.DisplayAlerts := false;
WApp.Documents.Open(<имя файла doc>);
WApp.ActiveDocument.SaveAs(FileName:=<имя файла html>,
FileFormat:= wdFormatHTML);
finally
WApp := Unassigned;
end;
end;
В секции uses надо указать один из OLE серверов "word2000", "wordXP" или "word97". Чтобы знать какие есть, смотрите исходники (находятся в Delphi\Ocx\Servers\).
Недостаток: на компе должен быть установлен MS Word.