设为首页 加入收藏

TOP

Teamcenter_NX集成开发:UF_UGMGR函数的使用(三)
2023-07-23 13:35:03 】 浏览:114
Tags:Teamcenter_NX 成开发 UF_UGMGR
, &part_revision);// 获取配置版本 181 _errCode = UF_UGMGR_ask_part_revision_id(part_revision, revision_id);// 获取版本ID 182 183 _errCode = UF_UGMGR_ask_root_folder(&root_folder_tag);// 获取用户根文件夹,即HOME文件夹标识 184 _errCode = UF_UGMGR_ask_user_folder("infodba", &user_folder_tag);// 获取用户文件夹 185 _errCode = UF_UGMGR_ask_user_role(user_role);// 获取用户角色 186 187 std::cout << "\n=================用户文件夹下文件=================" << std::endl; 188 _errCode = list_in_folder(root_folder_tag);// 列出该文件夹下地下所有文件夹和零组件 189 std::cout << "=================用户文件夹下文件=================\n" << std::endl; 190 191 int config_rules_count = 0; 192 char ** config_rules = NULL; 193 _errCode = UF_UGMGR_list_config_rules(&config_rules_count, &config_rules);// 列出所有配置规则,并打印到控制台 194 std::cout << "\n=================所有配置规则=================" << std::endl; 195 for (int idx = 0; idx < config_rules_count; idx++) 196 std::cout << config_rules[idx] << std::endl; 197 UF_free(config_rules); 198 config_rules = NULL; 199 std::cout << "=================所有配置规则=================\n" << std::endl; 200 201 int file_count = 0; 202 char** file_types = NULL; 203 char** file_names = NULL; 204 _errCode = UF_UGMGR_list_part_rev_files(part_revision, &file_count, &file_types, &file_names);// 列出版本下所有数据集文件 205 if (file_count <= 0) return; 206 207 for (int idx = 0; idx < file_count; idx++){ 208 if (file_names[idx] == NULL) continue; 209 210 _errCode = UF_UGMGR_encode_part_filename("000000000AA000082", revision_id, file_types[idx], file_names[idx], encoded_name);// encode组成文件名 211 _errCode = UF_PART_open(encoded_name, &partTag, &error_status);// NX后台打开 212 _errCode = UF_UGMGR_ask_export_directory(partTag, export_dir_name);// 获取export文件夹目录 213 std::cout << "临时export文件夹目录:" << export_dir_name << std::endl; 214 _errCode = UF_PART_free_load_status(&error_status); 215 _errCode = UF_PART_close(partTag, 1, 1); 216 } 217 if (file_count > 0){ 218 UF_free_string_array(file_count, file_names); 219 UF_free_string_array(file_count, file_types); 220 } 221 file_types = NULL; 222 file_names = NULL; 223 } 224 225 //=================== 226 // Entry Point 227 //=================== 228 int main(int argc, char* argv[]) 229 { 230 try{ 231 int _errCode = 0; 232 const char** consolePara = (const char**)(argv); 233 logical is_active; 234 _errCode = UF_is_ugmanager_active(&is_active);// 判断ugmanager环境是否已经初始化 235 if (!is_active) 236 _errCode = UF_UGMGR_initialize(argc, consolePara);// 初始化ugmanager环境 237 do_it(); 238 _errCode = UF_UGMGR_terminate(); 239 return _errCode; 240 } 241 catch (const NXException& e1){ 242 cerr << "NXException: " << e1.ErrorCode() << endl; 243 cerr << e1.Message() << endl; 244 } 245 catch (const exception& e2){ 246 cerr << "Exception: " << e2.what() << endl; 247 } 248 catch (...){ 249 cerr << "Unknown Exception: " << endl; 250 } 251 } View Code

 

调试截图:

 

NX版本配置规则截图:

 

 

版本规则解释:

 

Teamcenter对象介绍:中文是自动翻译的,不准确。详细请看帮助文档:Siemens 文档: Teamcenter Integration for NX

首页 上一页 1 2 3 4 下一页 尾页 3/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇vs2017编译curl 静态库 支持https 下一篇C++内存重叠

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目