Difference between revisions of "Zh/Documentation/DevGuide/WritingUNO/C++/Provide Implementation Environment"
From Apache OpenOffice Wiki
< Zh | Documentation
m (New page: {{Documentation/DevGuide/WritingUNOTOC/Zh |WritingUNO2d=block |ShowPrevNext=block |PrevPage=Zh/Documentation/DevGuide/WritingUNO/C++/Write Registration Info Using a Helper Method |NextPage...) |
m |
||
| (6 intermediate revisions by the same user not shown) | |||
| Line 7: | Line 7: | ||
[[en:Documentation/DevGuide/WritingUNO/C++/Provide Implementation Environment]] | [[en:Documentation/DevGuide/WritingUNO/C++/Provide Implementation Environment]] | ||
{{DISPLAYTITLE:提供实现环境}} | {{DISPLAYTITLE:提供实现环境}} | ||
| + | |||
名为 <code>component_getImplementationEnvironment()</code> 的函数将通知共享库组件加载程序,建立库时使用了哪一个编译程序。如果使用不同的编译程序编译了不同的组件,则此信息是必需的。一个特定的 C++ 编译程序叫做一个环境。如果使用了不同的编译程序,加载程序必须将接口从一个编译程序环境连接到另一个编译程序环境,以建立对象之间的通信基础结构。必须在 UNO 运行时中安装相应的 C++ 连接。在大多数情况下,上述函数可以用以下方法实现: | 名为 <code>component_getImplementationEnvironment()</code> 的函数将通知共享库组件加载程序,建立库时使用了哪一个编译程序。如果使用不同的编译程序编译了不同的组件,则此信息是必需的。一个特定的 C++ 编译程序叫做一个环境。如果使用了不同的编译程序,加载程序必须将接口从一个编译程序环境连接到另一个编译程序环境,以建立对象之间的通信基础结构。必须在 UNO 运行时中安装相应的 C++ 连接。在大多数情况下,上述函数可以用以下方法实现: | ||
| Line 19: | Line 20: | ||
</source> | </source> | ||
| + | 宏 <code>CPPU_CURRENT_LANGUAGE_BINDING_NAME</code> 是一个由编译环境定义的 C 字符串(如果您使用 SDK 编译环境)。例如,使用 Microsoft Visual C++ 编译程序编译时,它被定义为 "<code>msci</code>",但是使用 GNU gcc 3 编译时,则被定义为 "<code>gcc3</code>"。 | ||
| − | |||
{{PDL1}} | {{PDL1}} | ||
[[Category:文档/开发者指南/编写 UNO 组件]] | [[Category:文档/开发者指南/编写 UNO 组件]] | ||
Latest revision as of 08:53, 30 July 2008
名为 component_getImplementationEnvironment() 的函数将通知共享库组件加载程序,建立库时使用了哪一个编译程序。如果使用不同的编译程序编译了不同的组件,则此信息是必需的。一个特定的 C++ 编译程序叫做一个环境。如果使用了不同的编译程序,加载程序必须将接口从一个编译程序环境连接到另一个编译程序环境,以建立对象之间的通信基础结构。必须在 UNO 运行时中安装相应的 C++ 连接。在大多数情况下,上述函数可以用以下方法实现:
extern "C" void SAL_CALL component_getImplementationEnvironment(
sal_Char const ** ppEnvTypeName, uno_Environment ** ppEnv )
{
*ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
}
宏 CPPU_CURRENT_LANGUAGE_BINDING_NAME 是一个由编译环境定义的 C 字符串(如果您使用 SDK 编译环境)。例如,使用 Microsoft Visual C++ 编译程序编译时,它被定义为 "msci",但是使用 GNU gcc 3 编译时,则被定义为 "gcc3"。
| Content on this page is licensed under the Public Documentation License (PDL). |