3

このWPFアプリは.NET3.5を対象としており、Visual Studio 2010の4.0ツールを使用して構築されています(csc.exeのバージョンは4.0.30319.1です)。

私が見ているこの例外をどうすればいいのかわかりません。同じexeがすべてのマシンで何ヶ月も動作していますが、今日、顧客がこれに遭遇しました。ローカルで再現することはできません。続行する必要があるのは、以下のログファイルからのスタックトレースだけです。

Visual Studio 2010を使用して、ウィンドウにボタンを表示するだけの簡単なサンプルアプリケーションを作成しました。ボタンのコンテンツ文字列は、リソースディクショナリから取得されます。これはお客様のマシンで機能したため、.NETのインストールが完全に行われていないようです...

次に何を調査または調査するかについてのアイデアはありますか?たぶん、顧客の.NETインストールのいくつかの状態??

編集:お客様が.NET 3.5のアンインストールと再インストールを実行したところ、問題が修正されました。インストールにこの問題を引き起こしている奇妙な状態があったと思います。

エラー:

System.Windows.Markup.XamlParseException:'MainWindowViewResources.xaml'値をオブジェクト'System.Windows.ResourceDictionary'のプロパティ'Source'に割り当てることができません。保護されたメモリの読み取りまたは書き込みを試みました。これは多くの場合、他のメモリが破損していることを示しています。マークアップファイル「symformconfig;component/ view/mainwindowview.xaml」のオブジェクト「System.Windows.ResourceDictionary」でエラーが発生しました。---> System.AccessViolationException:保護されたメモリの読み取りまたは書き込みを試みました。これは多くの場合、他のメモリが破損していることを示しています。
System.IO.Packaging.PackagePart.CleanUpRequestedStreamsList()at System.IO.Packaging.PackagePart.GetStream(FileMode mode、FileAccess access)at System.IO.Packaging.PackWebResponse.CachedResponse.GetResponseStream()atSystem.IO.Packaging。 MS.Internal.WpfWebRequestHelper.GetContentType(WebResponse response)のSystem.IO.Packaging.PackWebResponse.get_ContentType()のPackWebResponse.GetResponseStream()
MS.Internal.WpfWebRequestHelper.GetResponseStream(WebRequest request、ContentType&contentType)at System.Windows.ResourceDictionary.set_Source(Uri value)---内部例外スタックトレースの終了--- System.Windows.Markup.XamlParseException.ThrowException( String message、Exception innerException、Int32 lineNumber、Int32 linePosition、Uri baseUri、XamlObjectIds currentXamlObjectIds、XamlObjectIds contextXamlObjectIds、Type objectType)at System.Windows.Markup.XamlParseException.ThrowException(ParserContext parserContext、Int32 lineNumber、Int32 linePo System.Windows.Markup.BamlRecordReader.ThrowExceptionWithLine(String message、Exception innerException)at System.Windows.Markup.BamlRecordReader.ReadPropertyRecordBase(String attribValue、Int16 attributeId、Int16 converterTypeId)at System.Windows.Markup.BamlRecordReader.ReadPropertyConverterRecord(BamlPropertyWithConverterRecord bamlPropertyRecord)at System.Windows.Markup.BamlRecordReader.ReadRecord(BamlRecord bamlRecord)at System.Windows.Markup.BamlRecordReader.Read(Boolean singleRecord)at System .Windows.Markup.TreeBuilderBamlTranslator.ParseFragment()at System.Windows.Markup.TreeBuilder.Parse()at System.Windows.Markup.XamlReader.LoadBaml(Stream stream、ParserContext parserContext、Object parent、Boolean closeStream)atSystem.Windows。 Application.LoadComponent(Object component、Uri resourceLocator)at Symform.Node.Configuration.MainWindowView.InitializeComponent()at Symform.Node.Configuration.MainWindowView..ctor()atSymform.Node.Configuration.App。OnStartup(StartupEventArgs e)atSystem.Windows.Application。<。ctor>b__0(Object used)at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback、Object args、Boolean isSingleParameter)atSystem.Windows.Threading.ExceptionWrapper。 TryCatchWhen(オブジェクトソース、デリゲートコールバック、オブジェクト引数、ブールisSingleParameter、デリゲートcatchHandler)

4

2 に答える 2

1

お客様が .NET 3.5 のアンインストールと再インストールを実行したところ、問題が修正されました。この問題を引き起こしているインストールに奇妙な状態があったと思います。

于 2010-11-09T01:51:20.843 に答える
1

MainWindowViewResources.xaml の BuildAction が Resource ではなく Page に設定されていることを確認します。その設定は [プロパティ] パネルにあります。

于 2010-11-03T02:30:04.040 に答える