System.FormatException 从 4.7 运行 .NET Framework 2.0

Posted

技术标签:

【中文标题】System.FormatException 从 4.7 运行 .NET Framework 2.0【英文标题】:System.FormatException running .NET Framework 2.0 from 4.7 【发布时间】:2019-04-30 14:32:13 【问题描述】:

您好,我正在尝试在 wpf 应用程序 4.7.2 中运行使用 .Net 框架 2.0 编译的外部 .exe

在应用程序外部运行 exe 它可以在 64 位和 32 位命令提示符下正常工作

在应用程序内部,无法启动

我尝试将平台目标更改为 32 位,但没有任何改变 这是我的简单代码

从事件查看器附加报告错误 LINK

public partial class Form1 : Form

    public Form1()
    
        InitializeComponent();
    

    private void Form1_Load(object sender, EventArgs e)
    
        Process.Start(@"D:\VSOnline\AZM\UI\Dll\REC\ucauavacom.exe");
    



Version=1
EventType=CLR20r3
EventTime=132011076783616260
ReportType=2
Consent=1
UploadTime=132011076784902815
ReportStatus=268435456
ReportIdentifier=6cb34329-4a71-4ab7-a974-14a77773fb82
Wow64Host=34404
Wow64Guest=332
OriginalFilename=ucauavacom.exe
AppSessionGuid=00000ce8-0004-0008-b9b8-fdf95fffd401
TargetAppId=W:00065aa8e3c53f2f0438188224566e08d7c400000000!0000653bf4303bfe4278760dc1f81e01af9b1a61e88f!ucauavacom.exe
TargetAppVer=2019//04//29:07:14:07!0!ucauavacom.exe
BootId=4294967295
TargetAsId=11516
IsFatal=4294967295
EtwNonCollectReason=1
Response.BucketId=c7751f8b64a5bd8e12d5b207b5b17a45
Response.BucketTable=5
Response.LegacyBucketId=1357186608904895045
Response.type=4
Sig[0].Name=Problem Signature 01
Sig[0].Value=ucauavacom.exe
Sig[1].Name=Problem Signature 02
Sig[1].Value=0.0.0.0
Sig[2].Name=Problem Signature 03
Sig[2].Value=5cc6a43f
Sig[3].Name=Problem Signature 04
Sig[3].Value=mscorlib
Sig[4].Name=Problem Signature 05
Sig[4].Value=2.0.0.0
Sig[5].Name=Problem Signature 06
Sig[5].Value=5b8769e1
Sig[6].Name=Problem Signature 07
Sig[6].Value=c4e
Sig[7].Name=Problem Signature 08
Sig[7].Value=59
Sig[8].Name=Problem Signature 09
Sig[8].Value=System.FormatException
DynamicSig[1].Name=OS Version
DynamicSig[1].Value=10.0.17763.2.0.0.256.4
DynamicSig[2].Name=Locale ID
DynamicSig[2].Value=1033
UI[2]=D:\VSOnline\VulpesAZMEC\UI\Dll\Genexus\ucauavacom.exe
LoadedModule[0]=D:\VSOnline\VulpesAZMEC\UI\Dll\Genexus\ucauavacom.exe
LoadedModule[1]=C:\Windows\SYSTEM32\ntdll.dll
LoadedModule[2]=C:\Windows\SYSTEM32\MSCOREE.DLL
LoadedModule[3]=C:\Windows\System32\KERNEL32.dll
LoadedModule[4]=C:\Windows\System32\KERNELBASE.dll
LoadedModule[5]=C:\Windows\System32\ADVAPI32.dll
LoadedModule[6]=C:\Windows\System32\msvcrt.dll
LoadedModule[7]=C:\Windows\System32\sechost.dll
LoadedModule[8]=C:\Windows\System32\RPCRT4.dll
LoadedModule[9]=C:\Windows\System32\SspiCli.dll
LoadedModule[10]=C:\Windows\System32\CRYPTBASE.dll
LoadedModule[11]=C:\Windows\System32\bcryptPrimitives.dll
LoadedModule[12]=C:\Windows\Microsoft.NET\Framework\v4.0.30319\mscoreei.dll
LoadedModule[13]=C:\Windows\System32\SHLWAPI.dll
LoadedModule[14]=C:\Windows\System32\combase.dll
LoadedModule[15]=C:\Windows\System32\ucrtbase.dll
LoadedModule[16]=C:\Windows\System32\GDI32.dll
LoadedModule[17]=C:\Windows\System32\gdi32full.dll
LoadedModule[18]=C:\Windows\System32\msvcp_win.dll
LoadedModule[19]=C:\Windows\System32\USER32.dll
LoadedModule[20]=C:\Windows\System32\win32u.dll
LoadedModule[21]=C:\Windows\System32\IMM32.DLL
LoadedModule[22]=C:\Windows\System32\kernel.appcore.dll
LoadedModule[23]=C:\Windows\SYSTEM32\VERSION.dll
LoadedModule[24]=C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
LoadedModule[25]=C:\Windows\WinSxS\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.9554_none_d08d6fa2442aa556\MSVCR80.dll
LoadedModule[26]=C:\Windows\System32\shell32.dll
LoadedModule[27]=C:\Windows\System32\cfgmgr32.dll
LoadedModule[28]=C:\Windows\System32\shcore.dll
LoadedModule[29]=C:\Windows\System32\windows.storage.dll
LoadedModule[30]=C:\Windows\System32\profapi.dll
LoadedModule[31]=C:\Windows\System32\powrprof.dll
LoadedModule[32]=C:\Windows\System32\cryptsp.dll
LoadedModule[33]=C:\Windows\assembly\NativeImages_v2.0.50727_32\mscorlib\ff1d144ce21afb2aa98cad685cd5645a\mscorlib.ni.dll
LoadedModule[34]=C:\Windows\System32\ole32.dll
LoadedModule[35]=C:\Windows\system32\uxtheme.dll
LoadedModule[36]=C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
LoadedModule[37]=C:\Windows\assembly\NativeImages_v2.0.50727_32\System\d7298a5015ba68c23f00471d6b82e406\System.ni.dll
LoadedModule[38]=C:\Windows\assembly\NativeImages_v2.0.50727_32\vjslib\2b0d8525e3b91031192b172be15bf5a0\vjslib.ni.dll
LoadedModule[39]=C:\Windows\system32\rsaenh.dll
LoadedModule[40]=C:\Windows\System32\bcrypt.dll
LoadedModule[41]=D:\VSOnline\VulpesAZMEC\UI\Dll\Genexus\gxclas-s-rDotNet.dll
LoadedModule[42]=D:\VSOnline\VulpesAZMEC\UI\Dll\Genexus\GxClasses.dll
LoadedModule[43]=D:\VSOnline\VulpesAZMEC\UI\Dll\Genexus\tabelle.dll
LoadedModule[44]=C:\Windows\Microsoft.NET\Framework\v2.0.50727\vjsnativ.dll
LoadedModule[45]=C:\Windows\System32\OLEAUT32.dll
LoadedModule[46]=C:\Windows\SYSTEM32\WSOCK32.dll
LoadedModule[47]=C:\Windows\System32\WS2_32.dll
LoadedModule[48]=C:\Windows\Microsoft.NET\Framework\v2.0.50727\diasymreader.dll
LoadedModule[49]=C:\Windows\assembly\NativeImages_v2.0.50727_32\System.Data\9f1a2a66adfaad4035e76ac9e9dc4752\System.Data.ni.dll
LoadedModule[50]=C:\Windows\assembly\GAC_32\System.Data\2.0.0.0__b77a5c561934e089\System.Data.dll
LoadedModule[51]=C:\Windows\System32\CRYPT32.dll
LoadedModule[52]=C:\Windows\System32\MSASN1.dll
LoadedModule[53]=C:\Windows\assembly\NativeImages_v2.0.50727_32\System.Drawing\79540f484951ac659ecd1f4b83fd7b83\System.Drawing.ni.dll
LoadedModule[54]=C:\Windows\assembly\NativeImages_v2.0.50727_32\vjscor\921ca78ff832b6b7cbd852cea314e17d\vjscor.ni.dll
LoadedModule[55]=D:\VSOnline\VulpesAZMEC\UI\Dll\Genexus\log4net.dll
LoadedModule[56]=C:\Windows\assembly\NativeImages_v2.0.50727_32\System.Configuration\3c344944cef7cb6aa601ef93c35559cc\System.Configuration.ni.dll
LoadedModule[57]=C:\Windows\assembly\NativeImages_v2.0.50727_32\System.Xml\625f15f169750dff26ab86b4540eadf0\System.Xml.ni.dll
LoadedModule[58]=C:\Windows\assembly\NativeImages_v2.0.50727_32\System.Management\2e66417e8c85e02597fb5dadd0d7e84d\System.Management.ni.dll
LoadedModule[59]=C:\Windows\SYSTEM32\WININET.dll
LoadedModule[60]=C:\Windows\SYSTEM32\iertutil.dll
LoadedModule[61]=C:\Windows\SYSTEM32\ondemandconnroutehelper.dll
LoadedModule[62]=C:\Windows\SYSTEM32\winhttp.dll
LoadedModule[63]=C:\Windows\SYSTEM32\IPHLPAPI.DLL
LoadedModule[64]=C:\Windows\system32\mswsock.dll
LoadedModule[65]=C:\Windows\System32\NSI.dll
LoadedModule[66]=C:\Windows\SYSTEM32\WINNSI.DLL
LoadedModule[67]=C:\Windows\assembly\NativeImages_v2.0.50727_32\System.Web\63e898df2d023e3a225a241eba37aa21\System.Web.ni.dll
State[0].Key=Transport.DoneStage1
State[0].Value=1
OsInfo[0].Key=vermaj
OsInfo[0].Value=10
OsInfo[1].Key=vermin
OsInfo[1].Value=0
OsInfo[2].Key=verbld
OsInfo[2].Value=17763
OsInfo[3].Key=ubr
OsInfo[3].Value=437
OsInfo[4].Key=versp
OsInfo[4].Value=0
OsInfo[5].Key=arch
OsInfo[5].Value=9
OsInfo[6].Key=lcid
OsInfo[6].Value=2057
OsInfo[7].Key=geoid
OsInfo[7].Value=118
OsInfo[8].Key=sku
OsInfo[8].Value=4
OsInfo[9].Key=domain
OsInfo[9].Value=1
OsInfo[10].Key=prodsuite
OsInfo[10].Value=256
OsInfo[11].Key=ntprodtype
OsInfo[11].Value=1
OsInfo[12].Key=platid
OsInfo[12].Value=10
OsInfo[13].Key=sr
OsInfo[13].Value=0
OsInfo[14].Key=tmsi
OsInfo[14].Value=24429
OsInfo[15].Key=osinsty
OsInfo[15].Value=2
OsInfo[16].Key=iever
OsInfo[16].Value=11.437.17763.0-11.0.120
OsInfo[17].Key=portos
OsInfo[17].Value=0
OsInfo[18].Key=ram
OsInfo[18].Value=15919
OsInfo[19].Key=svolsz
OsInfo[19].Value=356
OsInfo[20].Key=wimbt
OsInfo[20].Value=0
OsInfo[21].Key=blddt
OsInfo[21].Value=180914
OsInfo[22].Key=bldtm
OsInfo[22].Value=1434
OsInfo[23].Key=bldbrch
OsInfo[23].Value=rs5_release
OsInfo[24].Key=bldchk
OsInfo[24].Value=0
OsInfo[25].Key=wpvermaj
OsInfo[25].Value=0
OsInfo[26].Key=wpvermin
OsInfo[26].Value=0
OsInfo[27].Key=wpbuildmaj
OsInfo[27].Value=0
OsInfo[28].Key=wpbuildmin
OsInfo[28].Value=0
OsInfo[29].Key=osver
OsInfo[29].Value=10.0.17763.437.amd64fre.rs5_release.180914-1434
OsInfo[30].Key=buildflightid
OsInfo[31].Key=edition
OsInfo[31].Value=Enterprise
OsInfo[32].Key=ring
OsInfo[33].Key=expid
OsInfo[34].Key=containerid
OsInfo[35].Key=containertype
OsInfo[36].Key=edu
OsInfo[36].Value=0
FriendlyEventName=Stopped working
ConsentKey=CLR20r3
AppName=ucauavacom.exe
AppPath=D:\VSOnline\VulpesAZMEC\UI\Dll\Genexus\ucauavacom.exe
ReportDescription=Stopped working
ApplicationIdentity=00000000000000000000000000000000
MetadataHash=-1204513862

【问题讨论】:

您能否发布完整的异常详细信息? 请在问题本身中发布异常详细信息,例如消息和堆栈跟踪。 请在问题本身中发布链接文件的内容。回答问题所需的一切都应该在问题中in 也尝试设置工作目录,可能是程序需要某个工作目录才能运行。不幸的是,如果您无权访问该应用程序的源代码,我们只能提供“哦,那太糟糕了”之外的其他帮助。您可以尝试从 Visual Studio 内部运行它并附加到它或其他东西上,看看是否可以调试它? 感谢 Lasse,它可以设置工作目录 【参考方案1】:

问题可能是两个应用程序A.exeB.exe 使用同名的dll C.dll,该dll 存在于存储可执行文件的两个目录中的不同版本中。

如果从A.exe启动B.exe,默认情况下A.exe所在的目录为当前工作目录,B.exe会尝试从该目录加载C.dll,但失败。

在启动应用程序时指定正确的工作目录。

string executable = @"D:\VSOnline\AZM\UI\Dll\REC\ucauavacom.exe";
ProcessStartInfo info = new ProcessStartInfo();
info.FileName = executable;
info.WorkingDirectory = Path.GetDirectoryName(executable);

Process.Start(info);

【讨论】:

以上是关于System.FormatException 从 4.7 运行 .NET Framework 2.0的主要内容,如果未能解决你的问题,请参考以下文章

未处理的异常:System.FormatException

无法启动 Kestrel。 System.FormatException:无效的 URL:'http:////*:80'

数组中的“System.FormatException:'输入字符串格式不正确”错误

DatePicker System.FormatException

SQL Server 地理 STGeomFromWKB 错误 - System.FormatException:24201

System.FormatException:索引(从零开始)必须大于或等于零且小于参数列表的大小