2012-05-14 6 views
0

私はCから呼び出しています++コードを無視しました。テンプレートws.dotには、FillTemplateAttestsマクロが含まれています。これは、2番目のDDEコマンド呼び出しで実行しようとしています。これらの2つのコマンドは3ヶ月以上正しく機能していました。数日前に2番目のコマンドが機能を中断しました。私はコードのこの部分またはマクロで何かを変更することはできません。FillTemplateAttests。割り込み機能は、ExecuteMacro呼び出しがtrueを返す場合でも、2番目のコマンドを呼び出すと何も起こらないことを意味します(つまり、すべてがdocumentationに従ってOKであることを意味します)。別のコンピュータで同じ文書ws.dotとMyDoc.docを使用して同じプログラムを実行すると、問題はありません。 2回目のコマンドを2回呼び出すと実際には実行されますが、最初の呼び出しは無視されます。WordのDDEコールが2 DDEコマンド

FormDde->DdeClientConv1->ExecuteMacro("[AddAddIn \"C:\\Projects\\wscs-trunk\\bin\\ws.dot\", 1][FileOpen .Name = \"C:\\Projects\\wscs-32x\\doc\\MyDoc.doc\]",false) 
FormDde->DdeClientConv1->ExecuteMacro("[ToolsMacro .Name = \"FillTemplateAttests\", .Run]", false) 
FormDde->DdeClientConv1->ExecuteMacro("[ToolsMacro .Name = \"FillTemplateAttests\", .Run]", false) 

Wordのインストールが壊れているようです。私が問題の核心を見つけるのを助けてくれますか?

補遺:私は行でこれらの3つのコマンドを呼び出すとき

、それらのすべてが実行されています

FormDde->DdeClientConv1->ExecuteMacro("[AddAddIn \"C:\\Projects\\wscs-trunk\\bin\\ws.dot\", 1][FileOpen .Name = \"C:\\Projects\\wscs-32x\\doc\\MyDoc.doc\]",false) 
FormDde->DdeClientConv1->ExecuteMacro("[Beep]", false); 
FormDde->DdeClientConv1->ExecuteMacro("[ToolsMacro .Name = \"FillTemplateAttests\", .Run]", false) 

答えて

0

これは私がなぜ知らない場合でも、私の問題を解決しました:

FormDde->DdeClientConv1->ExecuteMacro("[AddAddIn \"C:\\Projects\\wscs-trunk\\bin\\ws.dot\", 1][FileOpen .Name = \"C:\\Projects\\wscs-32x\\doc\\MyDoc.doc\]",false) 
FormDde->DdeClientConv1->ExecuteMacro("[]", false); 
FormDde->DdeClientConv1->ExecuteMacro("[ToolsMacro .Name = \"FillTemplateAttests\", .Run]", false) 
関連する問題