first commit

master
洪丞进 2 months ago
commit 33a08f1ab7

Binary file not shown.

Binary file not shown.

@ -0,0 +1,26 @@

Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "T5Sign_ITK", "T5Sign_ITK\T5Sign_ITK.vcproj", "{095F51C1-D017-4120-9F23-C4D6BDEADDE8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Debug|Win32.ActiveCfg = Debug|Win32
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Debug|Win32.Build.0 = Debug|Win32
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Debug|x64.ActiveCfg = Debug|x64
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Debug|x64.Build.0 = Debug|x64
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Release|Win32.ActiveCfg = Release|Win32
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Release|Win32.Build.0 = Release|Win32
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Release|x64.ActiveCfg = Release|x64
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -0,0 +1,26 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "T5Sign_ITK", "T5Sign_ITK\T5Sign_ITK.vcxproj", "{095F51C1-D017-4120-9F23-C4D6BDEADDE8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Debug|Win32.ActiveCfg = Debug|Win32
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Debug|Win32.Build.0 = Debug|Win32
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Debug|x64.ActiveCfg = Debug|x64
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Debug|x64.Build.0 = Debug|x64
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Release|Win32.ActiveCfg = Release|Win32
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Release|Win32.Build.0 = Release|Win32
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Release|x64.ActiveCfg = Release|x64
{095F51C1-D017-4120-9F23-C4D6BDEADDE8}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -0,0 +1,36 @@
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\T5SIGN_ITK.PCH
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\STDAFX.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\VC110.PDB
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\HS_SET_SIGNOFF.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\PX_CAXATOPDF.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\T5SIGN_ITK.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\LIB_CUSTOM_MAIN.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\STRING_HELPER.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\STRING_UTILS.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\CLEAR_FORM_PROP.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\CONNOR_UTIL.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\EPM_REGISTER_HANDLER.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\EPM_SIGN_REV.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\EPM_SIGNOFF_DATASET.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\ERP_UTILS.OBJ
Z:\D-2\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\DEBUG\SPACE_NODE.OBJ
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\clear_form_prop.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\connor_util.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\epm_register_handler.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\epm_signoff_dataset.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\epm_sign_rev.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\erp_utils.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\HS_set_signoff.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\lib_custom_main.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\PX_CaxaToPDF.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\space_node.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\stdafx.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\string_helper.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\string_utils.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\T5Sign_ITK.obj
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\cl.command.1.tlog
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\CL.read.1.tlog
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\CL.write.1.tlog
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\T5Sign_ITK.pch
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\vc110.idb
Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Debug\vc110.pdb

@ -0,0 +1,2 @@
#v4.0:v110:false
Debug|Win32|Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\|

@ -0,0 +1,288 @@
生成启动时间为 2024/7/19 18:15:47。
1>项目“Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\T5Sign_ITK.vcxproj”在节点 2 上(Rebuild 个目标)。
1>ClCompile:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\CL.exe /c /I"Z:\D-2\WorkEnvironment\tc8ITK\32\include" /I"Z:\D-2\WorkEnvironment\tc8ITK\32\include_cpp" /ZI /nologo /W3 /WX- /Od /Oy- /D WIN32 /D _DEBUG /D _WINDOWS /D IPLIB /D _WINDLL /D _UNICODE /D UNICODE /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Yc"stdafx.h" /Fp"Debug\T5Sign_ITK.pch" /Fo"Debug\\" /Fd"Debug\vc110.pdb" /Gd /TP /analyze- /errorReport:prompt stdafx.cpp
stdafx.cpp
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\CL.exe /c /I"Z:\D-2\WorkEnvironment\tc8ITK\32\include" /I"Z:\D-2\WorkEnvironment\tc8ITK\32\include_cpp" /ZI /nologo /W3 /WX- /Od /Oy- /D WIN32 /D _DEBUG /D _WINDOWS /D IPLIB /D _WINDLL /D _UNICODE /D UNICODE /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Debug\\" /Fd"Debug\vc110.pdb" /Gd /TP /analyze- /errorReport:prompt HS_pdf_signoff.cpp HS_set_signoff.cpp PX_CaxaToPDF.cpp T5Sign_ITK.cpp lib_custom_main.cpp string_helper.cpp string_utils.cxx clear_form_prop.cpp connor_util.cpp epm_register_handler.cpp epm_sign_rev.cxx epm_signoff_dataset.cxx erp_utils.cxx space_node.cpp
space_node.cpp
1>z:\d-2\workenvironment\tc8itk\32\include\pom\pom\pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\qry\qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
erp_utils.cxx
epm_signoff_dataset.cxx
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(148): warning C4101: “user_lib_env”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(148): warning C4101: “pTempStr”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(147): warning C4101: “iCnt”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(182): warning C4101: “new_file_name”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(180): warning C4101: “file_descriptor”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(338): warning C4101: “user_lib_env”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(338): warning C4101: “pTempStr”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(337): warning C4101: “iCnt”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(423): warning C4101: “user_lib_env”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(423): warning C4101: “pTempStr”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(422): warning C4101: “iCnt”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(510): warning C4101: “user_lib_env”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(510): warning C4101: “pTempStr”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(509): warning C4101: “iCnt”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(597): warning C4101: “user_lib_env”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(597): warning C4101: “pTempStr”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(596): warning C4101: “iCnt”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(735): warning C4018: “<”: 有符号/无符号不匹配
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(699): warning C4101: “aUserTag”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(701): warning C4101: “decision_date”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(700): warning C4101: “userName”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(699): warning C4101: “responsibleParty”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(924): warning C4101: “desc_path”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_signoff_dataset.cxx(1226): warning C4800: “BOOL”: 将值强制为布尔值“true”或“false”(性能警告)
epm_sign_rev.cxx
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_sign_rev.cxx(202): warning C4129: “c”: 不可识别的字符转义序列
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_sign_rev.cxx(119): warning C4101: “userName”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_sign_rev.cxx(187): warning C4101: “is_valid”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_sign_rev.cxx(713): warning C4102: “end_handler”: 未引用的标签
epm_register_handler.cpp
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(54): warning C4018: “<”: 有符号/无符号不匹配
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(68): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\stdio.h(218) : 参见“fopen”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(84): warning C4172: 返回局部变量或临时变量的地址
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(64): warning C4101: “str”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(102): warning C4101: “p”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(100): warning C4101: “expire_date”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(100): warning C4101: “env”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(100): warning C4101: “date_buf”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(101): warning C4101: “now”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(100): warning C4101: “temp1”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(100): warning C4101: “temp2”: 未引用的局部变量
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_register_handler.cpp(104): warning C4101: “mth_tag”: 未引用的局部变量
connor_util.cpp
1>z:\d-2\workenvironment\tc8itk\32\include\pom\pom\pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\qry\qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
clear_form_prop.cpp
1>z:\d-2\workenvironment\tc8itk\32\include\pom\pom\pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\qry\qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\clear_form_prop.cpp(75): warning C4101: “DataSetType”: 未引用的局部变量
string_utils.cxx
1>z:\d-2\workenvironment\tc8itk\32\include\pom\pom\pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
string_helper.cpp
lib_custom_main.cpp
T5Sign_ITK.cpp
PX_CaxaToPDF.cpp
1>z:\d-2\workenvironment\tc8itk\32\include\pom\pom\pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\qry\qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(164): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\time.inl(112) : 参见“localtime”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(232): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(249) : 参见“stricmp”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(237): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(240): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(249) : 参见“stricmp”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(245): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(248): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(249) : 参见“stricmp”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(253): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(256): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(249) : 参见“stricmp”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(261): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(264): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(249) : 参见“stricmp”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(269): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(272): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(249) : 参见“stricmp”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(277): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(332): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\stdlib.h(449) : 参见“getenv”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(334): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(335): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(336): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(347): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(348): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(349): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(350): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(351): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(352): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(353): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(354): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(359): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(362): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(363): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(364): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(365): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\px_caxatopdf.cpp(422): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
HS_set_signoff.cpp
1>z:\d-2\workenvironment\tc8itk\32\include\pom\pom\pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\qry\qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(189): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(238): warning C4018: “<”: 有符号/无符号不匹配
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(243): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(244): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(250): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(251): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(257): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(258): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(260): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(261): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(263): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(264): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(272): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(275): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(278): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(281): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(286): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(293): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(293): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\stdlib.h(449) : 参见“getenv”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(294): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(295): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(296): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\stdio.h(218) : 参见“fopen”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(321): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(322): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(333): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(334): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(347): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(348): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(361): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(362): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(377): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\stdlib.h(449) : 参见“getenv”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(385): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\time.inl(112) : 参见“localtime”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(386): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\stdio.h(357) : 参见“sprintf”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(387): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(408): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(413): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(425): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(427): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(429): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(431): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(433): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(110) : 参见“strcpy”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(435): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(437): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(439): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(457): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(458): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(459): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(460): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_set_signoff.cpp(461): 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.
c:\program files (x86)\microsoft visual studio 11.0\vc\include\string.h(115) : 参见“strcat”的声明
HS_pdf_signoff.cpp
1>z:\d-2\workenvironment\tc8itk\32\include\pom\pom\pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\qry\qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\workenvironment\tc8itk\32\include\bom\bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\hs_pdf_signoff.cpp(247): warning C4101: “desc_path”: 未引用的局部变量
正在生成代码...
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_sign_rev.cxx(200): warning C4700: 使用了未初始化的局部变量“comments”
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_sign_rev.cxx(471): warning C4700: 使用了未初始化的局部变量“person_name”
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\CL.exe /c /I"Z:\D-2\WorkEnvironment\tc8ITK\32\include" /I"Z:\D-2\WorkEnvironment\tc8ITK\32\include_cpp" /ZI /nologo /W3 /WX- /Od /Oy- /D WIN32 /D _DEBUG /D _WINDOWS /D IPLIB /D _WINDLL /D _UNICODE /D UNICODE /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Debug\\" /Fd"Debug\vc110.pdb" /Gd /TC /analyze- /errorReport:prompt common_itk_util.c
common_itk_util.c
1>z:\d-2\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\common_itk_util.c(91): warning C4013: “AM__set_application_bypass”未定义假设外部返回 int
ResourceCompile:
C:\Program Files (x86)\Windows Kits\8.0\bin\x86\rc.exe /D _UNICODE /D UNICODE /l"0x0409" /nologo /fo"Debug\T5Sign_ITK.res" T5Sign_ITK.rc
Link:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\Debug\T5Sign_ITK.dll" /INCREMENTAL /NOLOGO "Z:\D-2\WorkEnvironment\tc8ITK\32\lib\*.lib" kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /NODEFAULTLIB:libuser_exits.ar.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\Debug\T5Sign_ITK.pdb" /SUBSYSTEM:WINDOWS /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\Debug\T5Sign_ITK.lib" /MACHINE:X86 /SAFESEH /DLL Debug\T5Sign_ITK.res
Debug\HS_pdf_signoff.obj
Debug\HS_set_signoff.obj
Debug\PX_CaxaToPDF.obj
Debug\stdafx.obj
Debug\T5Sign_ITK.obj
Debug\common_itk_util.obj
Debug\lib_custom_main.obj
Debug\string_helper.obj
Debug\string_utils.obj
Debug\clear_form_prop.obj
Debug\connor_util.obj
Debug\epm_register_handler.obj
Debug\epm_sign_rev.obj
Debug\epm_signoff_dataset.obj
Debug\erp_utils.obj
Debug\space_node.obj
1>HS_pdf_signoff.obj : warning LNK4075: 忽略“/EDITANDCONTINUE”(由于“/SAFESEH”规范)
正在创建库 Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\Debug\T5Sign_ITK.lib 和对象 Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\Debug\T5Sign_ITK.exp
1>epm_register_handler.obj : error LNK2019: 无法解析的外部符号 _PX_pdf_signoff该符号在函数 _USERSERVICE_custom_register_handlers 中被引用
1>Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\Debug\T5Sign_ITK.dll : fatal error LNK1120: 1 个无法解析的外部命令
1>已完成生成项目“Z:\D-2\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\T5Sign_ITK.vcxproj”(Rebuild 个目标)的操作 - 失败。
生成失败。
已用时间 00:00:58.57

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -0,0 +1,584 @@
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc/preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include <assert.h>
#include <stdio.h>
#include <string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <string>
#include <vector>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <vector>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <sa/tcfile.h>
#include "epm_handler_common.h"
#include "error_handling.h"
#include "string_utils.h"
#include <string>
#include <vector>
#include <map>
#include <fstream>
#include <epm/epm.h>
#include <epm/epm_toolkit_tc_utils.h>
#include <ict/ict_userservice.h>
#include <tccore/item.h>
#include <ae/ae.h>
#include <tc/folder.h>
#include <tccore/aom.h>
#include <sa/sa.h>
#include <tccore/aom_prop.h>
#include <property/prop_errors.h>
#include <tccore/workspaceobject.h>
#include <tc/preferences.h>
#include <tccore/imantype.h>
#include <tccore//grm.h>
#include <tccore/grmtype.h>
#include <sa/am.h>
#include <cfm/cfm.h>
#include <bom/bom.h>
#include <tccore/uom.h>
#include <ps/ps.h>
#include <epm/signoff.h>
#include <fclasses/tc_date.h>
#include <ics\ics2.h>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <vector>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <sa/tcfile.h>
#include "epm_handler_common.h"
#include "error_handling.h"
#include "string_utils.h"
#include <string>
#include <vector>
#include <map>
#include <direct.h>
#include <fstream>
#include <io.h>
#include <epm/epm.h>
#include <epm/epm_toolkit_tc_utils.h>
#include <ict/ict_userservice.h>
#include <tccore/item.h>
#include <ae/ae.h>
#include <tc/folder.h>
#include <tccore/aom.h>
#include <sa/sa.h>
#include <tccore/aom_prop.h>
#include <property/prop_errors.h>
#include <tccore/workspaceobject.h>
#include <tc/preferences.h>
#include <tccore/imantype.h>
#include <tccore//grm.h>
#include <tccore/grmtype.h>
#include <sa/am.h>
#include <cfm/cfm.h>
#include <bom/bom.h>
#include <tccore/uom.h>
#include <ps/ps.h>
#include <epm/signoff.h>
#include <fclasses/tc_date.h>
#include <ics\ics2.h>
#include <stdio.h>
#include <io.h> // 在Windows系统中需要用到这个头文件
#include <stdlib.h> // 提供exit和 EXIT_FAILURE 宏
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <stdlib.h>
#include <itk\bmf.h>
#include <sys/stat.h>
#include <stdio.h>
#include <string.h>
#include <stdio.h>
#include <stdio.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <itk\bmf.h>
#include <map>
#include <fstream>
#include <direct.h>
#include <io.h>
#include <epm/epm.h>
#include <epm/epm_toolkit_tc_utils.h>
#include <ict/ict_userservice.h>
#include <tccore/item.h>
#include <ae/ae.h>
#include <tc/folder.h>
#include <tccore/aom.h>
#include <sa/am.h>
#include <tccore/aom.h>
#include <sa/sa.h>
#include <tccore/aom_prop.h>
#include <property/prop_errors.h>
#include <tccore/workspaceobject.h>
#include <tc/preferences.h>
#include <tccore/imantype.h>
#include <tccore/grm.h>
#include <tccore/grmtype.h>
#include <sa/am.h>
#include <cfm/cfm.h>
#include <bom/bom.h>
#include <tccore/uom.h>
#include <ps/ps.h>
#include <epm/signoff.h>
#include <fclasses/tc_date.h>
#include <ics\ics2.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <tccore\aom.h>
#include <stdlib.h>
#include <itk\bmf.h>
#include <epm\releasestatus.h>
#include "epm_handler_common.h"
#include "common_itk_util.h"
#include <tccore/aom.h>
#include <tccore/aom_prop.h>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <vector>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <sa/tcfile.h>
#include "epm_handler_common.h"
#include "error_handling.h"
#include "string_utils.h"
#include <string>
#include <vector>
#include <map>
#include <direct.h>
#include <fstream>
#include <io.h>
#include <epm/epm.h>
#include <epm/epm_toolkit_tc_utils.h>
#include <ict/ict_userservice.h>
#include <tccore/item.h>
#include <ae/ae.h>
#include <tc/folder.h>
#include <tccore/aom.h>
#include <sa/sa.h>
#include <tccore/aom_prop.h>
#include <property/prop_errors.h>
#include <tccore/workspaceobject.h>
#include <tc/preferences.h>
#include <tccore/imantype.h>
#include <tccore//grm.h>
#include <tccore/grmtype.h>
#include <sa/am.h>
#include <cfm/cfm.h>
#include <bom/bom.h>
#include <tccore/uom.h>
#include <ps/ps.h>
#include <epm/signoff.h>
#include <fclasses/tc_date.h>
#include <ics\ics2.h>
#include <stdio.h>
#include <io.h> // 在Windows系统中需要用到这个头文件
#include <stdlib.h> // 提供exit和 EXIT_FAILURE 宏
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <stdlib.h>
#include <itk\bmf.h>
#include <bmf\libuserext_exports.h>
#include <sys/stat.h>
#include <stdio.h>
#include <string.h>
#include <stdio.h>
#include <stdio.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream>
#include <chrono>
#include <filesystem>
#include <iostream>
#include <ctime>
#include <direct.h>
using namespace std;
#define ITK_err 919821
extern "C" int POM_AM__set_application_bypass(logical bypass);
void Split1(string strArg, string spliter, vector<string>& ans)
{
ans.clear();
size_t index0 = 0;
string one_arg;
if (strArg.find_first_not_of(' ') == string::npos)
strArg = "";
while (strArg.size() > 0)
{
index0 = strArg.find_first_of(spliter);
if (index0 != string::npos)
{
one_arg = strArg.substr(0, index0);
strArg = strArg.substr(index0 + 1);
ans.push_back(one_arg);
}
else
{
ans.push_back(strArg);
break;
}
}
}
bool file_exists1(const char* filepath) {
struct stat st;
if (stat(filepath, &st) == 0) {
// 文件存在
return true;
} else {
// 文件不存在或出现错误
if (errno == ENOENT) {
// 明确是文件不存在
return false;
} else {
// 其他错误打印错误信息并返回false
perror("An error occurred while checking the file");
return false;
}
}
}
//电子签名
int PX_pdf_signoff(EPM_action_message_t msg) {
int ifail = ITK_ok;
//流程节点相关
tag_t root_task = NULLTAG, * sub_tasks = NULL, current_task = NULLTAG, type_tag = NULLTAG;
int sub_task_count = 0;
char root_task_name[128] = "", task_name[128] = "";
int occur_of_counts = 0;
tag_t* taskAttches = NULLTAG;
char tgt_type[WSO_name_size_c + 1] = "", * type_class;
////循环内部变量
tag_t cur_task = NULLTAG;
//节点循环处理变量
tag_t itemrevision = NULLTAG, master_form_rel_type = NULLTAG;
int form_count = 0;
tag_t* form_list = NULL, master_form = NULLTAG;
char* TC_master_form_rtype1 = "IMAN_specification";
char* TC_specification_rtype1 = "IMAN_specification";
current_task = msg.task;
//CreateLogFile("PLA8_signoff",&txtfile);
printf("电子签名 开始执行\n");
printf("=========================================================\n");
POM_AM__set_application_bypass(true);
//首选项的值
printf("获取首选项的值\n");
int path_count; char** path_values;
PREF_ask_char_values("PX_SignatureImagePath", &path_count, &path_values);
//获取属性
EPM_ask_root_task(msg.task, &root_task);
EPM_ask_sub_tasks(root_task, &sub_task_count, &sub_tasks);
EPM_ask_attachments(root_task, EPM_target_attachment, &occur_of_counts, &taskAttches);
printf("%d target attachment found", occur_of_counts);
for (int count = 0; count < occur_of_counts; count++)
{
printf("开始获取类型\n");
ITKCALL(AOM_ask_value_string(taskAttches[count], "object_type", &type_class));
printf("tag_type=%s\n", type_class);
printf("类型%s\n",type_class);
//过滤掉非版本对象
if (((strstr(type_class, "Revision") != NULL) || (strstr(type_class, "revision") != NULL))
&& (strstr(type_class, "Master") == NULL) && (strstr(type_class, "master") == NULL)
&& (strstr(type_class, "BOM") == NULL) && (strstr(type_class, "bom") == NULL) && (strstr(type_class, "Bom") == NULL))
{
printf("获取到了版本对象\n");
itemrevision = taskAttches[count];
//获得数据集
printf("开始获取规范关系数据集\n");
tag_t relation_type = NULLTAG;
//tag_t attach_relation_type = NULLTAG;
ITKCALL(GRM_find_relation_type(TC_specification_rtype1, &relation_type));
tag_t* secondary_objects = NULLTAG;
int ds_count = 0;
char* dataset_type = NULL, * desc_value = NULL, * file_path = NULL, * desc_path;
ITKCALL(GRM_list_secondary_objects_only(itemrevision, relation_type, &ds_count, &secondary_objects));
for (int j = 0; j < ds_count; j++)
{
printf("进1\n");
ITKCALL(AOM_ask_value_string(secondary_objects[j], "object_type", &dataset_type));
int des_count = 0;
tag_t* dess = NULL;
printf("dataset_type=%s\n", dataset_type);
if (strcmp(dataset_type, "PDF") != 0) {
if (dataset_type != NULL) {
MEM_free(dataset_type);
dataset_type = NULL;
}
continue;
}
ITKCALL(AOM_ask_value_tags(secondary_objects[j], "ref_list", &des_count, &dess));
if (des_count < 1) {
printf("该数据集引用数量错误\n");
continue;
}
else {
char* sizeFile;
AOM_ask_value_string(dess[0], "file_size", &sizeFile);
printf("sizeFile %s \n", sizeFile);
if (strcmp(sizeFile, "0 bytes") == 0) {
printf("文件大小是0bytes\n");
continue;
}
}
tag_t spec_dataset_rev = NULLTAG,
ref_object = NULLTAG;
char* ref_object_name = NULL;
AE_reference_type_t reference_type;
char* datasetName = NULL;
char pathname[1024] = "";
char origin_file_name[1024] = "";
vector<string> type_vec;
printf("开始判断类型\n");
if (strcmp(dataset_type, "PDF") == 0) {
printf("pdf类型\n");
int values_count = 0;
char** values;
char* value;
ITKCALL(PREF_ask_char_values("PX_signoff_pdf_attr", &values_count, &values));
char signoffValue[1024] = "\0";
for (int i = 0; i < values_count; i++)
{
printf("values=%s\n", values[i]);
Split1(values[i], "=", type_vec);
ITKCALL(AOM_ask_value_string(itemrevision, type_vec[1].c_str(), &value));
strcat(signoffValue, type_vec[0].c_str());
strcat(signoffValue, "=");
//判断是否包含后缀名
//判断路径下是否有文件存在
char* getpath = path_values[0];
printf("getpath:%s\n",getpath);
char temPath[512];
strcpy(temPath, getpath); // 先复制str1的内容
strcat(temPath, value); // 再拼接str2的内容
printf("temPath:%s\n",temPath);
char jpgfile[600];
char pngfile[600];
char tiffile[600];
strcpy(jpgfile,temPath);
strcat(jpgfile,".jpg");
strcpy(pngfile,temPath);
strcat(pngfile,".png");
strcpy(tiffile,temPath);
strcat(tiffile,".tif");
if (file_exists1(jpgfile)) {
strcat(signoffValue, jpgfile);
}else if(file_exists1(pngfile)){
strcat(signoffValue, pngfile);
}else if(file_exists1(tiffile)){
strcat(signoffValue, tiffile);
}else{
strcat(signoffValue, value);
}
//strcat(signoffValue, value);
strcat(signoffValue, "|");
MEM_free(value);
type_vec.clear();
}
MEM_free(values);
printf("signoffValue=%s\n", signoffValue);
char path[128] = "\0";
strcat(path, getenv("TEMP"));
strcat(path, "\\");
strcat(path, "PDFsignoff.txt");
FILE* fpWrite = fopen(path, "w");
fprintf(fpWrite, "%s", signoffValue);
fclose(fpWrite);
//MEM_free(fpWrite);
AOM_ask_value_string(secondary_objects[j], "object_name", &datasetName);
AE_ask_dataset_latest_rev(secondary_objects[j], &spec_dataset_rev);
AOM_ask_value_string(spec_dataset_rev, "object_name", &ref_object_name);
printf("ref_object_name=%s\n", ref_object_name);
char ref_name[WSO_name_size_c + 1] = "PDF_Reference";
AE_ask_dataset_named_ref(spec_dataset_rev, ref_name, &reference_type, &ref_object);
if (ref_object == NULLTAG)
{
printf("\nref_object is NULLTAG\n");
return ITK_ok;
}
printf("reference_type=%d\n", reference_type);
if (reference_type == AE_PART_OF)
{
printf("获取数据集文件路径\n");
ITKCALL(IMF_ask_file_pathname(ref_object, SS_WNT_MACHINE, pathname));
printf("获取文件名称\n");
IMF_ask_original_file_name(ref_object, origin_file_name);
char new_ds_name[WSO_name_size_c + 1] = "";
printf("生成新的文件名称\n");
char* new_file_name = USER_new_file_name(new_ds_name, ref_name, "pdf", 0);
printf("获取缓存路径\n");
char* temp_dir = getenv("temp");
char temp_file[SS_MAXPATHLEN] = "";
char temp_file2[SS_MAXPATHLEN] = "";
strcpy(temp_file, temp_dir);
strcat(temp_file, "\\");
strcat(temp_file, new_file_name);
printf("导出数据集文件到%s\n",temp_file);
IMF_export_file(ref_object, temp_file);
if (strstr(new_file_name, ".pdf") != NULL) {
sprintf(temp_file2, "%s\\1%s", temp_dir, new_file_name);
}
else {
sprintf(temp_file2, "%s\\1%s.pdf", temp_dir, new_file_name);
}
printf("生成新的文件%s\n",new_file_name);
printf("\ntemp_file=%s\n", temp_file);
char cmd[256] = "";
char* tc_root_dir = getenv("tc_root");
strcpy(cmd, "java -jar ");
strcat(cmd, tc_root_dir);
strcat(cmd, "\\bin\\PX_PDFSignoff.jar");
strcat(cmd, " \"");
strcat(cmd, path);
strcat(cmd, "\" \"");
strcat(cmd, temp_file);
strcat(cmd, "\" \"");
strcat(cmd, temp_file2);
strcat(cmd, "\"");
printf("\n%s\n", cmd);
system(cmd);
tag_t new_file_tag = NULLTAG;
IMF_file_t file_descriptor;
if (temp_file2 != NULL) {
IMF_import_file(temp_file2, new_file_name, SS_BINARY, &new_file_tag, &file_descriptor);
}
else
{
IMF_import_file(temp_file, new_file_name, SS_BINARY, &new_file_tag, &file_descriptor);
}
AOM_lock(new_file_tag);
IMF_set_original_file_name(new_file_tag, origin_file_name);
IMF_close_file(file_descriptor);
AOM_save(new_file_tag);
AOM_unlock(new_file_tag);
AOM_lock(spec_dataset_rev);
AE_remove_dataset_named_ref_by_tag(spec_dataset_rev, ref_name, ref_object);
AE_add_dataset_named_ref(spec_dataset_rev, ref_name, AE_PART_OF, new_file_tag);
AOM_save(spec_dataset_rev);
AOM_unlock(spec_dataset_rev);
//2024.7.19快速发布
int temp_count = 1;
tag_t* release_objs = NULL;
tag_t release_status = NULLTAG;
release_objs = (tag_t*)MEM_alloc(temp_count * sizeof(tag_t));
release_objs[0] = spec_dataset_rev;
ITKCALL(CR_create_release_status("Released", &release_status));
ITKCALL(EPM_add_release_status(release_status, temp_count, release_objs, TRUE));
}
}
MEM_free(dataset_type);
}
}
}
POM_AM__set_application_bypass(false);
printf("=========================================================\n");
printf("电子签名 结束\n");
printf("=========================================================\n");
return ITK_ok;
}

@ -0,0 +1,510 @@
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <vector>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <sa/tcfile.h>
#include "epm_handler_common.h"
#include "error_handling.h"
#include "string_utils.h"
#include <string>
#include <vector>
#include <map>
#include <direct.h>
#include <fstream>
#include <io.h>
#include <epm/epm.h>
#include <epm/epm_toolkit_tc_utils.h>
#include <ict/ict_userservice.h>
#include <tccore/item.h>
#include <ae/ae.h>
#include <tc/folder.h>
#include <tccore/aom.h>
#include <sa/sa.h>
#include <tccore/aom_prop.h>
#include <property/prop_errors.h>
#include <tccore/workspaceobject.h>
#include <tc/preferences.h>
#include <tccore/imantype.h>
#include <tccore//grm.h>
#include <tccore/grmtype.h>
#include <sa/am.h>
#include <cfm/cfm.h>
#include <bom/bom.h>
#include <tccore/uom.h>
#include <ps/ps.h>
#include <epm/signoff.h>
#include <fclasses/tc_date.h>
#include <ics\ics2.h>
#include <stdio.h>
#include <io.h> // 在Windows系统中需要用到这个头文件
#include <stdlib.h> // 提供exit和 EXIT_FAILURE 宏
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <stdlib.h>
#include <itk\bmf.h>
#include <bmf\libuserext_exports.h>
#include <sys/stat.h>
#include <stdio.h>
#include <string.h>
#include <stdio.h>
#include <stdio.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
#define ITK_err 919821
extern "C" int POM_AM__set_application_bypass(logical bypass);
string replace_all_distinct(char* strC, char* old_valueC, char* new_valueC)
{
string str = strC;
string old_value = old_valueC;
string new_value = new_valueC;
for (string::size_type pos(0); pos != string::npos; pos += new_value.length()) {
if ((pos = str.find(old_value, pos)) != string::npos)
str.replace(pos, old_value.length(), new_value);
else break;
}
return str;
//strC = bstr;
//strcpy(strC,bstr);
}
void Split2(string strArg, string spliter, vector<string>& ans)
{
ans.clear();
size_t index0 = 0;
string one_arg;
if (strArg.find_first_not_of(' ') == string::npos)
strArg = "";
while (strArg.size() > 0)
{
index0 = strArg.find_first_of(spliter);
if (index0 != string::npos)
{
one_arg = strArg.substr(0, index0);
strArg = strArg.substr(index0 + 1);
ans.push_back(one_arg);
}
else
{
ans.push_back(strArg);
break;
}
}
}
char* removeLastCharsFromPath(char* filePath, int n) {
char* ext = strrchr(filePath, '.');
if (ext && strlen(ext) >= 5) {
ext[strlen(ext) - n] = '\0';
}
return filePath; // 返回修改后的路径
}
int fileExists(const char* filePath) {
struct stat st;
return stat(filePath, &st) == 0;
}
bool file_exists(const char* filepath) {
struct stat st;
if (stat(filepath, &st) == 0) {
// 文件存在
return true;
} else {
// 文件不存在或出现错误
if (errno == ENOENT) {
// 明确是文件不存在
return false;
} else {
// 其他错误打印错误信息并返回false
perror("An error occurred while checking the file");
return false;
}
}
}
int PX_set_signoff(EPM_action_message_t msg) {
printf("===================================\n");
printf("word/excel文档签名 开始\n");
printf("===================================\n");
int ifail = ITK_ok;
int att_cnt = 0, jpg_count = 0;
tag_t task_tag = NULLTAG,
root_task_tag = NULLTAG,
* attachments = NULL;
//节点循环处理变量
char* argflag = NULL, * argvalue = NULL, * arg = NULL;
int arg_cnt = 0;
char sign_attr[2048] = "";
arg_cnt = TC_number_of_arguments(msg.arguments);
printf("参数个数为:%d\n", arg_cnt);
if (arg_cnt > 0)
{
for (int i = 0; i < arg_cnt; i++)
{
//获取下一个参数从0开始
arg = TC_next_argument(msg.arguments);
//获取参数的名称和值
ITK_ask_argument_named_value((const char*)arg, &argflag, &argvalue);
if (strcmp(argflag, "sign") == 0)
{
if (argvalue != NULL)
{
strcpy(sign_attr, argvalue);
}
}
}
MEM_free(argflag);
MEM_free(argvalue);
}
tag_t itemrevision = NULLTAG;
printf("开超级权限\n");
POM_AM__set_application_bypass(true);
task_tag = msg.task;
char* taskName;
EPM_ask_root_task(task_tag, &root_task_tag);
AOM_ask_value_string(root_task_tag, "job_name", &taskName);
//EPM_ask_name2(root_task_tag, &taskName);
EPM_ask_attachments(root_task_tag, EPM_target_attachment, &att_cnt, &attachments);
//首选项的值
printf("获取首选项的值\n");
int path_count; char** path_values;
PREF_ask_char_values("PX_SignatureImagePath", &path_count, &path_values);
if (path_count==0) {
EMH_store_error_s1(EMH_severity_user_error, EMH_USER_error_base, "首选项【PX_SignatureImagePath】未配置。请检查");
return -1;
}
if (att_cnt > 0) {
for (int i = 0; i < att_cnt; i++)
{
int doc_num = 0;
tag_t* doc_tags = NULL;
tag_t* dataFile = NULL;
int fileNum = 0;
char* tag_type;
char* type;
ITKCALL(AOM_ask_value_string(attachments[i], "object_type", &tag_type));
printf("tag_type=%s\n", tag_type);
if (strstr(tag_type, "Revision") != NULL && strstr(tag_type, "Master") == NULL)
{
itemrevision = attachments[i];
/* int values_count = 0;
char** values;
char* value;
ITKCALL(PREF_ask_char_values("HS2_signoff_attr", &values_count, &values));*/
vector<string> sign_vec;
Split2(sign_attr, ";", sign_vec);
char signoffValue[1024] = "\0";
vector<string> type_vec;
char* value;
for (int i = 0; i < sign_vec.size(); i++)
{
printf("values=%s\n", sign_vec[i].c_str());
Split2(sign_vec[i].c_str(), "=", type_vec);
ITKCALL(AOM_ask_value_string(itemrevision, type_vec[1].c_str(), &value));
strcat(signoffValue, type_vec[0].c_str());
strcat(signoffValue, "=");
//判断是否包含后缀名
//判断路径下是否有文件存在
char* getpath = path_values[0];
printf("getpath:%s\n",getpath);
char temPath[512];
strcpy(temPath, getpath); // 先复制str1的内容
strcat(temPath, value); // 再拼接str2的内容
printf("temPath:%s\n",temPath);
char jpgfile[600];
char pngfile[600];
char tiffile[600];
strcpy(jpgfile,temPath);
strcat(jpgfile,".jpg");
strcpy(pngfile,temPath);
strcat(pngfile,".png");
strcpy(tiffile,temPath);
strcat(tiffile,".tif");
printf("判断%s是否存在",&jpgfile);
printf("判断%s是否存在",&pngfile);
printf("判断%s是否存在",&tiffile);
if (file_exists(jpgfile)) {
printf("%s存在",&jpgfile);
strcat(signoffValue, jpgfile);
}else if(file_exists(pngfile)){
printf("%s存在",&pngfile);
strcat(signoffValue, pngfile);
}else if(file_exists(tiffile)){
printf("%s存在",&tiffile);
strcat(signoffValue, tiffile);
}else{
printf("都不存在");
strcat(signoffValue, value);
}
strcat(signoffValue, "|");
MEM_free(value);
type_vec.clear();
}
//MEM_free(values);
printf("signoffValue=%s\n", signoffValue);
char path[128] = "\0";
strcat(path, getenv("TEMP"));
strcat(path, "\\");
strcat(path, "signoff.txt");
FILE* fpWrite = fopen(path, "w");
fprintf(fpWrite, "%s", signoffValue);
fclose(fpWrite);
printf("path:%s",path);
ITKCALL(AOM_ask_value_tags(itemrevision, "IMAN_specification", &doc_num, &doc_tags));
if (doc_num > 0)
{
for (int i = 0; i < doc_num; i++)
{
ITKCALL(AOM_ask_value_string(doc_tags[i], "object_type", &type));
printf("type=%s\n", type);
tag_t spec_dataset_rev = NULLTAG, ref_object = NULLTAG;
AE_reference_type_t reference_type;
printf("获取最新的数据及版本\n");
AE_ask_dataset_latest_rev(doc_tags[i], &spec_dataset_rev);
printf("获取最新的数据及版本\n");
char* new_file_name = NULL;
char origin_file_name[1024] = "";
char pathname[SS_MAXPATHLEN] = "";
char ref_name[WSO_name_size_c + 1] = "";
char cmd[256] = "";
bool flag = false;
printf("开始判读文件类型\n");
if (strcmp(type, "MSWordX") == 0) {
//ITKCALL(AOM_ask_value_tags(doc_tags[i],"ref_list",&fileNum,&dataFile));
strcpy(cmd, "SubstMacros-MSWord.wsf");
strcpy(ref_name, "word");
AE_ask_dataset_named_ref(spec_dataset_rev, ref_name, &reference_type, &ref_object);
if (reference_type == AE_PART_OF)
{
char new_ds_name[WSO_name_size_c + 1] = "";
new_file_name = USER_new_file_name(new_ds_name, ref_name, "docx", 0);
flag = true;
}
}
else if (strcmp(type, "MSWord") == 0) {
//ITKCALL(AOM_ask_value_tags(doc_tags[i],"ref_list",&fileNum,&dataFile));
strcpy(cmd, "SubstMacros-MSWord.wsf");
strcpy(ref_name, "word");
AE_ask_dataset_named_ref(spec_dataset_rev, ref_name, &reference_type, &ref_object);
if (reference_type == AE_PART_OF)
{
char new_ds_name[WSO_name_size_c + 1] = "";
new_file_name = USER_new_file_name(new_ds_name, ref_name, "doc", 0);
flag = true;
}
}
else if (strcmp(type, "MSExcelX") == 0)
{
printf("开始调用脚本");
//ITKCALL(AOM_ask_value_tags(doc_tags[i],"ref_list",&fileNum,&dataFile));
strcpy(cmd, "SetPicture-MSExcel.wsf");
strcpy(ref_name, "excel");
AE_ask_dataset_named_ref(spec_dataset_rev, ref_name, &reference_type, &ref_object);
if (reference_type == AE_PART_OF)
{
char new_ds_name[WSO_name_size_c + 1] = "";
new_file_name = USER_new_file_name(new_ds_name, ref_name, "xlsx", 0);
flag = true;
}
}
else if (strcmp(type, "MSExcel") == 0)
{
printf("开始获取调用脚本\n");
//ITKCALL(AOM_ask_value_tags(doc_tags[i],"ref_list",&fileNum,&dataFile));
strcpy(cmd, "SetPicture-MSExcel.wsf");
strcpy(ref_name, "excel");
AE_ask_dataset_named_ref(spec_dataset_rev, ref_name, &reference_type, &ref_object);
if (reference_type == AE_PART_OF)
{
char new_ds_name[WSO_name_size_c + 1] = "";
new_file_name = USER_new_file_name(new_ds_name, ref_name, "xls", 0);
flag = true;
}
}
if (ref_object == NULLTAG || !flag) {
continue;
}
printf("1\n");
ITKCALL(IMF_ask_file_pathname(ref_object, SS_WNT_MACHINE, pathname));
IMF_ask_original_file_name(ref_object, origin_file_name);
char* temp_dir = getenv("temp");
char temp_file[2048] = "";
char temp_file1[2048] = "";
char temp_file2[2048] = "";
char time1[256] = "\0";
char file_path[128] = "\0";
printf("2\n");
time_t t = time(0);
tm* local = localtime(&t);
sprintf(time1, "%d%d%d%d%d%d", local->tm_year, local->tm_mon, local->tm_mday, local->tm_hour, local->tm_min, local->tm_sec);
strcpy(temp_file, temp_dir);
string folderPath = "";
folderPath.append("D:\\Siemens\\Officesignofflogs\\");
string task_name = taskName;
printf("3\n");
if (strstr(task_name.c_str(), "/") != NULL) {
task_name = replace_all_distinct(taskName, "/", " ");
}
if (strstr(task_name.c_str(), "\\") != NULL) {
task_name = replace_all_distinct(taskName, "\\", " ");
}
folderPath.append(task_name);
folderPath.append("-");
folderPath.append(time1);
if (0 != _access(folderPath.c_str(), 0))
{
// if this folder not exist, create a new one.
ITKCALL(::_mkdir(folderPath.c_str())); // 返回 0 表示创建成功,-1 表示失败
//换成 ::_mkdir ::_access 也行,不知道什么意思
}
printf("4\n");
strcat(temp_file, "\\");
printf("4.1\n");
printf("4.2\n");
printf( "临时文件路径:%s", temp_file);
strcat(temp_file, new_file_name);
printf("temfile:%s",temp_file);
if ((_access(temp_file, 0)) != -1) {
if (!remove(temp_file)) {
remove(temp_file);
}
}
printf("\n开始导出文件\n");
ITKCALL(IMF_export_file(ref_object, temp_file));
char* filName;
ITKCALL(AOM_ask_value_string(ref_object,"file_name",&filName));
printf("4.3\n");
strcpy(temp_file1, folderPath.c_str());
printf("4.4\n");
strcat(temp_file1, "\\");
printf("4.5\n");
strcat(temp_file1, "签字前文件 ");
printf("4.6\n");
strcat(temp_file1, new_file_name);
printf("4.7\n");
strcpy(temp_file2, folderPath.c_str());
printf("4.8\n");
strcat(temp_file2, "\\");
printf("4.9\n");
strcat(temp_file2, "签字后文件 ");
printf("4.10\n");
strcat(temp_file2, new_file_name);
printf("4.11\n");
printf("5\n");
string from = temp_file, to = temp_file1, to2 = temp_file2;
ifstream in(from, ios::in | ios::binary);
if (!in)
{
return 1;
}
ofstream out(to, ios::out | ios::binary);
char ch;
while (in.get(ch))
{
out.put(ch);
}
printf("6\n");
in.close();
out.close();
strcat(cmd, " \"");
strcat(cmd, temp_file);
strcat(cmd, "\" \"");
strcat(cmd, path);
strcat(cmd, "\"");
printf("\n%s\n", cmd);
system(cmd);
char ch2;
ifstream in2(from, ios::in | ios::binary);
if (!in2)
{
return 1;
}
ofstream out2(to2, ios::out | ios::binary);
//char ch;
while (in2.get(ch2))
{
out2.put(ch2);
}
in.close();
out.close();
tag_t new_file_tag = NULLTAG;
IMF_file_t file_descriptor;
IMF_import_file(temp_file, new_file_name, SS_BINARY, &new_file_tag, &file_descriptor);
IMF_set_original_file_name(new_file_tag, origin_file_name);
IMF_close_file(file_descriptor);
AOM_save(new_file_tag);
//AOM_unlock(new_file_tag);
AOM_lock(spec_dataset_rev);
AE_remove_dataset_named_ref_by_tag(spec_dataset_rev, ref_name, ref_object);
AE_add_dataset_named_ref(spec_dataset_rev, ref_name, AE_PART_OF, new_file_tag);
AOM_save(spec_dataset_rev);
AOM_unlock(spec_dataset_rev);
}
}
}
}
}
printf("关超级权限\n");
POM_AM__set_application_bypass(false);
printf("===================================\n");
printf("word/excel文档签名 结束\n");
printf("===================================\n");
return ifail;
}

@ -0,0 +1,730 @@
#include "epm_handler_common.h"
#include "common_itk_util.h"
#include <tccore/aom.h>
#include <tccore/aom_prop.h>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <vector>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include<assert.h>
#include<stdio.h>
#include<string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include <sa/tcfile.h>
#include "epm_handler_common.h"
#include "error_handling.h"
#include "string_utils.h"
#include <string>
#include <vector>
#include <map>
#include <direct.h>
#include <fstream>
#include <io.h>
#include <epm/epm.h>
#include <epm/epm_toolkit_tc_utils.h>
#include <ict/ict_userservice.h>
#include <tccore/item.h>
#include <ae/ae.h>
#include <tc/folder.h>
#include <tccore/aom.h>
#include <sa/sa.h>
#include <tccore/aom_prop.h>
#include <property/prop_errors.h>
#include <tccore/workspaceobject.h>
#include <tc/preferences.h>
#include <tccore/imantype.h>
#include <tccore//grm.h>
#include <tccore/grmtype.h>
#include <sa/am.h>
#include <cfm/cfm.h>
#include <bom/bom.h>
#include <tccore/uom.h>
#include <ps/ps.h>
#include <epm/signoff.h>
#include <fclasses/tc_date.h>
#include <ics\ics2.h>
#include <stdio.h>
#include <io.h> // 在Windows系统中需要用到这个头文件
#include <stdlib.h> // 提供exit和 EXIT_FAILURE 宏
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <stdlib.h>
#include <itk\bmf.h>
#include <bmf\libuserext_exports.h>
#include <sys/stat.h>
#include <stdio.h>
#include <string.h>
#include <stdio.h>
#include <stdio.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream>
#include <chrono>
#include <filesystem>
#include <iostream>
#include <ctime>
#include <windows.h>
#include <iostream>
#include <string>
#include <cwchar>
#include <direct.h>
std::string removeFileExtension(const std::string& filePath) {
size_t dotPos = filePath.find_last_of('.'); // 查找最后一个'.'的位置
if (dotPos == std::string::npos) {
// 如果没有找到'.',说明文件名没有后缀,直接返回原文件名
return filePath;
} else {
// 找到了'.',则返回从开始到'.'前的子串,即去除了后缀名的文件名
return filePath.substr(0, dotPos);
}
}
//导入数据集
int import_dataset_file_binary(tag_t dataset, const char* temp_path, const char* ref_name, char* ext, char* fullfilename, char* original_name)
{
int ifail = ITK_ok;
tag_t new_file_tag = NULLTAG;
IMF_file_t file_descriptor = NULL;
AOM_refresh(dataset, FALSE);
char* new_file_name = NULL;
char new_ds_name[WSO_name_size_c + 1] = "";
char* filename = NULL;
new_file_name = USER_new_file_name(new_ds_name, ref_name, ext, 0);
filename = strrchr(fullfilename, '\\') + 1;
if (filename == NULL)
return ITK_ok;
ITKCALL(ifail = IMF_import_file(fullfilename, new_file_name, SS_BINARY, &new_file_tag, &file_descriptor));
ITKCALL(ifail = IMF_set_original_file_name(new_file_tag, original_name));
ITKCALL(ifail = IMF_close_file(file_descriptor));
ITKCALL(ifail = AOM_save(new_file_tag));
AOM_unlock(new_file_tag);
ITKCALL(ifail = AOM_refresh(new_file_tag, FALSE));
//添加至命名引用
ITKCALL(ifail = AOM_lock(dataset));
if (ifail != ITK_ok) { return ifail; }
ITKCALL(ifail = RES_checkout(dataset, "import file", NULL, temp_path, RES_EXCLUSIVE_RESERVE));
if (ifail != ITK_ok) { return ifail; }
ITKCALL(ifail = AE_remove_dataset_named_ref(dataset, ref_name));
if (ifail != ITK_ok) { return ifail; }
ITKCALL(ifail = AOM_save(dataset));
ITKCALL(ifail = AE_add_dataset_named_ref(dataset, ref_name, AE_PART_OF, new_file_tag));
AOM_save(dataset);
ITKCALL(ifail = RES_checkin(dataset));
AOM_unlock(dataset);
//ITKCALL( AOM_refresh( dataset, FALSE ) );
return ifail;
}
char* Utf8ToGbk(const char* src_str)
{
int len = MultiByteToWideChar(CP_UTF8, 0, src_str, -1, NULL, 0);
wchar_t* wszGBK = (wchar_t*)MEM_alloc((len + 1) * sizeof(wchar_t));
memset(wszGBK, 0, len * 2 + 2);
MultiByteToWideChar(CP_UTF8, 0, src_str, -1, wszGBK, len);
len = WideCharToMultiByte(CP_ACP, 0, wszGBK, -1, NULL, 0, NULL, NULL);
char* szGBK = (char*)MEM_alloc((len + 1) * sizeof(char));
memset(szGBK, 0, len + 1);
WideCharToMultiByte(CP_ACP, 0, wszGBK, -1, szGBK, len, NULL, NULL);
return szGBK;
}
char* remove_suffix(char* file) {
char* last_dot = strrchr(file, '.');
if (last_dot != NULL && strrchr(file, '\\') < last_dot)
*last_dot = '\0';
return file;
}
std::string getCurrentTimestamp() {
time_t rawtime;
struct tm * timeinfo;
char buffer[80];
time(&rawtime);
timeinfo = localtime(&rawtime);
// Format: YYYYMMDDHHMMSS
strftime(buffer, 80, "%Y%m%d%H%M%S", timeinfo);
return buffer;
}
// Function to create directory if not exists, and then create a timestamp folder inside it
bool createTimestampDirectory(const std::string& parentPath, const std::string& timestamp) {
// Convert string paths to char* for use with _mkdir
const char* parentPathCStr = parentPath.c_str();
std::string fullPath = parentPath + "\\" + timestamp;
const char* fullPathCStr = fullPath.c_str();
// Check if the parent directory exists
if (_access(parentPathCStr, 0) != 0) {
// If not, attempt to create it
if (_mkdir(parentPathCStr) != 0) {
std::cerr << "Failed to create directory: " << parentPath << std::endl;
return false;
}
}
// Attempt to create the timestamp directory
if (_mkdir(fullPathCStr) != 0 && errno != EEXIST) { // EEXIST means the directory already exists
std::cerr << "Failed to create directory: " << fullPath << std::endl;
return false;
}
return true;
}
extern "C" int POM_AM__set_application_bypass(logical bypass);
void startJavaJarInNewProcess(const std::wstring& jarPath, const std::wstring& rev_uids, const std::wstring& puids, const std::wstring& tcstatus, const std::wstring& compyname, const std::wstring& identity) {
std::wstring cmd = L"java -jar \"" + jarPath + L"\" \"" + rev_uids + L"\" \"" + puids + L"\" \"" + tcstatus + L"\" \"" + compyname + L"\" \"" + identity + L"\"";
std::wstring batchFile = L"run_jar.bat";
// 将命令写入批处理文件
printf("将命令写入批处理文件\n");
std::wofstream file(batchFile); // 使用 wofstream 支持宽字符
if (file.is_open()) {
file << cmd << std::endl;
file.close();
// 使用 ShellExecute 启动批处理文件
printf("使用 ShellExecute 启动批处理文件\n");
if (ShellExecute(NULL, L"open", batchFile.c_str(), NULL, NULL, SW_SHOW) <= (HINSTANCE)32) {
printf("ShellExecute failed\n");
std::cerr << "ShellExecute failed." << std::endl;
}
} else {
printf("Unable to create batch file\n");
std::cerr << "Unable to create batch file." << std::endl;
}
}
void startJavaJarInNewProcess2(const std::wstring& jarPath, const std::wstring& rev_uids, const std::wstring& puids, const std::wstring& tcstatus, const std::wstring& compyname, const std::wstring& identity) {
std::wstring cmd = L"java -jar \"" + jarPath + L"\" \"" + rev_uids + L"\" \"" + puids + L"\" \"" + tcstatus + L"\" \"" + compyname + L"\" \"" + identity + L"\"";
std::wstring fullCmd = L"cmd.exe /c " + cmd;
STARTUPINFO si;
PROCESS_INFORMATION pi;
ZeroMemory(&si, sizeof(si));
si.cb = sizeof(si);
ZeroMemory(&pi, sizeof(pi));
// 启动新的进程
if (!CreateProcess(NULL, // No module name (use command line)
&fullCmd[0], // Command line
NULL, // Process handle not inheritable
NULL, // Thread handle not inheritable
FALSE, // Set handle inheritance to FALSE
0, // No creation flags
NULL, // Use parent's environment block
NULL, // Use parent's starting directory
&si, // Pointer to STARTUPINFO structure
&pi) // Pointer to PROCESS_INFORMATION structure
) {
std::cerr << "CreateProcess failed (" << GetLastError() << ")." << std::endl;
return;
}
// 等待子进程完成
WaitForSingleObject(pi.hProcess, INFINITE);
// 关闭进程和线程句柄
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}
// 将 char* 转换为 wchar_t*
std::wstring charToWString(const char* str) {
size_t len = strlen(str);
std::wstring wstr(len, L'\0');
mbstowcs(&wstr[0], str, len);
return wstr;
}
int PX_CaxaSign(EPM_action_message_t msg)
{
ECHO("==================caxa图纸属性映射及转PDF START=======================\n");
map<string, string> type_map;//文件夹名称对应所有的item类型
int ifail = ITK_ok,
att_cnt = 0;
tag_t task_tag = NULLTAG,
root_task_tag = NULLTAG,
* attachments = NULL;
char arg_type[1024] = "";
char arg_caxatype[1024] = "";
char arg_tcstatus[1024] = "";
char arg_jarpath[1024] = "";
char arg_compyname[1024] = "PX";
char arg_identity[1024] = "";
char* argflag = NULL, * argvalue = NULL, * arg = NULL;
int arg_cnt = 0;
arg_cnt = TC_number_of_arguments(msg.arguments);
ECHO("参数个数为:%d\n", arg_cnt);
if (arg_cnt > 0)
{
for (int i = 0; i < arg_cnt; i++)
{
//获取下一个参数从0开始
arg = TC_next_argument(msg.arguments);
//获取参数的名称和值
ITK_ask_argument_named_value((const char*)arg, &argflag, &argvalue);
if (stricmp(argflag, "type") == 0) //版本类型
{
//strcmp("","");
if (argvalue != NULL)
{
strcpy(arg_type, argvalue);
}
}
if (stricmp(argflag, "caxatype") == 0) //caxa数据集类型
{
//strcmp("","");
if (argvalue != NULL)
{
strcpy(arg_caxatype, argvalue);
}
}
if (stricmp(argflag, "tcstatus") == 0) //发布状态
{
//strcmp("","");
if (argvalue != NULL)
{
strcpy(arg_tcstatus, argvalue);
}
}
if (stricmp(argflag, "jarpath") == 0) //功能包路径
{
//strcmp("","");
if (argvalue != NULL)
{
strcpy(arg_jarpath, argvalue);
}
}
if (stricmp(argflag, "identity") == 0) //转图标识
{
//strcmp("","");
if (argvalue != NULL)
{
strcpy(arg_identity, argvalue);
}
}
}
ECHO("type%s\n", arg_type);
ECHO("caxatype%s\n", arg_caxatype);
ECHO("tcstatus%s\n", arg_tcstatus);
ECHO("jarpath%s\n", arg_jarpath);
ECHO("compyname%s\n", arg_compyname);
ECHO("identity%s\n", arg_identity);
MEM_free(argflag);
MEM_free(argvalue);
}
task_tag = msg.task;
EPM_ask_root_task(task_tag, &root_task_tag);
EPM_ask_attachments(root_task_tag, EPM_target_attachment, &att_cnt, &attachments);
char rev_uids[10240] = "\0";
char puids[10240] = "\0";
int current_len = 0;
for (int i = 0; i < att_cnt; i++) {
tag_t* spec;
char* object_type, * spec_type;
int spec_num;
AOM_ask_value_string(attachments[i], "object_type", &object_type);
ECHO("版本类型:%s\n", object_type);
if (strstr(arg_type, object_type) != NULL) {
AOM_ask_value_tags(attachments[i], "IMAN_specification", &spec_num, &spec);
char* rev_uid;
POM_tag_to_uid(attachments[i], &rev_uid);
ECHO("IMAN_specification num%d\n", spec_num);
for (int j = 0; j < spec_num; j++) {
boolean has_dataset = false;
AOM_ask_value_string(spec[j], "object_type", &spec_type);
ECHO("规范类型:%s\n", spec_type);
if (strstr(arg_caxatype, spec_type) != NULL)
{
has_dataset = true;
ECHO("符合\n");
char* dataset_uid;
//WSOM_ask_id_string(attachments[i], &rev_uid);
POM_tag_to_uid(spec[j], &dataset_uid);
//int len = strlen(puids);
if (strcmp(puids, "\0") == 0)
{
}
else
{
strcat(puids, "|");
current_len++;
}
printf("%s\n", puids);
//记录数据集
if (strcmp(puids, "\0") == 0)
{
current_len = current_len + strlen(dataset_uid);
strcpy(puids, dataset_uid);
}
else
{
if (puids[current_len - 1] != '|')
{
strcat(puids, ",");
strcat(puids, dataset_uid);
current_len = current_len + strlen(dataset_uid) + 1;
}
else {
strcat(puids, dataset_uid);
current_len = current_len + strlen(dataset_uid);
}
}
MEM_free(dataset_uid);
}
if (has_dataset) {
//记录版本
if (strcmp(rev_uids, "\0") == 0)
{
strcpy(rev_uids, rev_uid);
}
else
{
strcat(rev_uids, ",");
strcat(rev_uids, rev_uid);
}
}
}
MEM_free(rev_uid);
}
}
printf("2023/12/29\n");
// 将 char 数组转换为 std::wstring
//std::wstring jarPath = charToWString(arg_jarpath);
//std::wstring rev_uids_str = charToWString(rev_uids);
//std::wstring puids_str = charToWString(puids);
//std::wstring tcstatus_str = charToWString(arg_tcstatus);
// std::wstring compyname_str = charToWString(arg_compyname);
// std::wstring identity_str = charToWString(arg_identity);
//startJavaJarInNewProcess(jarPath, rev_uids_str, puids_str, tcstatus_str, compyname_str, identity_str);
char cmd[20480] = "";
strcpy(cmd, "C:\\Java\\jdk1.7.0_15\\bin\\java.exe -jar ");
strcat(cmd, arg_jarpath);
strcat(cmd, " \"");
strcat(cmd, rev_uids);
strcat(cmd, "\"");
strcat(cmd, " \"");
strcat(cmd, puids);
strcat(cmd, "\"");
strcat(cmd, " \"");
strcat(cmd, arg_tcstatus);
strcat(cmd, "\"");
strcat(cmd, " \"");
strcat(cmd, arg_compyname);
strcat(cmd, "\"");
strcat(cmd, " \"");
strcat(cmd, arg_identity);
strcat(cmd, "\"");
ECHO("\n%s\n", cmd);
system(cmd);
//std::wstring jarPath = charToWString(arg_jarpath);
//std::wstring rev_uids_str = charToWString(rev_uids);
//std::wstring puids_str = charToWString(puids);
//std::wstring tcstatus_str = charToWString(arg_tcstatus);
//std::wstring compyname_str = charToWString(arg_compyname);
//std::wstring identity_str = charToWString(arg_identity);
//startJavaJarInNewProcess(jarPath, rev_uids_str, puids_str, tcstatus_str, compyname_str, identity_str);
ECHO("==================caxa图纸属性映射及转PDF END=======================\n");
return ifail;
}
//int PX_CaxaToPDF2(EPM_action_message_t msg)
//{
// ECHO("==================caxa图纸属性映射及转PDF START=======================\n");
// printf("开超级权限\n");
// POM_AM__set_application_bypass(true);
// map<string, string> type_map;//文件夹名称对应所有的item类型
//
// int ifail = ITK_ok,
// att_cnt = 0;
//
// tag_t task_tag = NULLTAG,
// root_task_tag = NULLTAG,
// * attachments = NULL;
//
// char arg_type[1024] = "";
// char arg_caxatype[1024] = "";
// char arg_tcstatus[1024] = "";
// char arg_jarpath[1024] = "";
// char arg_compyname[1024] = "";
// char arg_identity[1024] = "";
// char* argflag = NULL, * argvalue = NULL, * arg = NULL;
// int arg_cnt = 0;
//
// arg_cnt = TC_number_of_arguments(msg.arguments);
// ECHO("参数个数为:%d\n", arg_cnt);
// if (arg_cnt > 0)
// {
// for (int i = 0; i < arg_cnt; i++)
// {
// //获取下一个参数从0开始
// arg = TC_next_argument(msg.arguments);
// //获取参数的名称和值
// ITK_ask_argument_named_value((const char*)arg, &argflag, &argvalue);
// if (stricmp(argflag, "type") == 0) //版本类型
// {
// //strcmp("","");
// if (argvalue != NULL)
// {
// strcpy(arg_type, argvalue);
// }
// }
// if (stricmp(argflag, "caxatype") == 0) //caxa数据集类型
// {
// //strcmp("","");
// if (argvalue != NULL)
// {
// strcpy(arg_caxatype, argvalue);
// }
// }
// if (stricmp(argflag, "tcstatus") == 0) //发布状态
// {
// //strcmp("","");
// if (argvalue != NULL)
// {
// strcpy(arg_tcstatus, argvalue);
// }
// }
// if (stricmp(argflag, "jarpath") == 0) //功能包路径
// {
// //strcmp("","");
// if (argvalue != NULL)
// {
// strcpy(arg_jarpath, argvalue);
// }
// }
// if (stricmp(argflag, "compyname") == 0) //功能包路径
// {
// //strcmp("","");
// if (argvalue != NULL)
// {
// strcpy(arg_compyname, argvalue);
// }
// }
// if (stricmp(argflag, "identity") == 0) //转图标识
// {
// //strcmp("","");
// if (argvalue != NULL)
// {
// strcpy(arg_identity, argvalue);
// }
// }
// }
// ECHO("type%s\n", arg_type);
// ECHO("caxatype%s\n", arg_caxatype);
// ECHO("tcstatus%s\n", arg_tcstatus);
// ECHO("jarpath%s\n", arg_jarpath);
// ECHO("compyname%s\n", arg_compyname);
// ECHO("identity%s\n", arg_identity);
// MEM_free(argflag);
// MEM_free(argvalue);
// }
// task_tag = msg.task;
// EPM_ask_root_task(task_tag, &root_task_tag);
// EPM_ask_attachments(root_task_tag, EPM_target_attachment, &att_cnt, &attachments);
// char rev_uids[10240] = "\0";
// char puids[10240] = "\0";
// int current_len = 0;
// for (int i = 0; i < att_cnt; i++) {
// tag_t *spec;
// char* object_type, * spec_type;
// int spec_num;
// AOM_ask_value_string(attachments[i],"object_type", &object_type);
// ECHO("版本类型:%s\n", object_type);
// if (strstr(arg_type, object_type) != NULL) {
// AOM_ask_value_tags(attachments[i], "IMAN_specification", &spec_num, &spec);
// char* rev_uid;
// POM_tag_to_uid(attachments[i], &rev_uid);
// ECHO("IMAN_specification num%d\n", spec_num);
//
// for (int j = 0; j < spec_num; j++) {
// boolean has_dataset = false;
// AOM_ask_value_string(spec[j], "object_type", &spec_type);
// ECHO("规范类型:%s\n", spec_type);
// if (strstr(arg_caxatype, spec_type)!= NULL)
// {
//
// has_dataset = true;
// ECHO("符合\n");
// char* dataset_name;
// ITKCALL(AOM_ask_value_string(spec[j], "object_name", &dataset_name));
// //开始获取caxa图纸
// tag_t ref_object = NULLTAG;
// AE_reference_type_t reference_type;
// char ref_name[WSO_name_size_c + 1] = "U2_EXB";
// AE_ask_dataset_named_ref(spec[j], ref_name, &reference_type, &ref_object);
// if (reference_type == AE_PART_OF)
// {
// char pathname[SS_MAXPATHLEN] = "";
// IMF_ask_file_pathname(ref_object, SS_WNT_MACHINE, pathname);
// char origin_file_name[SS_MAXPATHLEN] = "";
// IMF_ask_original_file_name(ref_object, origin_file_name);
// char new_ds_name[WSO_name_size_c + 1] = "";
// char* new_file_name = USER_new_file_name(new_ds_name, ref_name, "exb", 0);
// char* temp_dir = getenv("temp");
// char temp_file[SS_MAXPATHLEN] = "";
// strcpy(temp_file, temp_dir);
// strcat(temp_file, "\\");
// strcat(temp_file, new_file_name);
// IMF_export_file(ref_object, temp_file);
// //在D盘的CAXATOPDFFILE文件夹创建一个时间戳文件夹存放转换的pdf文件
// std::string parentPath = "D:\\CAXATOPDFFILE";
// std::string timestamp = getCurrentTimestamp();
//
// if (createTimestampDirectory(parentPath, timestamp)) {
// std::cout << "Successfully created directory: " << parentPath << "\\" << timestamp << std::endl;
// string pdfFolderPath = parentPath + "\\" + timestamp;
// //创建成功后调用jar包执行转换pdf的操作
// char cmd[20480] = "";
// strcpy(cmd, "java -jar ");
// strcat(cmd, arg_jarpath);
// strcat(cmd, " \"");
// strcat(cmd, temp_file);
// strcat(cmd, "\"");
// strcat(cmd, " \"");
// strcat(cmd, pdfFolderPath.c_str());
// strcat(cmd, "\"");
// printf("cmd:%s\n",cmd);
// system(cmd);
// //开始挂载pdf文件
// char newName[2048] = "";
// strcat(newName, dataset_name);
// //新文件地址
// char newtemp_file[SS_MAXPATHLEN] = "";
// strcpy(newtemp_file, pdfFolderPath.c_str());
// strcat(newtemp_file, "\\");
// strcat(newtemp_file, removeFileExtension(new_file_name).c_str());
// strcat(newtemp_file, ".pdf");
// printf("新的文件路径为%s:",newtemp_file);
//
// //创建数据集挂载新文件
// tag_t* word_tags = NULLTAG;
// int word_num = NULL;
// ITKCALL(AOM_ask_value_tags(attachments[i], "IMAN_specification", &word_num, &word_tags));
// tag_t pdf = NULLTAG;
// for (int n = 0; n < word_num; n++) {
// char* type = "";
// char* pdfname = "";
// ITKCALL(AOM_ask_value_string(word_tags[n], "object_type", &type));
// string newtype = Utf8ToGbk(type);
// type = (char*)newtype.data();
// printf("type值为%s:",type);
//
// ITKCALL(AOM_ask_value_string(word_tags[n], "object_name", &pdfname));
// char* name1 = NULL;
// char* name2 = NULL;
// name1 = remove_suffix(pdfname);
// name2 = remove_suffix(newName);
// if (strcmp(type, "PDF") == 0 && strcmp(name1, name2) == 0) {
// pdf = word_tags[n];
// break;
// }
// }
// if (pdf == NULLTAG) {
// int rfCount;
// tag_t pdfTypeTag = NULLTAG, tool = NULLTAG, relationTag, * rfTags, newrelation;
//
// ITKCALL(AE_find_datasettype("PDF", &pdfTypeTag));
// ITKCALL(AE_create_dataset_with_id(pdfTypeTag, newName, "", "", "A", &pdf));
// ITKCALL(AE_ask_datasettype_def_tool(pdfTypeTag, &tool));
// ITKCALL(AE_set_dataset_tool(pdf, tool));
// ITKCALL(AE_set_dataset_format(pdf, "PDF_Reference"));
// ITKCALL(AOM_save(pdf));
// if (pdf == NULLTAG) {
//
// printf("创建失败\n");
// }
// else {
// printf("创建成功\n");
// ITKCALL(GRM_find_relation_type("IMAN_specification", &relationTag));
// if (relationTag == NULLTAG) {
//
// printf("1111111111111111111111111111111");
// }
// ITKCALL(GRM_list_secondary_objects_only(attachments[i], relationTag, &rfCount, &rfTags));
// ITKCALL(GRM_create_relation(attachments[i], pdf, relationTag, NULLTAG, &newrelation));
// ITKCALL(GRM_save_relation(newrelation));
// ITKCALL(AOM_unload(attachments[i]));
// ITKCALL(AOM_refresh(attachments[i], true));
// }
// }
// if (pdf != NULL) {
//
// printf("已经存在PDF数据集开始进行创建 %s\n", dataset_name);
// ITKCALL(import_dataset_file_binary(pdf, "/tmp/", "PDF_Reference", "pdf", newtemp_file, strcat(newName, ".pdf")));
// }
//
// } else {
// std::cerr << "Failed to create directories." << std::endl;
// }
// }
//
// }
// }
// //设置转图标识
// vector<string> ans;
// Split(arg_identity,";",ans);
// AOM_lock(attachments[i]);
// AOM_set_value_string(attachments[i],ans[0].c_str(), ans[1].c_str());
// AOM_save(attachments[i]);
// AOM_unlock(attachments[i]);
// }
//
// }
// printf("关闭超级权限\n");
// POM_AM__set_application_bypass(true);
// ECHO("==================caxa图纸属性映射及转PDF END=======================\n");
// return ifail;
//}

@ -0,0 +1,440 @@
/*=============================================================================
Copyright (C) 2011 ORIGIN Corporation
Unpublished - All Rights Reserved
===============================================================================
File description:
Filename: PX_Save_AfterOperation.cxx
Module : user_exits
Test function
===============================================================================
DATE Name Description of Change
15-4-2025 hcj
$HISTORY$
===============================================================================*/
#include "epm_handler_common.h"
#include "common_itk_util.h"
#include <tccore/aom.h>
#include <tccore/aom_prop.h>
#include "stdafx.h"
#include "ae/dataset.h"
#include "sa/sa.h"
#include <tc\preferences.h>
#include <ae/datasettype.h>
#include <sa/tcfile.h>
#include <assert.h>
#include <stdio.h>
#include <string.h>
#include <vector>
#include <res/reservation.h>
#include <form/form.h>
#include "error_handling.h"
#include "string_utils.h"
#include <string>
#include <map>
#include <direct.h>
#include <fstream>
#include <io.h>
#include <epm/epm.h>
#include <epm/epm_toolkit_tc_utils.h>
#include <ict/ict_userservice.h>
#include <tccore/item.h>
#include <ae/ae.h>
#include <tc/folder.h>
#include <property/prop_errors.h>
#include <tccore/workspaceobject.h>
#include <tccore/imantype.h>
#include <tccore//grm.h>
#include <tccore/grmtype.h>
#include <sa/am.h>
#include <cfm/cfm.h>
#include <bom/bom.h>
#include <tccore/uom.h>
#include <ps/ps.h>
#include <epm/signoff.h>
#include <fclasses/tc_date.h>
#include <ics\ics2.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <stdlib.h>
#include <itk\bmf.h>
#include <bmf\libuserext_exports.h>
#include <iostream>
#include <chrono>
#include <filesystem>
#include <ctime>
#include <windows.h>
#include <cwchar>
#include <unordered_set>
#define ITK_err 919012
vector<char*> modId;
/*
objtagtype_name
*/
bool isTypeOf(tag_t objtag, const char * type_name) {
tag_t type = NULLTAG;
TCTYPE_ask_object_type(objtag, &type);
tag_t item_type = NULLTAG;
TCTYPE_find_type(type_name, "", &item_type);
bool is_type = false;
if (item_type != NULLTAG) {
logical isok = FALSE;
TCTYPE_is_type_of(type, item_type, &isok);
if (isok) {
is_type = true;
}
}
return is_type;
}
int PX_Create_AfterOperation( METHOD_message_t* msg, va_list args )
{
printf("=========================创建后操作 Start===================\n");
int ifail = ITK_ok;tag_t new_rev;
tag_t item = va_arg(args, tag_t);
char* Id;
AOM_ask_value_string(item, "item_id", &Id);
modId.push_back(Id);
ITEM_ask_latest_rev(item,&new_rev);
//获取首选项
int count = 0;char** refers;
ITKCALL(PREF_ask_char_values("PX_Check_Item", &count, &refers));
if(count == 0){
EMH_store_error_s2(EMH_severity_error,
ITK_err,
"提示",
"首选项【PX_Check_Item】配置有误请检查!");
modId.clear();
AOM_delete(item);
return 1;
}
for(int i = 0; i < count; i++){
printf("开始校验%s\n",refers[i]);
//获取类型
char* type;
AOM_ask_value_string(new_rev, "object_type", &type);
printf("获取类型%s\n",type);
//分割首选项
printf("开始分割首选项\n");
vector<string> ans;
Split(refers[i],"=",ans);
printf("首选项分割数量%d\n",ans.size());
if(ans.size() != 5){
EMH_store_error_s2(EMH_severity_error,
ITK_err,
"提示",
"首选项【PX_Check_Item】配置有误请检查!");
modId.clear();
AOM_delete(item);
return 1;
}
if (strcmp(type, ans[0].c_str()) == 0) {
printf("类型匹配成功\n");
// 分割字符串
printf("分割字符串\n");
std::vector<std::string> pops;
Split(ans[1].c_str(), ",", pops);
// 获取属性数量
int array_size = pops.size();
printf("获取属性数量%d\n",array_size);
// 动态分配内存以存储属性值
printf("动态分配内存以存储属性值\n");
char** str_array = new char*[array_size];
// 循环获取每个属性值
printf("循环获取每个属性值\n");
for (int j = 0; j < array_size; ++j) {
char* prop = nullptr;
// 调用 AOM_ask_value_string 获取属性值
int status = AOM_ask_value_string(new_rev, pops[j].c_str(), &prop);
printf("属性值=%s\n",prop);
if (status == 0 && prop != nullptr) {
// 成功获取属性值,复制到 str_array
str_array[j] = new char[strlen(prop) + 1];
strcpy(str_array[j], prop);
//释放
MEM_free(prop);
//delete[] prop;
} else {
// 如果获取失败,赋值为空字符串
printf("属性%s获取失败\n", pops[j].c_str());
str_array[j] = new char[1];
strcpy(str_array[j], "");
}
}
//获取查询
printf("获取查询%s\n",ans[2].c_str());
tag_t query;
ITKCALL(ifail = QRY_find(ans[2].c_str(), &query));
//获取查询条目
printf("获取查询条目%s\n",ans[3].c_str());
// 分割字符串
std::vector<std::string> popNames;
Split(ans[3].c_str(), ",", popNames);
// 获取属性数量
int arrayName_size = popNames.size();
// 动态分配内存以存储属性值
char** strName_array = new char*[arrayName_size];
// 循环获取每个属性值
for (int j = 0; j < arrayName_size; ++j) {
strName_array[j] = new char[popNames[j].size() + 1];
strncpy(strName_array[j], popNames[j].c_str(), popNames[j].size() + 1);
strName_array[j][popNames[j].size()] = '\0'; // 确保字符串以 '\0' 结尾
}
// 打印结果
for (int j = 0; j < arrayName_size; ++j) {
printf("查询条目=%s\n",strName_array[j]);
}
//校验查询属性和查询条目数量是否一致
if(pops.size() != popNames.size()){
EMH_store_error_s2(EMH_severity_error,
ITK_err,
"提示",
"首选项【PX_Check_Item】配置有误请检查!");
modId.clear();
AOM_delete(item);
return 1;
}
//执行查询
int n_found;
tag_t* tags;
boolean saveFlag = true;
ITKCALL(ifail = QRY_execute(query, pops.size(), strName_array,str_array, &n_found, &tags));
if (n_found > 0) {
string ids = "";
std::unordered_set<string> uniqueIds; // 用于存储唯一的 itemId
for (int i = 0; i < n_found; i++) {
char* itemId;
AOM_ask_value_string(tags[i], "item_id", &itemId);
// 如果 itemId 已经存在于集合中,则跳过
if (uniqueIds.find(itemId) != uniqueIds.end()) {
continue;
}
// 如果当前 itemId 与 Id 相同,则跳过
if (strcmp(Id, itemId) == 0) {
continue;
}
printf("查询到的itemId==> %s\n", itemId);
// 将 itemId 添加到集合和字符串中
uniqueIds.insert(itemId);
ids += itemId;
ids += ";";
ifail = 1;
saveFlag = false;
}
// 检查是否需要保存错误信息
if (!saveFlag) {
AOM_delete(item);
string error = "已存在相同" + ans[4] + "的对象: " + ids + "!";
EMH_store_error_s2(EMH_severity_error,
ITK_err,
"提示",
error.c_str());
modId.clear();
}
}
break;
}
}
va_end(args);
return ifail;
}
int PX_Save_AfterOperation( METHOD_message_t* msg, va_list args )
{
int ifail = ITK_ok;
tag_t new_rev = va_arg(args, tag_t);
char* Id;
AOM_ask_value_string(new_rev, "item_id", &Id);
if(modId.size() > 0 && strcmp(modId[0],Id) == 0){
modId.clear();
return ifail;
}
printf("=========================保存前操作 Start===================\n");
//获取首选项
int count = 0;char** refers;
ITKCALL(PREF_ask_char_values("PX_Check_Item", &count, &refers));
if(count == 0){
EMH_store_error_s2(EMH_severity_error,
ITK_err,
"提示",
"首选项【PX_Check_Item】配置有误请检查!");
return 1;
}
for(int i = 0; i < count; i++){
printf("开始校验%s\n",refers[i]);
//获取类型
char* type;
AOM_ask_value_string(new_rev, "object_type", &type);
printf("获取类型%s\n",type);
//分割首选项
printf("开始分割首选项\n");
vector<string> ans;
Split(refers[i],"=",ans);
printf("首选项分割数量%d\n",ans.size());
if(ans.size() != 5){
EMH_store_error_s2(EMH_severity_error,
ITK_err,
"提示",
"首选项【PX_Check_Item】配置有误请检查!");
return 1;
}
if (strcmp(type, ans[0].c_str()) == 0) {
printf("类型匹配成功\n");
// 分割字符串
printf("分割字符串\n");
std::vector<std::string> pops;
Split(ans[1].c_str(), ",", pops);
// 获取属性数量
int array_size = pops.size();
printf("获取属性数量%d\n",array_size);
// 动态分配内存以存储属性值
printf("动态分配内存以存储属性值\n");
char** str_array = new char*[array_size];
// 循环获取每个属性值
printf("循环获取每个属性值\n");
for (int j = 0; j < array_size; ++j) {
char* prop = nullptr;
// 调用 AOM_ask_value_string 获取属性值
int status = AOM_ask_value_string(new_rev, pops[j].c_str(), &prop);
printf("属性值=%s\n",prop);
if (status == 0 && prop != nullptr) {
// 成功获取属性值,复制到 str_array
str_array[j] = new char[strlen(prop) + 1];
strcpy(str_array[j], prop);
//释放
MEM_free(prop);
//delete[] prop;
} else {
// 如果获取失败,赋值为空字符串
printf("属性%s获取失败\n", pops[j].c_str());
str_array[j] = new char[1];
strcpy(str_array[j], "");
}
}
//获取查询
printf("获取查询%s\n",ans[2].c_str());
tag_t query;
ITKCALL(ifail = QRY_find(ans[2].c_str(), &query));
//获取查询条目
printf("获取查询条目%s\n",ans[3].c_str());
// 分割字符串
std::vector<std::string> popNames;
Split(ans[3].c_str(), ",", popNames);
// 获取属性数量
int arrayName_size = popNames.size();
// 动态分配内存以存储属性值
char** strName_array = new char*[arrayName_size];
// 循环获取每个属性值
for (int j = 0; j < arrayName_size; ++j) {
strName_array[j] = new char[popNames[j].size() + 1];
strncpy(strName_array[j], popNames[j].c_str(), popNames[j].size() + 1);
strName_array[j][popNames[j].size()] = '\0'; // 确保字符串以 '\0' 结尾
}
// 打印结果
for (int j = 0; j < arrayName_size; ++j) {
printf("查询条目=%s\n",strName_array[j]);
}
//校验查询属性和查询条目数量是否一致
if(pops.size() != popNames.size()){
EMH_store_error_s2(EMH_severity_error,
ITK_err,
"提示",
"首选项【PX_Check_Item】配置有误请检查!");
return 1;
}
//执行查询
int n_found;
tag_t* tags;
boolean saveFlag = true;
ITKCALL(ifail = QRY_execute(query, pops.size(), strName_array,str_array, &n_found, &tags));
if (n_found > 0) {
string ids = "";
std::unordered_set<string> uniqueIds; // 用于存储唯一的 itemId
for (int i = 0; i < n_found; i++) {
char* itemId;
AOM_ask_value_string(tags[i], "item_id", &itemId);
// 如果 itemId 已经存在于集合中,则跳过
if (uniqueIds.find(itemId) != uniqueIds.end()) {
continue;
}
// 如果当前 itemId 与 Id 相同,则跳过
if (strcmp(Id, itemId) == 0) {
continue;
}
printf("查询到的itemId==> %s\n", itemId);
// 将 itemId 添加到集合和字符串中
uniqueIds.insert(itemId);
ids += itemId;
ids += ";";
ifail = 1;
saveFlag = false;
}
// 检查是否需要保存错误信息
if (!saveFlag) {
string error = "已存在相同" + ans[4] + "的对象: " + ids + "!";
EMH_store_error_s2(EMH_severity_error,
ITK_err,
"提示",
error.c_str());
modId.clear();
}
}
break;
}
}
va_end(args);
return ifail;
}

@ -0,0 +1,45 @@
========================================================================
WIN32 应用程序T5Sign_ITK 项目概述
========================================================================
应用程序向导已为您创建了此 T5Sign_ITK 应用程序。
本文件概要介绍组成 T5Sign_ITK 应用程序的每个文件的内容。
T5Sign_ITK.vcproj
这是使用应用程序向导生成的 VC++ 项目的主项目文件。
它包含生成该文件的 Visual C++ 的版本信息,以及有关使用应用程序向导选择的平台、配置和项目功能的信息。
T5Sign_ITK.cpp
这是主应用程序源文件。
/////////////////////////////////////////////////////////////////////////////
应用程序向导创建了下列资源:
T5Sign_ITK.rc
这是程序使用的所有 Microsoft Windows 资源的列表。它包括 RES 子目录中存储的图标、位图和光标。此文件可以直接在 Microsoft Visual C++ 中进行编辑。
Resource.h
这是标准头文件,它定义新的资源 ID。
Microsoft Visual C++ 读取并更新此文件。
T5Sign_ITK.ico
这是用作应用程序图标 (32x32) 的图标文件。
此图标包括在主资源文件 T5Sign_ITK.rc 中。
small.ico
这是一个图标文件,其中包含应用程序图标的较小版本 (16x16)。此图标包括在主资源文件 T5Sign_ITK.rc 中。
/////////////////////////////////////////////////////////////////////////////
其他标准文件:
StdAfx.h, StdAfx.cpp
这些文件用于生成名为 T5Sign_ITK.pch 的预编译头 (PCH) 文件和名为 StdAfx.obj 的预编译类型文件。
/////////////////////////////////////////////////////////////////////////////
其他注释:
应用程序向导使用“TODO:”指示应添加或自定义的源代码部分。
/////////////////////////////////////////////////////////////////////////////

Binary file not shown.

Binary file not shown.

@ -0,0 +1,61 @@
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\T5SIGN_ITK.PCH
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\STDAFX.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\VC110.PDB
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\SPACE_NODE.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\ERP_UTILS.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\EPM_SIGNOFF_DATASET.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\EPM_SIGN_REV.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\EPM_REGISTER_HANDLER.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\CONNOR_UTIL.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\CLEAR_FORM_PROP.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\STRING_UTILS.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\STRING_HELPER.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\LIB_CUSTOM_MAIN.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\T5SIGN_ITK.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\PX_SAVE_AFTEROPERATION.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\PX_CAXATOPDF.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\HS_SET_SIGNOFF.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\HS_PDF_SIGNOFF.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\COMMON_ITK_UTIL.OBJ
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\RELEASE\T5SIGN_ITK.DLL
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\RELEASE\T5SIGN_ITK.PDB
Z:\D-3\PROJECT\蓬翔\ITK\64位\T5SIGN_ITK\T5SIGN_ITK\RELEASE\T5SIGN_ITK.RES
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.lib
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.exp
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\clear_form_prop.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\common_itk_util.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\connor_util.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\epm_register_handler.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\epm_signoff_dataset.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\epm_sign_rev.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\erp_utils.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\HS_pdf_signoff.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\HS_set_signoff.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\lib_custom_main.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\PX_CaxaToPDF.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\PX_Save_AfterOperation.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\space_node.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\stdafx.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\string_helper.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\string_utils.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\T5Sign_ITK.obj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\cl.command.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\CL.read.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\CL.write.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\link-cvtres.read.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\link-cvtres.write.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\link-rc.read.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\link-rc.write.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\link.command.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\link.read.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\link.read.2.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\link.write.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\rc.command.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\rc.read.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\rc.write.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\T5Sign_ITK.write.1.tlog
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\T5Sign_ITK.res
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\T5Sign_ITK.pch
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\Release\vc110.pdb
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.pdb
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.dll

@ -0,0 +1,2 @@
#v4.0:v110:false
Release|Win32|Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\|

@ -0,0 +1,392 @@
生成启动时间为 2025/4/17 11:47:54。
1>项目“Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\T5Sign_ITK.vcxproj”在节点 2 上(Rebuild 个目标)。
1>ClCompile:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\CL.exe /c /IC:\Siemens\Teamcenter8\include /IC:\Siemens\Teamcenter8\include_cpp /Zi /nologo /W3 /WX- /O2 /Oy- /GL /D WIN32 /D NDEBUG /D _WINDOWS /D IPLIB=none /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope /Yc"stdafx.h" /Fp"Release\T5Sign_ITK.pch" /Fo"Release\\" /Fd"Release\vc110.pdb" /Gd /TP /analyze- /errorReport:prompt stdafx.cpp
stdafx.cpp
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\CL.exe /c /IC:\Siemens\Teamcenter8\include /IC:\Siemens\Teamcenter8\include_cpp /Zi /nologo /W3 /WX- /O2 /Oy- /GL /D WIN32 /D NDEBUG /D _WINDOWS /D IPLIB=none /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Release\\" /Fd"Release\vc110.pdb" /Gd /TP /analyze- /errorReport:prompt HS_pdf_signoff.cpp HS_set_signoff.cpp PX_CaxaToPDF.cpp PX_Save_AfterOperation.cpp T5Sign_ITK.cpp lib_custom_main.cpp string_helper.cpp string_utils.cxx clear_form_prop.cpp connor_util.cpp epm_register_handler.cpp epm_sign_rev.cxx epm_signoff_dataset.cxx erp_utils.cxx space_node.cpp
HS_pdf_signoff.cpp
1>C:\Siemens\Teamcenter8\include\pom/pom/pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\qry/qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>HS_pdf_signoff.cpp(437): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(438): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(444): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_pdf_signoff.cpp(445): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(451): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_pdf_signoff.cpp(452): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(454): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_pdf_signoff.cpp(455): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(457): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_pdf_signoff.cpp(458): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(461): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(463): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(465): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(467): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(470): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(477): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(477): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdlib.h(449) : 参见“getenv”的声明
1>HS_pdf_signoff.cpp(478): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(479): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(480): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdio.h(218) : 参见“fopen”的声明
1>HS_pdf_signoff.cpp(507): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdlib.h(449) : 参见“getenv”的声明
1>HS_pdf_signoff.cpp(511): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_pdf_signoff.cpp(512): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(513): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(517): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdio.h(357) : 参见“sprintf”的声明
1>HS_pdf_signoff.cpp(520): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdio.h(357) : 参见“sprintf”的声明
1>HS_pdf_signoff.cpp(525): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdlib.h(449) : 参见“getenv”的声明
1>HS_pdf_signoff.cpp(526): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_pdf_signoff.cpp(527): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(528): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(529): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(530): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(531): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(532): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(533): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(534): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(535): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_pdf_signoff.cpp(380): warning C4101: “desc_path”: 未引用的局部变量
HS_set_signoff.cpp
1>C:\Siemens\Teamcenter8\include\pom/pom/pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\qry/qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>HS_set_signoff.cpp(189): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(238): warning C4018: “<”: 有符号/无符号不匹配
1>HS_set_signoff.cpp(243): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(244): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(250): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(251): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(257): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(258): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(260): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(261): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(263): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(264): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(272): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(275): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(278): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(281): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(286): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(293): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(293): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdlib.h(449) : 参见“getenv”的声明
1>HS_set_signoff.cpp(294): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(295): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(296): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdio.h(218) : 参见“fopen”的声明
1>HS_set_signoff.cpp(321): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(322): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(333): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(334): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(347): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(348): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(361): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(362): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(377): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdlib.h(449) : 参见“getenv”的声明
1>HS_set_signoff.cpp(385): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\time.inl(112) : 参见“localtime”的声明
1>HS_set_signoff.cpp(386): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdio.h(357) : 参见“sprintf”的声明
1>HS_set_signoff.cpp(387): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(408): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(413): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(425): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(427): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(429): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(431): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(433): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>HS_set_signoff.cpp(435): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(437): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(439): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(457): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(458): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(459): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(460): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>HS_set_signoff.cpp(461): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
PX_CaxaToPDF.cpp
1>C:\Siemens\Teamcenter8\include\pom/pom/pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\qry/qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>PX_CaxaToPDF.cpp(168): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\time.inl(112) : 参见“localtime”的声明
1>PX_CaxaToPDF.cpp(267): warning C4996: 'mbstowcs': This function or variable may be unsafe. Consider using mbstowcs_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdlib.h(515) : 参见“mbstowcs”的声明
1>PX_CaxaToPDF.cpp(302): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(249) : 参见“stricmp”的声明
1>PX_CaxaToPDF.cpp(307): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_CaxaToPDF.cpp(310): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(249) : 参见“stricmp”的声明
1>PX_CaxaToPDF.cpp(315): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_CaxaToPDF.cpp(318): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(249) : 参见“stricmp”的声明
1>PX_CaxaToPDF.cpp(323): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_CaxaToPDF.cpp(326): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(249) : 参见“stricmp”的声明
1>PX_CaxaToPDF.cpp(331): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_CaxaToPDF.cpp(334): warning C4996: 'stricmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _stricmp. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(249) : 参见“stricmp”的声明
1>PX_CaxaToPDF.cpp(339): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_CaxaToPDF.cpp(392): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(400): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_CaxaToPDF.cpp(406): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(407): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(411): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(423): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_CaxaToPDF.cpp(427): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(428): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(450): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_CaxaToPDF.cpp(451): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(452): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(453): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(454): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(455): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(456): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(457): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(458): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(459): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(460): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(461): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(462): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(463): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(464): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(465): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
1>PX_CaxaToPDF.cpp(466): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(115) : 参见“strcat”的声明
PX_Save_AfterOperation.cpp
1>C:\Siemens\Teamcenter8\include\pom/pom/pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\qry/qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>PX_Save_AfterOperation.cpp(162): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_Save_AfterOperation.cpp(171): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_Save_AfterOperation.cpp(197): warning C4996: 'strncpy': This function or variable may be unsafe. Consider using strncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(191) : 参见“strncpy”的声明
1>PX_Save_AfterOperation.cpp(336): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_Save_AfterOperation.cpp(345): 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.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(110) : 参见“strcpy”的声明
1>PX_Save_AfterOperation.cpp(371): warning C4996: 'strncpy': This function or variable may be unsafe. Consider using strncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\string.h(191) : 参见“strncpy”的声明
T5Sign_ITK.cpp
lib_custom_main.cpp
string_helper.cpp
string_utils.cxx
1>C:\Siemens\Teamcenter8\include\pom/pom/pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
clear_form_prop.cpp
1>C:\Siemens\Teamcenter8\include\pom/pom/pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\qry/qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>clear_form_prop.cpp(75): warning C4101: “DataSetType”: 未引用的局部变量
connor_util.cpp
1>C:\Siemens\Teamcenter8\include\pom/pom/pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\qry/qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
epm_register_handler.cpp
1>epm_register_handler.cpp(55): warning C4018: “<”: 有符号/无符号不匹配
1>epm_register_handler.cpp(69): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\stdio.h(218) : 参见“fopen”的声明
1>epm_register_handler.cpp(85): warning C4172: 返回局部变量或临时变量的地址
1>epm_register_handler.cpp(65): warning C4101: “str”: 未引用的局部变量
1>epm_register_handler.cpp(103): warning C4101: “p”: 未引用的局部变量
1>epm_register_handler.cpp(101): warning C4101: “expire_date”: 未引用的局部变量
1>epm_register_handler.cpp(101): warning C4101: “env”: 未引用的局部变量
1>epm_register_handler.cpp(101): warning C4101: “date_buf”: 未引用的局部变量
1>epm_register_handler.cpp(102): warning C4101: “now”: 未引用的局部变量
1>epm_register_handler.cpp(101): warning C4101: “temp1”: 未引用的局部变量
1>epm_register_handler.cpp(101): warning C4101: “temp2”: 未引用的局部变量
1>epm_register_handler.cpp(105): warning C4101: “mth_tag”: 未引用的局部变量
epm_sign_rev.cxx
1>epm_sign_rev.cxx(202): warning C4129: “c”: 不可识别的字符转义序列
1>epm_sign_rev.cxx(119): warning C4101: “userName”: 未引用的局部变量
1>epm_sign_rev.cxx(187): warning C4101: “is_valid”: 未引用的局部变量
1>epm_sign_rev.cxx(708): warning C4102: “end_handler”: 未引用的标签
epm_signoff_dataset.cxx
1>epm_signoff_dataset.cxx(148): warning C4101: “user_lib_env”: 未引用的局部变量
1>epm_signoff_dataset.cxx(148): warning C4101: “pTempStr”: 未引用的局部变量
1>epm_signoff_dataset.cxx(147): warning C4101: “iCnt”: 未引用的局部变量
1>epm_signoff_dataset.cxx(182): warning C4101: “new_file_name”: 未引用的局部变量
1>epm_signoff_dataset.cxx(180): warning C4101: “file_descriptor”: 未引用的局部变量
1>epm_signoff_dataset.cxx(338): warning C4101: “user_lib_env”: 未引用的局部变量
1>epm_signoff_dataset.cxx(338): warning C4101: “pTempStr”: 未引用的局部变量
1>epm_signoff_dataset.cxx(337): warning C4101: “iCnt”: 未引用的局部变量
1>epm_signoff_dataset.cxx(423): warning C4101: “user_lib_env”: 未引用的局部变量
1>epm_signoff_dataset.cxx(423): warning C4101: “pTempStr”: 未引用的局部变量
1>epm_signoff_dataset.cxx(422): warning C4101: “iCnt”: 未引用的局部变量
1>epm_signoff_dataset.cxx(510): warning C4101: “user_lib_env”: 未引用的局部变量
1>epm_signoff_dataset.cxx(510): warning C4101: “pTempStr”: 未引用的局部变量
1>epm_signoff_dataset.cxx(509): warning C4101: “iCnt”: 未引用的局部变量
1>epm_signoff_dataset.cxx(597): warning C4101: “user_lib_env”: 未引用的局部变量
1>epm_signoff_dataset.cxx(597): warning C4101: “pTempStr”: 未引用的局部变量
1>epm_signoff_dataset.cxx(596): warning C4101: “iCnt”: 未引用的局部变量
1>epm_signoff_dataset.cxx(735): warning C4018: “<”: 有符号/无符号不匹配
1>epm_signoff_dataset.cxx(699): warning C4101: “aUserTag”: 未引用的局部变量
1>epm_signoff_dataset.cxx(701): warning C4101: “decision_date”: 未引用的局部变量
1>epm_signoff_dataset.cxx(700): warning C4101: “userName”: 未引用的局部变量
1>epm_signoff_dataset.cxx(699): warning C4101: “responsibleParty”: 未引用的局部变量
1>epm_signoff_dataset.cxx(924): warning C4101: “desc_path”: 未引用的局部变量
1>epm_signoff_dataset.cxx(1226): warning C4800: “BOOL”: 将值强制为布尔值“true”或“false”(性能警告)
erp_utils.cxx
space_node.cpp
1>C:\Siemens\Teamcenter8\include\pom/pom/pom_errors.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\qry/qry.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(1982): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(2586): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>C:\Siemens\Teamcenter8\include\bom/bom.h(3219): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\CL.exe /c /IC:\Siemens\Teamcenter8\include /IC:\Siemens\Teamcenter8\include_cpp /Zi /nologo /W3 /WX- /O2 /Oy- /GL /D WIN32 /D NDEBUG /D _WINDOWS /D IPLIB=none /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Release\\" /Fd"Release\vc110.pdb" /Gd /TC /analyze- /errorReport:prompt common_itk_util.c
common_itk_util.c
1>common_itk_util.c(91): warning C4013: “AM__set_application_bypass”未定义假设外部返回 int
ResourceCompile:
C:\Program Files (x86)\Windows Kits\8.0\bin\x86\rc.exe /D _UNICODE /D UNICODE /l"0x0409" /nologo /fo"Release\T5Sign_ITK.res" T5Sign_ITK.rc
Link:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_itk.dll" /INCREMENTAL:NO /NOLOGO "C:\Siemens\Teamcenter8\lib\*.lib" kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /NODEFAULTLIB:libuser_exits.ar.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.pdb" /SUBSYSTEM:WINDOWS /OPT:REF /OPT:ICF /LTCG /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.lib" /MACHINE:X86 /SAFESEH /DLL Release\T5Sign_ITK.res
Release\HS_pdf_signoff.obj
Release\HS_set_signoff.obj
Release\PX_CaxaToPDF.obj
Release\PX_Save_AfterOperation.obj
Release\stdafx.obj
Release\T5Sign_ITK.obj
Release\common_itk_util.obj
Release\lib_custom_main.obj
Release\string_helper.obj
Release\string_utils.obj
Release\clear_form_prop.obj
Release\connor_util.obj
Release\epm_register_handler.obj
Release\epm_sign_rev.obj
Release\epm_signoff_dataset.obj
Release\erp_utils.obj
Release\space_node.obj
正在创建库 Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.lib 和对象 Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.exp
正在生成代码
1>z:\d-3\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_sign_rev.cxx(200): warning C4700: 使用了未初始化的局部变量“comments”
1>z:\d-3\project\蓬翔\itk\64位\t5sign_itk\t5sign_itk\epm_sign_rev.cxx(471): warning C4700: 使用了未初始化的局部变量“person_name”
已完成代码的生成
T5Sign_ITK.vcxproj -> Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.dll
1>已完成生成项目“Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\T5Sign_ITK.vcxproj”(Rebuild 个目标)的操作。
生成成功。
已用时间 00:00:18.90

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -0,0 +1,5 @@
^Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\T5Sign_ITK\T5Sign_ITK.vcxproj
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.lib
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.lib
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.exp
Z:\D-3\Project\蓬翔\ITK\64位\T5Sign_ITK\Release\T5Sign_ITK.exp

Binary file not shown.

@ -0,0 +1 @@
清单资源上次更新时间为 16:09:20.16,更新位置为 2019/01/03 周四

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -0,0 +1,31 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by T5Sign_ITK.rc
//
#define IDS_APP_TITLE 103
#define IDR_MAINFRAME 128
#define IDD_T5SIGN_ITK_DIALOG 102
#define IDD_ABOUTBOX 103
#define IDM_ABOUT 104
#define IDM_EXIT 105
#define IDI_T5SIGN_ITK 107
#define IDI_SMALL 108
#define IDC_T5SIGN_ITK 109
#define IDC_MYICON 2
#ifndef IDC_STATIC
#define IDC_STATIC -1
#endif
// жÔÏóµÄÏÂÒ»×éĬÈÏÖµ
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NO_MFC 130
#define _APS_NEXT_RESOURCE_VALUE 129
#define _APS_NEXT_COMMAND_VALUE 32771
#define _APS_NEXT_CONTROL_VALUE 1000
#define _APS_NEXT_SYMED_VALUE 110
#endif
#endif

@ -0,0 +1,190 @@
// T5Sign_ITK.cpp : 定义应用程序的入口点。
//
#include "stdafx.h"
#include "T5Sign_ITK.h"
#define MAX_LOADSTRING 100
// 全局变量:
HINSTANCE hInst; // 当前实例
TCHAR szTitle[MAX_LOADSTRING]; // 标题栏文本
TCHAR szWindowClass[MAX_LOADSTRING]; // 主窗口类名
// 此代码模块中包含的函数的前向声明:
ATOM MyRegisterClass(HINSTANCE hInstance);
BOOL InitInstance(HINSTANCE, int);
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpCmdLine);
// TODO: 在此放置代码。
MSG msg;
HACCEL hAccelTable;
// 初始化全局字符串
LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
LoadString(hInstance, IDC_T5SIGN_ITK, szWindowClass, MAX_LOADSTRING);
MyRegisterClass(hInstance);
// 执行应用程序初始化:
if (!InitInstance (hInstance, nCmdShow))
{
return FALSE;
}
hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_T5SIGN_ITK));
// 主消息循环:
while (GetMessage(&msg, NULL, 0, 0))
{
if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return (int) msg.wParam;
}
//
// 函数: MyRegisterClass()
//
// 目的: 注册窗口类。
//
// 注释:
//
// 仅当希望
// 此代码与添加到 Windows 95 中的“RegisterClassEx”
// 函数之前的 Win32 系统兼容时,才需要此函数及其用法。调用此函数十分重要,
// 这样应用程序就可以获得关联的
// “格式正确的”小图标。
//
ATOM MyRegisterClass(HINSTANCE hInstance)
{
WNDCLASSEX wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc = WndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_T5SIGN_ITK));
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
wcex.lpszMenuName = MAKEINTRESOURCE(IDC_T5SIGN_ITK);
wcex.lpszClassName = szWindowClass;
wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
return RegisterClassEx(&wcex);
}
//
// 函数: InitInstance(HINSTANCE, int)
//
// 目的: 保存实例句柄并创建主窗口
//
// 注释:
//
// 在此函数中,我们在全局变量中保存实例句柄并
// 创建和显示主程序窗口。
//
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
HWND hWnd;
hInst = hInstance; // 将实例句柄存储在全局变量中
hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);
if (!hWnd)
{
return FALSE;
}
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
return TRUE;
}
//
// 函数: WndProc(HWND, UINT, WPARAM, LPARAM)
//
// 目的: 处理主窗口的消息。
//
// WM_COMMAND - 处理应用程序菜单
// WM_PAINT - 绘制主窗口
// WM_DESTROY - 发送退出消息并返回
//
//
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
int wmId, wmEvent;
PAINTSTRUCT ps;
HDC hdc;
switch (message)
{
case WM_COMMAND:
wmId = LOWORD(wParam);
wmEvent = HIWORD(wParam);
// 分析菜单选择:
switch (wmId)
{
case IDM_ABOUT:
DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
break;
case IDM_EXIT:
DestroyWindow(hWnd);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
break;
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
// TODO: 在此添加任意绘图代码...
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
// “关于”框的消息处理程序。
INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (message)
{
case WM_INITDIALOG:
return (INT_PTR)TRUE;
case WM_COMMAND:
if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
{
EndDialog(hDlg, LOWORD(wParam));
return (INT_PTR)TRUE;
}
break;
}
return (INT_PTR)FALSE;
}

@ -0,0 +1,3 @@
#pragma once
#include "resource.h"

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

@ -0,0 +1,127 @@
//Microsoft Visual C++ 生成的资源脚本。
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// 从 TEXTINCLUDE 2 资源生成。
//
#define APSTUDIO_HIDDEN_SYMBOLS
#include "windows.h"
#undef APSTUDIO_HIDDEN_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
LANGUAGE 4, 2
#pragma code_page(936)
/////////////////////////////////////////////////////////////////////////////
//
// 图标
//
// ID 值最低的图标放在最前面,以确保应用程序图标
// 在所有系统中保持一致。
IDI_T5SIGN_ITK ICON "T5Sign_ITK.ico"
IDI_SMALL ICON "small.ico"
/////////////////////////////////////////////////////////////////////////////
//
// 菜单
//
IDC_T5SIGN_ITK MENU
BEGIN
POPUP "文件(&F)"
BEGIN
MENUITEM "退出(&X)", IDM_EXIT
END
POPUP "帮助(&H)"
BEGIN
MENUITEM "关于(&A) ...", IDM_ABOUT
END
END
/////////////////////////////////////////////////////////////////////////////
//
// 快捷键
//
IDC_T5SIGN_ITK ACCELERATORS
BEGIN
"?", IDM_ABOUT, ASCII, ALT
"/", IDM_ABOUT, ASCII, ALT
END
/////////////////////////////////////////////////////////////////////////////
//
// 对话框
//
IDD_ABOUTBOX DIALOG 22, 17, 230, 75
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "关于"
FONT 9, "宋体"
BEGIN
ICON IDI_T5SIGN_ITK,IDC_MYICON,14,9,16,16
LTEXT "T5Sign_ITK 1.0 版",IDC_STATIC,49,10,119,8,SS_NOPREFIX
LTEXT "版权所有 (C) 2018",IDC_STATIC,49,20,119,8
DEFPUSHBUTTON "确定",IDOK,195,6,30,11,WS_GROUP
END
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE
BEGIN
"#define APSTUDIO_HIDDEN_SYMBOLS\r\n"
"#include ""windows.h""\r\n"
"#undef APSTUDIO_HIDDEN_SYMBOLS\r\n"
"\0"
END
3 TEXTINCLUDE
BEGIN
"\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// 字符串表
//
STRINGTABLE
BEGIN
IDC_T5SIGN_ITK "T5SIGN_ITK"
IDS_APP_TITLE "T5Sign_ITK"
END
#endif
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// 从 TEXTINCLUDE 3 资源生成。
//
/////////////////////////////////////////////////////////////////////////////
#endif // 不是 APSTUDIO_INVOKED

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save