diff --git a/.vs/connor_jd/v16/.suo b/.vs/connor_jd/v16/.suo index 2b67ecf..cdb9582 100644 Binary files a/.vs/connor_jd/v16/.suo and b/.vs/connor_jd/v16/.suo differ diff --git a/.vs/connor_jd/v16/Browse.VC.db b/.vs/connor_jd/v16/Browse.VC.db index dbbef26..5122186 100644 Binary files a/.vs/connor_jd/v16/Browse.VC.db and b/.vs/connor_jd/v16/Browse.VC.db differ diff --git a/.vs/connor_jd/v16/Browse.VC.db-shm b/.vs/connor_jd/v16/Browse.VC.db-shm index 25e4b5f..2e2e2e0 100644 Binary files a/.vs/connor_jd/v16/Browse.VC.db-shm and b/.vs/connor_jd/v16/Browse.VC.db-shm differ diff --git a/.vs/connor_jd/v16/ipch/AutoPCH/1faa393a3d639582/ADOCONN.ipch b/.vs/connor_jd/v16/ipch/AutoPCH/1faa393a3d639582/ADOCONN.ipch index 4b599c5..77af6d4 100644 Binary files a/.vs/connor_jd/v16/ipch/AutoPCH/1faa393a3d639582/ADOCONN.ipch and b/.vs/connor_jd/v16/ipch/AutoPCH/1faa393a3d639582/ADOCONN.ipch differ diff --git a/.vs/connor_jd/v16/ipch/AutoPCH/491653eb64ddfd49/JD_BOPINFOTOMEDIDATABASE.ipch b/.vs/connor_jd/v16/ipch/AutoPCH/491653eb64ddfd49/JD_BOPINFOTOMEDIDATABASE.ipch index 1a37ea3..d755e7f 100644 Binary files a/.vs/connor_jd/v16/ipch/AutoPCH/491653eb64ddfd49/JD_BOPINFOTOMEDIDATABASE.ipch and b/.vs/connor_jd/v16/ipch/AutoPCH/491653eb64ddfd49/JD_BOPINFOTOMEDIDATABASE.ipch differ diff --git a/.vs/connor_jd/v16/ipch/AutoPCH/5c49308ac3a8e826/K_UTIL.ipch b/.vs/connor_jd/v16/ipch/AutoPCH/5c49308ac3a8e826/K_UTIL.ipch index 99c9f45..4bd2ead 100644 Binary files a/.vs/connor_jd/v16/ipch/AutoPCH/5c49308ac3a8e826/K_UTIL.ipch and b/.vs/connor_jd/v16/ipch/AutoPCH/5c49308ac3a8e826/K_UTIL.ipch differ diff --git a/.vs/connor_jd/v16/ipch/AutoPCH/6f4b692d591db72c/CURL_UTILS.ipch b/.vs/connor_jd/v16/ipch/AutoPCH/6f4b692d591db72c/CURL_UTILS.ipch new file mode 100644 index 0000000..f3a32bb Binary files /dev/null and b/.vs/connor_jd/v16/ipch/AutoPCH/6f4b692d591db72c/CURL_UTILS.ipch differ diff --git a/.vs/connor_jd/v16/ipch/AutoPCH/d6a4b9f7d29669d4/JD_CHECK_STATUSANDPROP.ipch b/.vs/connor_jd/v16/ipch/AutoPCH/d6a4b9f7d29669d4/JD_CHECK_STATUSANDPROP.ipch index ae142a4..3aaefb8 100644 Binary files a/.vs/connor_jd/v16/ipch/AutoPCH/d6a4b9f7d29669d4/JD_CHECK_STATUSANDPROP.ipch and b/.vs/connor_jd/v16/ipch/AutoPCH/d6a4b9f7d29669d4/JD_CHECK_STATUSANDPROP.ipch differ diff --git a/.vs/connor_jd/v16/ipch/AutoPCH/ec62202ae8c454/TC_LOG.ipch b/.vs/connor_jd/v16/ipch/AutoPCH/ec62202ae8c454/TC_LOG.ipch new file mode 100644 index 0000000..2d960d4 Binary files /dev/null and b/.vs/connor_jd/v16/ipch/AutoPCH/ec62202ae8c454/TC_LOG.ipch differ diff --git a/connor_ldy/JD_BOPInfoToMediDatabase.cxx b/connor_ldy/JD_BOPInfoToMediDatabase.cxx index 2a4cd17..5feaac5 100644 --- a/connor_ldy/JD_BOPInfoToMediDatabase.cxx +++ b/connor_ldy/JD_BOPInfoToMediDatabase.cxx @@ -29,6 +29,8 @@ #include "ado.h" #include #include +#include "k_util.h" +#include "curl_utils.h" using namespace std; #define GUID_LEN 64 @@ -39,6 +41,31 @@ struct CHILD tag_t item; string clone_id; }; + +struct FlowBean { + vector flowList; + tag_t flow_split = NULLTAG; + tag_t flow_combine = NULLTAG; + tag_t flow_end = NULLTAG; + char* BEZFL; // 参考顺序 + string PLNFL = ""; // 序列 + boolean isMain = true; + boolean isOther = false; + vector flow_combine_list; +}; + +struct FlowInfo { + string pre_id; + string pre_rev_id; + string suc_id; + string suc_rev_id; +}; + +struct MaxFlowInfo { + tag_t start_line; + vector all_line; +}; + extern "C" int POM_AM__set_application_bypass(logical bypass); string getGuid() { @@ -53,8 +80,147 @@ string getGuid() { return buffer; } -// 存在问题,工序明显表的主键未取到,孙子节点获取到的是子节点的对象需要处理 +vector getFlowStartsYH(int num, tag_t* c_line_tags) { + vector starts; + for (int i = 0; i < num; i++) { + tag_t gxLine = c_line_tags[i], * successors, * Mfg0predecessors; + int sucCnt = 0, preCnt = 0; + + ITKCALL(AOM_ask_value_tags(gxLine, "Mfg0successors", &sucCnt, &successors)); + ITKCALL(AOM_ask_value_tags(gxLine, "Mfg0predecessors", &preCnt, &Mfg0predecessors)); + if (preCnt == 0 && sucCnt > 0) { + starts.push_back(gxLine); + } + } + return starts; +} + +MaxFlowInfo copy(MaxFlowInfo old_info) { + MaxFlowInfo new_info; + new_info.start_line = old_info.start_line; + for (int num = 0; num < old_info.all_line.size(); num++) { + new_info.all_line.push_back(old_info.all_line[num]); + } + return new_info; +} + +void readGXFlow(tag_t gxLine, vector& all_line_info, map& line_info, MaxFlowInfo max_info) { + FlowInfo flow_info; + tag_t* successors, * Mfg0predecessors; + int sucCnt = 0, preCnt = 0; + char* gx_clone_id = NULL; + ITKCALL(AOM_ask_value_tags(gxLine, "Mfg0successors", &sucCnt, &successors)); + ITKCALL(AOM_ask_value_tags(gxLine, "Mfg0predecessors", &preCnt, &Mfg0predecessors)); + ITKCALL(AOM_ask_value_string(gxLine, "bl_clone_stable_occurrence_id", &gx_clone_id)); + string pre_id = ""; + string pre_rev_id = ""; + string suc_id = ""; + string suc_rev_id = ""; + if (preCnt > 0) { + for (int g = 0; g < preCnt; g++) { + char* pre_item_id = NULL, + * pre_revision_id = NULL; + tag_t pre_gxRev; + ITKCALL(AOM_ask_value_tag(Mfg0predecessors[g], "bl_line_object", &pre_gxRev)); + ITKCALL(AOM_ask_value_string(pre_gxRev, "item_id", &pre_item_id)); + ITKCALL(AOM_ask_value_string(pre_gxRev, "item_revision_id", &pre_revision_id)); + if (g > 0) { + pre_id.append(";"); + pre_rev_id.append(";"); + } + pre_id.append(string(pre_item_id)); + pre_rev_id.append(string(pre_revision_id)); + DOFREE(pre_item_id); + DOFREE(pre_revision_id); + } + } + flow_info.pre_id = pre_id; + flow_info.pre_rev_id = pre_rev_id; + if (sucCnt == 0) { + max_info.all_line.push_back(gxLine); + flow_info.suc_id = suc_id; + flow_info.suc_rev_id = suc_rev_id; + all_line_info.push_back(max_info); + line_info[string(gx_clone_id)] = flow_info; + return; + } + if (sucCnt > 0) { + for (int g = 0; g < sucCnt; g++) { + char* suc_item_id = NULL, + * suc_revision_id = NULL; + tag_t suc_gxRev; + ITKCALL(AOM_ask_value_tag(successors[g], "bl_line_object", &suc_gxRev)); + ITKCALL(AOM_ask_value_string(suc_gxRev, "item_id", &suc_item_id)); + ITKCALL(AOM_ask_value_string(suc_gxRev, "item_revision_id", &suc_revision_id)); + if (g > 0) { + suc_id.append(";"); + suc_rev_id.append(";"); + } + suc_id.append(string(suc_item_id)); + suc_rev_id.append(string(suc_revision_id)); + DOFREE(suc_item_id); + DOFREE(suc_revision_id); + } + } + flow_info.suc_id = suc_id; + flow_info.suc_rev_id = suc_rev_id; + line_info[string(gx_clone_id)] = flow_info; + if (sucCnt > 0) { + max_info.all_line.push_back(gxLine); + for (int i = 0; i < sucCnt; i++) { + // 后驱工序存在多个新增多条线 + MaxFlowInfo curr_max_info; + curr_max_info = copy(max_info); + readGXFlow(successors[i], all_line_info, line_info, curr_max_info); + } + } + DOFREE(gx_clone_id); + DOFREE(successors); + DOFREE(Mfg0predecessors); +} + +void getMainProcess(tag_t* c_line_tags, int c_line_count, map& main_flow, map& line_info) { + int maxLen = 0; + vector all_line_info; + if (c_line_count == 0) { + return; + } + vector startLines = getFlowStartsYH(c_line_count, c_line_tags); + if (startLines.size() > 0) { + char* itemID; + ITKCALL(AOM_ask_value_string(startLines[0], "item_id", &itemID)); + WriteLog("找到工序流起始点 :%s\n", itemID); + DOFREE(itemID); + } + for (int i = 0; i < startLines.size(); i++) { + MaxFlowInfo max_flow_info; + max_flow_info.start_line = startLines[i]; + readGXFlow(startLines[i], all_line_info, line_info, max_flow_info); + } + auto it = std::max_element(all_line_info.begin(), all_line_info.end(), + [](const MaxFlowInfo& a, const MaxFlowInfo& b) { + return a.all_line.size() <= b.all_line.size(); // 注意这里用 <= + // 当 a.size <= b.size 时,认为 a 不大于 b + // 所以当遇到相等的时,不会替换当前的最大值 + }); + if (it != all_line_info.end()) { + WriteLog("主流程的长度为>%d,路线如下:\n", it->all_line.size()); + for (int i = 0; i < it->all_line.size(); i++) { + char* gx_clone_id = NULL; + char* item_id = NULL; + ITKCALL(AOM_ask_value_string(it->all_line[i], "bl_clone_stable_occurrence_id", &gx_clone_id)); + ITKCALL(AOM_ask_value_string(it->all_line[i], "bl_item_item_id", &item_id)); + WriteLog("->%s", item_id); + main_flow[gx_clone_id] = gx_clone_id; + DOFREE(gx_clone_id); + DOFREE(item_id); + } + WriteLog("\n"); + } +} + +// 存在问题,工序明显表的主键未取到,孙子节点获取到的是子节点的对象需要处理 string readBOPXML(map, vector>>& xmlMap, string xmlPath) { time_t currentTime; struct tm* timeInfo; @@ -236,7 +402,7 @@ string loadXml(string xmlUid, map, vector>>& return tableName; } -void loadBom(tag_t top_bom_line_tag, map& child_level1, map>& level1_level2, map& child_level2, map> &gx_gb_bom, map>& gx_gb_zy) { +void loadBom(tag_t top_bom_line_tag, map& child_level1, map>& level1_level2, map& child_level2, map> &gx_gb_bom, map>& gx_gb_zy, map& main_flow, map& line_info) { int child_count = 0; tag_t* child_tags = NULLTAG; //ITKCALL(BOM_line_ask_child_lines(top_bom_line_tag, &child_count, &child_tags)); @@ -244,6 +410,8 @@ void loadBom(tag_t top_bom_line_tag, map& child_level1, map& child_level1, map child_level1, map &gx_cloneid_key) { +void insertGyGxBom(string xmlUid, bool &showError, ado ado0, tag_t gy_line, tag_t gy_item, tag_t gy_rev, map child_level1, map &gx_cloneid_key, map main_flow, map line_info) { WriteLog("记录工艺路线工序明细表数据库\n"); int ifail = 0; - char* type = NULL; // string sqlStr = "insert into "; string updateStr = "update "; @@ -484,6 +689,7 @@ void insertGyGxBom(string xmlUid, bool &showError, ado ado0, tag_t gy_line, tag_ map::iterator child_it; for (child_it = child_level1.begin(); child_it != child_level1.end(); child_it++) { + char* type = NULL; bool isContinue = false; string childColumnStr = ""; string childSelectStr = ""; @@ -495,12 +701,14 @@ void insertGyGxBom(string xmlUid, bool &showError, ado ado0, tag_t gy_line, tag_ tag_t rev = child_it->second.rev; string clone_id = child_it->second.clone_id; string primay_key = ""; + FlowInfo flow_info = line_info[clone_id]; ITKCALL(ifail = AOM_ask_value_string(rev, "object_type", &type)); for (int j = 0; j < childNameVec.size(); j++) { string columnName = childNameVec[j]; string propertyName = childValueVec[j]; string tempValue = " "; + bool isInt = false; if (strcmp(columnName.c_str(), "_FILTERTYPE") == 0) { if (strcmp(propertyName.c_str(), "ALL") == 0) { @@ -527,6 +735,28 @@ void insertGyGxBom(string xmlUid, bool &showError, ado ado0, tag_t gy_line, tag_ childUpdateSelectStr = childUpdateSelectStr.append(columnName).append("='").append(tempValue).append("' "); childUpdateWhere = childUpdateWhere.append(columnName).append("='").append(tempValue).append("'"); } + else if (strcmp(columnName.c_str(), "MES_PRE_BP_ID") == 0) { + tempValue = flow_info.pre_id; + } + else if (strcmp(columnName.c_str(), "MES_PRE_BP_VERSION") == 0) { + tempValue = flow_info.pre_rev_id; + } + else if (strcmp(columnName.c_str(), "MES_NEXT_BP_ID") == 0) { + tempValue = flow_info.suc_id; + } + else if (strcmp(columnName.c_str(), "MES_NEXT_BP_VERSION") == 0) { + tempValue = flow_info.suc_rev_id; + } + else if (strcmp(columnName.c_str(), "MES_CRITICAL_PATH") == 0) { + isInt = true; + auto it = main_flow.find(clone_id); + if (it != main_flow.end()) { + tempValue = "1"; + } + else { + tempValue = "0"; + } + } else { vector propertyVec; Split(propertyName, ".", propertyVec); @@ -573,14 +803,22 @@ void insertGyGxBom(string xmlUid, bool &showError, ado ado0, tag_t gy_line, tag_ if (j < childNameVec.size() - 1) { childColumnStr = childColumnStr.append(","); } - childValueStr = childValueStr.append("'").append(tempValue); - if (j < childNameVec.size() - 1) { - childValueStr = childValueStr.append("',"); + if (isInt) { + childValueStr = childValueStr.append("").append(tempValue); + if (j < childNameVec.size() - 1) { + childValueStr = childValueStr.append(","); + } } else { - childValueStr = childValueStr.append("'"); + childValueStr = childValueStr.append("'").append(tempValue); + if (j < childNameVec.size() - 1) { + childValueStr = childValueStr.append("',"); + } + else { + childValueStr = childValueStr.append("'"); + } } - } + } if (isContinue) { continue; } @@ -612,9 +850,9 @@ void insertGyGxBom(string xmlUid, bool &showError, ado ado0, tag_t gy_line, tag_ selectVec.push_back(selectSql); selectAfterUpdateVec.push_back(updateSelectSql); insertClonIdVec.push_back(clone_id); - char sendChar[400] = ""; + char sendChar[512] = ""; strcpy(sendChar, insertSql.c_str()); - char sendChar2[400] = ""; + char sendChar2[1024] = ""; strcpy(sendChar2, selectSql.c_str()); int result = ado0.ado_QuerySQLNoInputParam(sendChar2); bool resultSql = ado0.executeInsert(sendChar2, sendChar, result); @@ -622,48 +860,8 @@ void insertGyGxBom(string xmlUid, bool &showError, ado ado0, tag_t gy_line, tag_ //if (!resultSql) { // WriteLog("数据库语句插入失败\n"); //} + DOFREE(type); } - DOFREE(type); - //WriteLog("开始更新数据库\n"); - //更新数据库 - //for (int i = 0; i < updateVec.size(); i++) { - // int outputColumn = 0, outputValueCount = 0; - // char*** outputValue = NULL; - // //string updateSql = updateVec[i]; - // //string selectSql = selectVec[i]; - // //string insertSql = insertVec[i]; - // string selectUpdate = selectAfterUpdateVec[i]; - // string clone_id = insertClonIdVec[i]; - // char sendChar[400] = ""; - // char sendChar2[400] = ""; - // char sendChar3[400] = ""; - // //strcpy(sendChar, updateSql.c_str()); - // //strcpy(sendChar2, selectSql.c_str()); - // strcpy(sendChar3, selectUpdate.c_str()); - // int result = 0; - // //int result = ado0.ado_QuerySQLNoInputParam(sendChar2); - // //if (result == 0) { - // // showError = true; - // // WriteLog("工序明细插入失败:%s\n", insertSql.c_str()); - // //} - // //else { - // //bool resultSql = ado0.execute2(sendChar2, sendChar, result); - // WriteLog("查询数据内容:%s\n", sendChar3); - // result = ado0.ado_QuerySQLNoInputParam2(sendChar3, &outputColumn, &outputValueCount, &outputValue); - // WriteLog("查询数据结果:%d\n", result); - // if (result == 0) { - // showError = true; - // //WriteLog("工序明细更新失败:%s\n", updateSql.c_str()); - // } - // else{ - // if (outputValueCount > 0) { - // WriteLog("设值gx_cloneid_key1\n"); - // gx_cloneid_key[clone_id] = string(outputValue[0][0]); - // WriteLog("设值gx_cloneid_key2\n"); - // } - // } - // //} - //} } // 工序工步关系表 @@ -1335,7 +1533,7 @@ void insertGyGxProp(string xmlUid, bool& showError, ado ado0, tag_t gy_line, tag } // 工序工艺文件 -void insertGyGxGywj(string xmlUid, bool& showError, ado ado0, tag_t gy_line, tag_t gy_item, tag_t gy_rev, map child_level1, map> level1_level2, map child_level2) { +void insertGyGxGywj(string xmlUid, string ftp_dir, string username, string pwd, bool& showError, ado ado0, tag_t gy_line, tag_t gy_item, tag_t gy_rev, map child_level1, map> level1_level2, map child_level2) { WriteLog("记录工序工艺文件数据库\n"); int ifail = 0; char* type = NULL; @@ -1631,6 +1829,34 @@ void insertGyGxGywj(string xmlUid, bool& showError, ado ado0, tag_t gy_line, tag childLevel2UpdateWhere = childLevel2UpdateWhere.append(columnName).append("='").append(tempValue).append("'"); DOFREE(spuid); } + else if (strcmp(columnName.c_str(), "FILE_PATH") == 0) { + // 数据集通过ftp传递 + int related_cnt = 0; + char* type_name = NULL, + * item_id = NULL, + * rev_id = NULL; + GRM_relation_t* related_objects = NULL; + ITKCALL(ifail = AOM_ask_value_string(zy_rev, "item_id", &item_id)); + ITKCALL(ifail = AOM_ask_value_string(zy_rev, "item_revision_id", &rev_id)); + ITKCALL(AOM_UIF_ask_value(zy_rev, "object_type", &type_name)); + ITKCALL(GRM_list_all_related_objects(zy_rev, &related_cnt, &related_objects)); + string idAndRev = string(item_id) + "-" + string(rev_id); + for (int i = 0; i < related_cnt; i++) + { + // 判断是否为数据集 + if (checkIsTypeOrSubtype(related_objects[i].secondary, "Dataset") == 1) + { + string path = downloadDataset(related_objects[i].secondary, ftp_dir, type_name, idAndRev, username, pwd); + if (i > 0) { + tempValue = tempValue.append(";"); + } + tempValue = tempValue.append(path); + } + } + DOFREE(type_name); + DOFREE(item_id); + DOFREE(rev_id); + } else { vector propertyVec; Split(propertyName, ".", propertyVec); @@ -2559,8 +2785,9 @@ int JD_BOPInfoToMediDatabase(EPM_action_message_t msg) { MEM_free(argvalue); } //先获取首选项Jd_MES_Info_Connect,解析其中的用户名,密码,配置文件等信息 - vector pref_vec1; + vector pref_vec1, pref_vec2; getPrefStrings1("Jd_MES_Info_Connect", TC_preference_site, pref_vec1); + getPrefStrings1("Jd_MES_Info_Connect", TC_preference_site, pref_vec2); string ip = pref_vec1[0]; string databaseName = pref_vec1[1]; string user = pref_vec1[2]; @@ -2571,6 +2798,9 @@ int JD_BOPInfoToMediDatabase(EPM_action_message_t msg) { string xmlUid4 = pref_vec1[7]; string xmlUid5 = pref_vec1[8]; string xmlUid6 = pref_vec1[9]; + string ftp_dir = pref_vec2[0]; + string username = pref_vec2[1]; + string ftp_pwd = pref_vec2[2]; WriteLog("ip:%s\n", ip.c_str()); WriteLog("databaseName:%s\n", databaseName.c_str()); WriteLog("user:%s\n", user.c_str()); @@ -2581,6 +2811,7 @@ int JD_BOPInfoToMediDatabase(EPM_action_message_t msg) { WriteLog("工序工艺文件xmlUid:%s\n", xmlUid4.c_str()); WriteLog("工艺资源xmlUid:%s\n", xmlUid5.c_str()); WriteLog("工步资源 xmlUid:%s\n", xmlUid6.c_str()); + WriteLog("FTP地址:%s\n", ftp_dir.c_str()); ado ado0; char userName[100]; strcpy(userName, user.c_str()); @@ -2631,11 +2862,13 @@ int JD_BOPInfoToMediDatabase(EPM_action_message_t msg) { map> level1_level2; map child_level2; map> gx_gb_zy; + map main_flow; + map line_info; ITKCALL(ifail = ME_create_bop_window(&bom_window_tag)); ITKCALL(ifail = BOM_set_window_top_line_bvr(bom_window_tag, only_bom, &top_bom_line_tag)); /*ITKCALL(ifail = BOM_create_window(&bom_window_tag)); ITKCALL(ifail = BOM_set_window_top_line_bvr(bom_window_tag, only_bom, &top_bom_line_tag));*/ - loadBom(top_bom_line_tag, child_level1, level1_level2, child_level2, gx_gbs_bom, gx_gb_zy); + loadBom(top_bom_line_tag, child_level1, level1_level2, child_level2, gx_gbs_bom, gx_gb_zy, main_flow, line_info); map::iterator it1; for (it1 = child_level1.begin(); it1 != child_level1.end(); it1++) { @@ -2661,13 +2894,22 @@ int JD_BOPInfoToMediDatabase(EPM_action_message_t msg) { WriteLog("工序clone及工部uid:%s,工部资源数量:%d\n", it5->first.c_str(), it5->second.size()); } - insertGyGxBom(xmlUid1, showError, ado0, top_bom_line_tag, partItem, attachments[i], child_level1, gx_cloneid_key); + map::iterator it5_5; + for (it5_5 = main_flow.begin(); it5_5 != main_flow.end(); it5_5++) { + WriteLog("主路线工序clone:%s\n", it5_5->first.c_str()); + } + + map::iterator it5_6; + for (it5_6 = line_info.begin(); it5_6 != line_info.end(); it5_6++) { + WriteLog("工序clone:%s,前驱:%s,后驱:%s\n", it5_6->first.c_str(), it5_6->second.pre_id.c_str(), it5_6->second.suc_id.c_str()); + } + + insertGyGxBom(xmlUid1, showError, ado0, top_bom_line_tag, partItem, attachments[i], child_level1, gx_cloneid_key, main_flow, line_info); map::iterator it6; for (it6 = gx_cloneid_key.begin(); it6 != gx_cloneid_key.end(); it6++) { WriteLog("工序gx_cloneid_key,key:%s,val:%s\n", it6->first.c_str(), it6->second.c_str()); } - insertGxGb(xmlUid2, showError, ado0, child_level1, gx_cloneid_key, gx_gbs_bom, gx_gb_key); map::iterator it7; @@ -2675,7 +2917,7 @@ int JD_BOPInfoToMediDatabase(EPM_action_message_t msg) { WriteLog("工序gx_gb_key,key:%s,val:%s\n", it7->first.c_str(), it7->second.c_str()); } insertGyGxProp(xmlUid3, showError, ado0, top_bom_line_tag, partItem, attachments[i], child_level1, gx_cloneid_key); - insertGyGxGywj(xmlUid4, showError, ado0, top_bom_line_tag, partItem, attachments[i], child_level1, level1_level2, child_level2); + insertGyGxGywj(xmlUid4, ftp_dir, username, ftp_pwd, showError, ado0, top_bom_line_tag, partItem, attachments[i], child_level1, level1_level2, child_level2); insertGyGxGyzy(xmlUid5, showError, ado0, top_bom_line_tag, partItem, attachments[i], child_level1, level1_level2, child_level2); insertGbzy(xmlUid6, showError, ado0, child_level1, gx_gb_key, gx_gbs_bom, gx_gb_zy); ITKCALL(ifail = ME_close_bop_window(bom_window_tag));//有开必有关 diff --git a/connor_ldy/connor_ldy.vcxproj b/connor_ldy/connor_ldy.vcxproj index 1a4b118..b6e8640 100644 --- a/connor_ldy/connor_ldy.vcxproj +++ b/connor_ldy/connor_ldy.vcxproj @@ -138,7 +138,7 @@ true NDEBUG;_WINDOWS;_AMD64_;_USRDLL;CONNOR_JD_EXPORTS;IPLIB=none;%(PreprocessorDefinitions) true - D:\WorkEnvironment\tc13ITK\include;D:\WorkEnvironment\tc13ITK\include_cpp;C:\TC13\tclib\include;C:\TC13\tclib\include_cpp;C:\environment\Teamcenter-ENV\ITK_Configuration_File\LiYuan\include;C:\environment\Teamcenter-ENV\ITK_Configuration_File\LiYuan\include_cpp;D:\file store\TC\TC13.3\include;DD:\file store\TC\TC13.3\include_cpp;%(AdditionalIncludeDirectories) + D:\WorkEnvironment\tc13ITK\include;D:\WorkEnvironment\tc13ITK\include_cpp;C:\TC13\tclib\include;C:\TC13\tclib\include_cpp;C:\environment\Teamcenter-ENV\ITK_Configuration_File\LiYuan\include;C:\environment\Teamcenter-ENV\ITK_Configuration_File\LiYuan\include_cpp;D:\file store\TC\TC13.3\include;DD:\file store\TC\TC13.3\include_cpp;D:\file store\TC\curllaoban\include;%(AdditionalIncludeDirectories) Windows @@ -155,6 +155,7 @@ + @@ -167,6 +168,7 @@ + diff --git a/connor_ldy/connor_ldy.vcxproj.filters b/connor_ldy/connor_ldy.vcxproj.filters index 4a3136c..b449f02 100644 --- a/connor_ldy/connor_ldy.vcxproj.filters +++ b/connor_ldy/connor_ldy.vcxproj.filters @@ -48,6 +48,9 @@ 澶存枃浠 + + 澶存枃浠 + @@ -110,5 +113,8 @@ 婧愭枃浠 + + 婧愭枃浠 + \ No newline at end of file diff --git a/connor_ldy/curl_utils.cxx b/connor_ldy/curl_utils.cxx new file mode 100644 index 0000000..3d12b78 --- /dev/null +++ b/connor_ldy/curl_utils.cxx @@ -0,0 +1,162 @@ +#include "curl_utils.h" +#include + +// 回调函数,用于处理从服务器接收到的数据 +size_t WriteCallback(void* contents, size_t size, size_t nmemb, std::string* userp) { + size_t totalSize = size * nmemb; + userp->append((char*)contents, totalSize); + return totalSize; +} + +// 回调函数,用于处理接收到的响应头 +size_t HeaderCallback(char* buffer, size_t size, size_t nitems, void* userdata) { + HeaderData* headerData = static_cast(userdata); + std::string header(buffer, size * nitems); + if (!headerData->found && header.find("x-csrf-token:") == 0) { + size_t colonPos = header.find(':'); + if (colonPos != std::string::npos) { + headerData->value = header.substr(colonPos + 1); + headerData->value.erase(0, headerData->value.find_first_not_of(" \t")); + headerData->value.erase(headerData->value.length() - 2); + headerData->found = true; // 标记为已找到 + } + } + + return size * nitems; +} + +vector split_regex(const string& str, const string& pattern) { + vector tokens; + regex rgx(pattern); + sregex_token_iterator iter(str.begin(), str.end(), rgx, -1); + sregex_token_iterator end; + while (iter != end) { + tokens.push_back(*iter++); + } + return tokens; +} + +// 写入回调函数(用于上传文件) +size_t read_callback(void* ptr, size_t size, size_t nmemb, FILE* stream) { + size_t retcode = fread(ptr, size, nmemb, stream); + return retcode; +} + +int sendFileByFtp(string ftp_url, string file_path, string file_dir, string user, string pwd) +{ + int result = 0; + CURL* curl; + CURLcode res; + + // 初始化libcurl + curl_global_init(CURL_GLOBAL_DEFAULT); + curl = curl_easy_init(); + + if (curl) { + // 1. 创建远程目录 + curl_easy_setopt(curl, CURLOPT_URL, ftp_url.c_str()); + curl_easy_setopt(curl, CURLOPT_USERNAME, user.c_str()); + curl_easy_setopt(curl, CURLOPT_PASSWORD, pwd.c_str()); + curl_easy_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS, CURLFTP_CREATE_DIR); + + // 执行目录创建 + res = curl_easy_perform(curl); + if (res != CURLE_OK) { + WriteLog("创建目录失败>%s\n", curl_easy_strerror(res)); + } + + // 2. 上传文件到新目录 + FILE* file = nullptr; + errno_t err = fopen_s(&file, file_path.c_str(), "rb"); + if (err != 0 || file == nullptr) { + // 处理错误 + WriteLog("无法打开本地文件>%s\n", file_path.c_str()); + result = 1; + goto end; + } + //FILE* file = fopen(file_path.c_str(), "rb"); + //if (!file) { + // WriteLog("无法打开本地文件>%s\n", file_path.c_str()); + // result = 1; + // goto end; + //} + + // 设置FTP上传选项 + curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); + curl_easy_setopt(curl, CURLOPT_URL, (ftp_url + file_dir).c_str()); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback); + curl_easy_setopt(curl, CURLOPT_READDATA, file); + + // 获取文件大小 + fseek(file, 0, SEEK_END); + curl_off_t file_size = ftell(file); + fseek(file, 0, SEEK_SET); + curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, file_size); + + // 执行文件上传 + res = curl_easy_perform(curl); + if (res != CURLE_OK) { + WriteLog("上传文件失败:%s\n", curl_easy_strerror(res)); + result = 1; + } + else { + WriteLog("文件上传成功\n"); + } + + fclose(file); + curl_easy_cleanup(curl); + } + +end: + curl_global_cleanup(); + return result; +} + +string postJSON(string url, string body, long& http_code, string& error) +{ + string response_data = ""; + CURL* curl; + CURLcode res; + // 初始化 libcurl 会话 + curl_global_init(CURL_GLOBAL_DEFAULT); + curl = curl_easy_init(); + + if (curl) { + // 设置要访问的 URL + curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST"); + curl_easy_setopt(curl, CURLOPT_URL, url.c_str()); + curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "http"); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); + + // 设置请求头 + struct curl_slist* headers = NULL; + headers = curl_slist_append(headers, "Content-Type: application/json; charset=UTF-8"); + curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); + curl_easy_setopt(curl, CURLOPT_POSTFIELDS, body.c_str()); + curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, body.size()); + + // 设置回调函数以接收响应数据 + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response_data); + + // 执行请求 + res = curl_easy_perform(curl); + + // 检查错误 + if (res != CURLE_OK) + { + error = curl_easy_strerror(res); + + } + curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &http_code); + // 清理资源 + curl_slist_free_all(headers); + curl_easy_cleanup(curl); + } + // 清理全局环境 + curl_global_cleanup(); + + return response_data; +} \ No newline at end of file diff --git a/connor_ldy/curl_utils.h b/connor_ldy/curl_utils.h new file mode 100644 index 0000000..e1b3310 --- /dev/null +++ b/connor_ldy/curl_utils.h @@ -0,0 +1,18 @@ +#pragma once + +#include +#include +#include +#include +#include +#include "tc_log.h" + +using namespace std; +struct HeaderData { + std::string value; + bool found; // 记录是否找到 +}; + +int sendFileByFtp(string ftp_url, string file_path, string file_dir, string user, string pwd); +string postJSON(string url, string token, vector header, string body, long& http_code, string& error); +string postJSON(string url, string body, long& http_code, string& error); \ No newline at end of file diff --git a/connor_ldy/k_util.cpp b/connor_ldy/k_util.cpp index f5e949a..9865dd3 100644 --- a/connor_ldy/k_util.cpp +++ b/connor_ldy/k_util.cpp @@ -187,6 +187,35 @@ bool isType(tag_t item, const char* type) { return false; } +/** + * 判断某个对象是否是类或者子类 + * + * @param objtag 要判断的对象 + * @param type_name 类型的名称 + * + */ +int checkIsTypeOrSubtype(tag_t objtag, char* type_name) { + tag_t type = NULLTAG, + item_type = NULLTAG; + int is_type = 0; + ITKCALL(TCTYPE_ask_object_type(objtag, &type)); + ITKCALL(TCTYPE_find_type(type_name, "", &item_type)); + logical isok = false; + if (item_type != NULLTAG) { + logical isok = FALSE; + ITKCALL(TCTYPE_is_type_of(type, item_type, &isok)); + if (isok) + { + is_type = 1; + } + else + { + is_type = 0; + } + } + return is_type; +} + int WriteToFile(const char* file_path, const char* content) { ofstream file; diff --git a/connor_ldy/k_util.h b/connor_ldy/k_util.h index 28f20ea..165374d 100644 --- a/connor_ldy/k_util.h +++ b/connor_ldy/k_util.h @@ -65,5 +65,6 @@ int WriteToFile(const char* file_path, const char* content); char* G2U(const char* gb2312); char* U2G(const char* utf8); bool isType(tag_t item, const char* type); +int checkIsTypeOrSubtype(tag_t objtag, char* type_name); int GetDatasets(tag_t target_tag, string dataset_rel, string dataset_type, vector& dataset_tags); void set_bypass(logical bypass); \ No newline at end of file diff --git a/connor_ldy/x64/Release/ADOConn.obj b/connor_ldy/x64/Release/ADOConn.obj index f2b1382..948ede8 100644 Binary files a/connor_ldy/x64/Release/ADOConn.obj and b/connor_ldy/x64/Release/ADOConn.obj differ diff --git a/connor_ldy/x64/Release/JD_BOMInfoToMediDatabase.obj b/connor_ldy/x64/Release/JD_BOMInfoToMediDatabase.obj index 5331764..ddc2d67 100644 Binary files a/connor_ldy/x64/Release/JD_BOMInfoToMediDatabase.obj and b/connor_ldy/x64/Release/JD_BOMInfoToMediDatabase.obj differ diff --git a/connor_ldy/x64/Release/JD_BOPInfoToMediDatabase.obj b/connor_ldy/x64/Release/JD_BOPInfoToMediDatabase.obj index 76b7790..0071662 100644 Binary files a/connor_ldy/x64/Release/JD_BOPInfoToMediDatabase.obj and b/connor_ldy/x64/Release/JD_BOPInfoToMediDatabase.obj differ diff --git a/connor_ldy/x64/Release/JD_Check_StatusAndProp.obj b/connor_ldy/x64/Release/JD_Check_StatusAndProp.obj index d0a113f..18ca25e 100644 Binary files a/connor_ldy/x64/Release/JD_Check_StatusAndProp.obj and b/connor_ldy/x64/Release/JD_Check_StatusAndProp.obj differ diff --git a/connor_ldy/x64/Release/JD_FileInfoToMediDatabase.obj b/connor_ldy/x64/Release/JD_FileInfoToMediDatabase.obj index 5d90cdc..ea0ad16 100644 Binary files a/connor_ldy/x64/Release/JD_FileInfoToMediDatabase.obj and b/connor_ldy/x64/Release/JD_FileInfoToMediDatabase.obj differ diff --git a/connor_ldy/x64/Release/JD_ItemInfoToMediDatabase.obj b/connor_ldy/x64/Release/JD_ItemInfoToMediDatabase.obj index cc38872..b8b297c 100644 Binary files a/connor_ldy/x64/Release/JD_ItemInfoToMediDatabase.obj and b/connor_ldy/x64/Release/JD_ItemInfoToMediDatabase.obj differ diff --git a/connor_ldy/x64/Release/NHL_SignOff_Handler.obj b/connor_ldy/x64/Release/NHL_SignOff_Handler.obj index caeda3b..7b08709 100644 Binary files a/connor_ldy/x64/Release/NHL_SignOff_Handler.obj and b/connor_ldy/x64/Release/NHL_SignOff_Handler.obj differ diff --git a/connor_ldy/x64/Release/connor_jd.Build.CppClean.log b/connor_ldy/x64/Release/connor_jd.Build.CppClean.log index 51f0016..dc34b93 100644 --- a/connor_ldy/x64/Release/connor_jd.Build.CppClean.log +++ b/connor_ldy/x64/Release/connor_jd.Build.CppClean.log @@ -1,5 +1,4 @@ d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\vc142.pdb -d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\tinyxmlparser.obj d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\tinyxmlerror.obj d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\tinyxml.obj d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\tinystr.obj @@ -18,7 +17,9 @@ d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\jd_i d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\jd_fileinfotomedidatabase.obj d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\jd_bopinfotomedidatabase.obj d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\jd_bominfotomedidatabase.obj +d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\curl_utils.obj d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\adoconn.obj +d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\connor_ldy\x64\release\tinyxmlparser.obj d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\x64\release\connor_jd.lib d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\x64\release\connor_jd.exp d:\file store\椤圭洰浠g爜\绮鹃洉\jingdiao_connor_jd\x64\release\connor_jd.dll diff --git a/connor_ldy/x64/Release/connor_jd.iobj b/connor_ldy/x64/Release/connor_jd.iobj index cf721e6..ee10321 100644 Binary files a/connor_ldy/x64/Release/connor_jd.iobj and b/connor_ldy/x64/Release/connor_jd.iobj differ diff --git a/connor_ldy/x64/Release/connor_jd.ipdb b/connor_ldy/x64/Release/connor_jd.ipdb index cc436f7..49267bb 100644 Binary files a/connor_ldy/x64/Release/connor_jd.ipdb and b/connor_ldy/x64/Release/connor_jd.ipdb differ diff --git a/connor_ldy/x64/Release/connor_jd.tlog/CL.command.1.tlog b/connor_ldy/x64/Release/connor_jd.tlog/CL.command.1.tlog index 7f02a77..d073441 100644 Binary files a/connor_ldy/x64/Release/connor_jd.tlog/CL.command.1.tlog and b/connor_ldy/x64/Release/connor_jd.tlog/CL.command.1.tlog differ diff --git a/connor_ldy/x64/Release/connor_jd.tlog/CL.read.1.tlog b/connor_ldy/x64/Release/connor_jd.tlog/CL.read.1.tlog index 1fc6756..bad4db2 100644 Binary files a/connor_ldy/x64/Release/connor_jd.tlog/CL.read.1.tlog and b/connor_ldy/x64/Release/connor_jd.tlog/CL.read.1.tlog differ diff --git a/connor_ldy/x64/Release/connor_jd.tlog/CL.write.1.tlog b/connor_ldy/x64/Release/connor_jd.tlog/CL.write.1.tlog index 3f0efe0..b1d1646 100644 Binary files a/connor_ldy/x64/Release/connor_jd.tlog/CL.write.1.tlog and b/connor_ldy/x64/Release/connor_jd.tlog/CL.write.1.tlog differ diff --git a/connor_ldy/x64/Release/connor_jd.tlog/link.command.1.tlog b/connor_ldy/x64/Release/connor_jd.tlog/link.command.1.tlog index 4b156f3..92ef873 100644 Binary files a/connor_ldy/x64/Release/connor_jd.tlog/link.command.1.tlog and b/connor_ldy/x64/Release/connor_jd.tlog/link.command.1.tlog differ diff --git a/connor_ldy/x64/Release/connor_jd.tlog/link.read.1.tlog b/connor_ldy/x64/Release/connor_jd.tlog/link.read.1.tlog index 287f85a..4afa6ab 100644 Binary files a/connor_ldy/x64/Release/connor_jd.tlog/link.read.1.tlog and b/connor_ldy/x64/Release/connor_jd.tlog/link.read.1.tlog differ diff --git a/connor_ldy/x64/Release/connor_jd.tlog/link.write.1.tlog b/connor_ldy/x64/Release/connor_jd.tlog/link.write.1.tlog index 373842e..603ba3d 100644 Binary files a/connor_ldy/x64/Release/connor_jd.tlog/link.write.1.tlog and b/connor_ldy/x64/Release/connor_jd.tlog/link.write.1.tlog differ diff --git a/connor_ldy/x64/Release/connor_ldy.log b/connor_ldy/x64/Release/connor_ldy.log index cbb4ba3..f194e7c 100644 --- a/connor_ldy/x64/Release/connor_ldy.log +++ b/connor_ldy/x64/Release/connor_ldy.log @@ -1,6 +1,7 @@ 锘 ADOConn.cpp D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\ADOConn.cpp(88,13): warning C4305: 鈥渞eturn鈥: 浠庘渋nt鈥濆埌鈥渂ool鈥濇埅鏂 D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\ADOConn.cpp(257,12): warning C4477: 鈥減rintf鈥: 鏍煎紡瀛楃涓测%s鈥濋渶瑕佺被鍨嬧渃har *鈥濈殑鍙傛暟锛屼絾鍙彉鍙傛暟 1 鎷ユ湁浜嗙被鍨嬧淿bstr_t鈥 + curl_utils.cxx JD_BOMInfoToMediDatabase.cpp D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\string_utils.h(134,50): warning C4190: 鈥渞eplace鈥濇湁鎸囧畾鐨 C 閾炬帴锛屼絾杩斿洖浜嗕笌 C 涓嶅吋瀹圭殑 UDT鈥渟td::basic_string,std::allocator>鈥 D:\Installation directory\Microsoft Visual Studio2019\VC\Tools\MSVC\14.29.30133\include\xstring(4871): message : 鍙傝鈥渟td::basic_string,std::allocator>鈥濈殑澹版槑 @@ -46,62 +47,68 @@ D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\string_utils.h(1 D:\Installation directory\Microsoft Visual Studio2019\VC\Tools\MSVC\14.29.30133\include\xstring(4871): message : 鍙傝鈥渟td::basic_string,std::allocator>鈥濈殑澹版槑 D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\string_utils.h(137,39): warning C4190: 鈥淯tf8ToGbk鈥濇湁鎸囧畾鐨 C 閾炬帴锛屼絾杩斿洖浜嗕笌 C 涓嶅吋瀹圭殑 UDT鈥渟td::basic_string,std::allocator>鈥 D:\Installation directory\Microsoft Visual Studio2019\VC\Tools\MSVC\14.29.30133\include\xstring(4871): message : 鍙傝鈥渟td::basic_string,std::allocator>鈥濈殑澹版槑 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(51,2): warning C4996: '_snprintf': This function or variable may be unsafe. Consider using _snprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(94,4): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(97,4): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(109,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(112,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(147,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(158,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(161,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(184,4): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(195,6): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(198,6): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(65,13): warning C4996: 'localtime': This function or variable may be unsafe. Consider using localtime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(222,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(223,2): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(224,2): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(225,2): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(220,19): warning C4996: 'getenv': This function or variable may be unsafe. Consider using _dupenv_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(226,6): warning C4996: 'access': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _access. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(616,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(618,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(465,6): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(551,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(844,28): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(973,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(975,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(821,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(908,9): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1301,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1303,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1148,6): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1238,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1502,37): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1714,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1716,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1468,6): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1556,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1655,9): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1918,37): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2130,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2132,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1884,6): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1972,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2071,9): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2204,28): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2345,34): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2474,7): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2476,7): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2319,9): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2414,11): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2554,6): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2586,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2588,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2650,35): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2522,6): warning C4996: 'localtime': This function or variable may be unsafe. Consider using localtime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2526,97): warning C4996: 'getenv': This function or variable may be unsafe. Consider using _dupenv_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2550,8): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _stricmp. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(78,2): warning C4996: '_snprintf': This function or variable may be unsafe. Consider using _snprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(260,4): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(263,4): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(275,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(278,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(313,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(324,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(327,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(350,4): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(361,6): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(364,6): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(231,13): warning C4996: 'localtime': This function or variable may be unsafe. Consider using localtime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(388,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(389,2): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(390,2): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(391,2): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(386,19): warning C4996: 'getenv': This function or variable may be unsafe. Consider using _dupenv_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(392,6): warning C4996: 'access': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _access. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(524,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(525,3): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(526,3): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(518,2): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(524,21): warning C4996: 'getenv': This function or variable may be unsafe. Consider using _dupenv_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(854,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(856,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(670,6): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(781,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1042,28): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1171,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1173,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1019,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1106,9): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1499,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1501,3): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1346,6): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1436,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1700,37): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1940,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1942,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1666,6): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1754,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1841,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(1881,9): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2144,37): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2356,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2358,5): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2110,6): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2198,7): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2297,9): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2430,28): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2571,34): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2700,7): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2702,7): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2545,9): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2640,11): warning C4996: 'AOM_UIF_ask_value': "AOM_UIF_ask_value" deprecated in Teamcenter "11.1"; Use "AOM_ask_displayable_values" instead. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2780,6): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2817,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2819,2): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2883,35): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2748,6): warning C4996: 'localtime': This function or variable may be unsafe. Consider using localtime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2752,97): warning C4996: 'getenv': This function or variable may be unsafe. Consider using _dupenv_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\JD_BOPInfoToMediDatabase.cxx(2776,8): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _stricmp. See online help for details. JD_FileInfoToMediDatabase.cpp D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\string_utils.h(134,50): warning C4190: 鈥渞eplace鈥濇湁鎸囧畾鐨 C 閾炬帴锛屼絾杩斿洖浜嗕笌 C 涓嶅吋瀹圭殑 UDT鈥渟td::basic_string,std::allocator>鈥 D:\Installation directory\Microsoft Visual Studio2019\VC\Tools\MSVC\14.29.30133\include\xstring(4871): message : 鍙傝鈥渟td::basic_string,std::allocator>鈥濈殑澹版槑 @@ -192,10 +199,10 @@ D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(62,2) D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(76,2): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(82,3): warning C4996: 'mkdir': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _mkdir. See online help for details. D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(56,7): warning C4101: 鈥済uid鈥: 鏈紩鐢ㄧ殑灞閮ㄥ彉閲 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(221,2): warning C4996: 'vsprintf': This function or variable may be unsafe. Consider using vsprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(216,9): warning C4101: 鈥渘ow鈥: 鏈紩鐢ㄧ殑灞閮ㄥ彉閲 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(217,13): warning C4101: 鈥減鈥: 鏈紩鐢ㄧ殑灞閮ㄥ彉閲 -D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(234,26): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(250,2): warning C4996: 'vsprintf': This function or variable may be unsafe. Consider using vsprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(245,9): warning C4101: 鈥渘ow鈥: 鏈紩鐢ㄧ殑灞閮ㄥ彉閲 +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(246,13): warning C4101: 鈥減鈥: 鏈紩鐢ㄧ殑灞閮ㄥ彉閲 +D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\k_util.cpp(263,26): warning C4267: 鈥滃垵濮嬪寲鈥: 浠庘渟ize_t鈥濊浆鎹㈠埌鈥渋nt鈥濓紝鍙兘涓㈠け鏁版嵁 NHL_SignOff_Handler.cpp D:\file store\TC\TC13.3\include\pom\pom\pom.h(801,1): warning C4819: 璇ユ枃浠跺寘鍚笉鑳藉湪褰撳墠浠g爜椤(936)涓〃绀虹殑瀛楃銆傝灏嗚鏂囦欢淇濆瓨涓 Unicode 鏍煎紡浠ラ槻姝㈡暟鎹涪澶 D:\file store\TC\TC13.3\include\pom\pom\pom.h(5415,1): warning C4819: 璇ユ枃浠跺寘鍚笉鑳藉湪褰撳墠浠g爜椤(936)涓〃绀虹殑瀛楃銆傝灏嗚鏂囦欢淇濆瓨涓 Unicode 鏍煎紡浠ラ槻姝㈡暟鎹涪澶 @@ -265,10 +272,11 @@ D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\connor_ldy\tc_util.cpp(63,1 tinystr.cpp tinyxml.cpp tinyxmlerror.cpp + 姝e湪缂栬瘧... tinyxmlparser.cpp 姝e湪鍒涘缓搴 D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\x64\Release\connor_jd.lib 鍜屽璞 D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\x64\Release\connor_jd.exp 姝e湪鐢熸垚浠g爜 Previous IPDB not found, fall back to full compilation. - All 1757 functions were compiled because no usable IPDB/IOBJ from previous compilation was found. + All 2081 functions were compiled because no usable IPDB/IOBJ from previous compilation was found. 宸插畬鎴愪唬鐮佺殑鐢熸垚 connor_ldy.vcxproj -> D:\file store\椤圭洰浠g爜\绮鹃洉\JINGDIAO_connor_jd\x64\Release\connor_jd.dll diff --git a/connor_ldy/x64/Release/curl_utils.obj b/connor_ldy/x64/Release/curl_utils.obj new file mode 100644 index 0000000..93b2b4e Binary files /dev/null and b/connor_ldy/x64/Release/curl_utils.obj differ diff --git a/connor_ldy/x64/Release/k_util.obj b/connor_ldy/x64/Release/k_util.obj index ca9d771..c88fa9f 100644 Binary files a/connor_ldy/x64/Release/k_util.obj and b/connor_ldy/x64/Release/k_util.obj differ diff --git a/connor_ldy/x64/Release/lidy_main.obj b/connor_ldy/x64/Release/lidy_main.obj index f5874ec..a6f3d4b 100644 Binary files a/connor_ldy/x64/Release/lidy_main.obj and b/connor_ldy/x64/Release/lidy_main.obj differ diff --git a/connor_ldy/x64/Release/method.obj b/connor_ldy/x64/Release/method.obj index 7a573a2..9231aa4 100644 Binary files a/connor_ldy/x64/Release/method.obj and b/connor_ldy/x64/Release/method.obj differ diff --git a/connor_ldy/x64/Release/register_handler.obj b/connor_ldy/x64/Release/register_handler.obj index f6ff1fd..2f7977d 100644 Binary files a/connor_ldy/x64/Release/register_handler.obj and b/connor_ldy/x64/Release/register_handler.obj differ diff --git a/connor_ldy/x64/Release/stdafx.obj b/connor_ldy/x64/Release/stdafx.obj index d802e32..2bf2d10 100644 Binary files a/connor_ldy/x64/Release/stdafx.obj and b/connor_ldy/x64/Release/stdafx.obj differ diff --git a/connor_ldy/x64/Release/string_utils.obj b/connor_ldy/x64/Release/string_utils.obj index 7506cea..5e0d753 100644 Binary files a/connor_ldy/x64/Release/string_utils.obj and b/connor_ldy/x64/Release/string_utils.obj differ diff --git a/connor_ldy/x64/Release/tc_log.obj b/connor_ldy/x64/Release/tc_log.obj index f904cf0..0b52279 100644 Binary files a/connor_ldy/x64/Release/tc_log.obj and b/connor_ldy/x64/Release/tc_log.obj differ diff --git a/connor_ldy/x64/Release/tc_util.obj b/connor_ldy/x64/Release/tc_util.obj index f048854..c3b75b9 100644 Binary files a/connor_ldy/x64/Release/tc_util.obj and b/connor_ldy/x64/Release/tc_util.obj differ diff --git a/connor_ldy/x64/Release/testReadXml.obj b/connor_ldy/x64/Release/testReadXml.obj index 975e3fc..e1dcfa3 100644 Binary files a/connor_ldy/x64/Release/testReadXml.obj and b/connor_ldy/x64/Release/testReadXml.obj differ diff --git a/connor_ldy/x64/Release/tinystr.obj b/connor_ldy/x64/Release/tinystr.obj index a238807..bfcbdc1 100644 Binary files a/connor_ldy/x64/Release/tinystr.obj and b/connor_ldy/x64/Release/tinystr.obj differ diff --git a/connor_ldy/x64/Release/tinyxml.obj b/connor_ldy/x64/Release/tinyxml.obj index c5d524e..87780df 100644 Binary files a/connor_ldy/x64/Release/tinyxml.obj and b/connor_ldy/x64/Release/tinyxml.obj differ diff --git a/connor_ldy/x64/Release/tinyxmlerror.obj b/connor_ldy/x64/Release/tinyxmlerror.obj index bf879ac..c290355 100644 Binary files a/connor_ldy/x64/Release/tinyxmlerror.obj and b/connor_ldy/x64/Release/tinyxmlerror.obj differ diff --git a/connor_ldy/x64/Release/tinyxmlparser.obj b/connor_ldy/x64/Release/tinyxmlparser.obj index cfcbd6a..b116dda 100644 Binary files a/connor_ldy/x64/Release/tinyxmlparser.obj and b/connor_ldy/x64/Release/tinyxmlparser.obj differ diff --git a/connor_ldy/x64/Release/vc142.pdb b/connor_ldy/x64/Release/vc142.pdb index f202526..3c1116d 100644 Binary files a/connor_ldy/x64/Release/vc142.pdb and b/connor_ldy/x64/Release/vc142.pdb differ diff --git a/x64/Release/connor_jd.dll b/x64/Release/connor_jd.dll index 53ac368..b0bab7e 100644 Binary files a/x64/Release/connor_jd.dll and b/x64/Release/connor_jd.dll differ diff --git a/x64/Release/connor_jd.pdb b/x64/Release/connor_jd.pdb index 525a049..9be38a4 100644 Binary files a/x64/Release/connor_jd.pdb and b/x64/Release/connor_jd.pdb differ