Не работает передача данных по OLE в русский Excel
Nomadic отвечает:
A: (SM): Дело в том что в VCL твои команды OLE2 передаются Excel'у в русском контексте (не знаю, как это правильно назвать). Для исправления необходимо найти в файле OLEAUTO.pas в функции GetIDsOfNames строчку
if
и заменить ее на
if
После этого у меня Excel стал понимать нормальные английские команды :)). Необходимая комбинация для установки английского языка взята из C-шных хедеров.
Microsoft Word
Как отследить открытие и закрытие документов в приложении Microsoft Word?
Nomadic советует:
В копилку. Исходный код, FAQ — желающие могут взять с Internet сами (информация взята спроверено — работает).
…
public
{ Public declarations }
FWordApp: _Application;
FWordDoc: _Document;
FWordSink: TWordConnection;
…
procedure
var
PointContainer: IConnectionPointContainer;
Point: IConnectionPoint;
begin
try
// TWordConnection is the COM object which receives the
// notifications from Word. Make sure to free WordSink when
// you are done with it.
WordSink := TWordConnection.Create;
WordSink.WordApp := WordApp;
WordSink.WordDoc := WordDoc;
// Sink with a Word application
OleCheck(WordApp.QueryInterface(IConnectionPointContainer, PointContainer));
if
OleCheck(PointContainer.FindConnectionPoint(ApplicationEvents, Point));
if
end
// Sink with a Word document advise
OleCheck(WordDoc.QueryInterface(IConnectionPointContainer, PointContainer));
if
OleCheck(PointContainer.FindConnectionPoint(DocumentEvents, Point));
if
end
excepton
ShowMessage(E.Message);
end
end
procedure
begin
FWordApp := CoApplication_.Create;
FWordDoc := FWordApp.Documents.Add(EmptyParam, EmptyParam);
FWordApp.Visible := True;StartWordConnection(FWordApp, FWordDoc, FWordSink);
end
procedure
begin
FWordApp := CoApplication_.Create;
FWordDoc := FWordApp.Documents.Add(EmptyParam, EmptyParam);
FWordApp.Visible := True;
StartWordConnection(FWordApp, FWordDoc, FWordSink);
end
procedure
begin
FWordApp.Quit(EmptyParam, EmptyParam, EmptyParam);
end
unit
interface
uses
type
protected
Бьерн Страуструп , Бьёрн Страуструп , Валерий Федорович Альмухаметов , Ирина Сергеевна Козлова
Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT