2

私の Windows フォーム アプリケーション (C# を使用して Visual Studio 2008 で作成) は、社内全体に配布されており、50 台以上の PC で問題なく動作しています。

昨日、WinXP を実行している古い PC にインストールする必要がありました。Visual Studio 2008 セットアップ プロジェクトで、.Net Framework 3.5 SP1 をインストールするように求められました。それをインストールし、再起動してから、インストールを続行しました。

インストール後、古いマシンの電源を切り、5 秒ほど待ってから、再び電源を入れました。

アプリケーションを実行しようとすると、未処理の例外が発生しました。 .

エラーのスクリーンショット

  1. DateTimeOffset3.5 SP1 でこの機能がインストールされなかったのはなぜですか?

  2. アプリケーションが からこれをロードしようとするのはなぜmscorlib version 2.0ですか?

  3. キーワード を検索しましたDateTimeOffsetが、プロジェクトのどこにも存在しません。これはDateTime(つまりDateTime.Now.AddDays(1))の一部ですか?

完全な例外のコピーを次に示します。

   呼び出しの詳細については、このメッセージの最後を参照してください
このダイアログ ボックスの代わりにジャスト イン タイム (JIT) デバッグを使用できます。

************** 例外テキスト **************
System.TypeLoadException: アセンブリ 'mscorlib、Version=2.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089' から型 'System.DateTimeOffset' を読み込めませんでした。
   System.ComponentModel.ReflectTypeDescriptionProvider.get_IntrinsicTypeConverters() で
   System.ComponentModel.ReflectTypeDescriptionProvider.ReflectedTypeData.GetConverter (オブジェクト インスタンス) で
   System.ComponentModel.TypeDescriptor.TypeDescriptionNode.DefaultTypeDescriptor.System.ComponentModel.ICustomTypeDescriptor.GetConverter() で
   System.ComponentModel.TypeDescriptor.GetConverter (型の種類) で
   System.Windows.Forms.ListControl.GetItemText (オブジェクト項目) で
   System.Windows.Forms.ComboBox.NativeAdd (オブジェクト項目) で
   System.Windows.Forms.ComboBox.OnHandleCreated (EventArgs e) で
   System.Windows.Forms.Control.WmCreate (メッセージ & m) で
   System.Windows.Forms.Control.WndProc (メッセージ & m) で
   System.Windows.Forms.ComboBox.WndProc (メッセージ & m) で
   System.Windows.Forms.Control.ControlNativeWindow.OnMessage (メッセージ & m) で
   System.Windows.Forms.Control.ControlNativeWindow.WndProc (メッセージ & m) で
   System.Windows.Forms.NativeWindow.Callback (IntPtr hWnd、Int32 メッセージ、IntPtr wparam、IntPtr lparam) で


************** 読み込まれたアセンブリ **************
mscorlib
    アセンブリ バージョン: 2.0.0.0
    Win32 バージョン: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
--------------------------------------------
スイート
    アセンブリ バージョン: 2.2.21.30536
    Win32 バージョン: 2.2.21
    コードベース: file:///C:/Program%20Files/Aaon%20Coil%20Products,%20Inc/ACP%20Software%20Suite/Suite.exe
--------------------------------------------
System.Windows.Forms
    アセンブリ バージョン: 2.0.0.0
    Win32 バージョン: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
--------------------------------------------
システム
    アセンブリ バージョン: 2.0.0.0
    Win32 バージョン: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
--------------------------------------------
System.Drawing
    アセンブリ バージョン: 2.0.0.0
    Win32 バージョン: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
--------------------------------------------
System.Core
    アセンブリ バージョン: 3.5.0.0
    Win32 バージョン: 3.5.30729.1 作成者: SP
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll
--------------------------------------------
アクセシビリティ
    アセンブリ バージョン: 2.0.0.0
    Win32 バージョン: 2.0.50727.3053 (netfxsp.050727-3000)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
--------------------------------------------
System.Data
    アセンブリ バージョン: 2.0.0.0
    Win32 バージョン: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
--------------------------------------------
AcpFormHeader
    アセンブリ バージョン: 1.0.5.0
    Win32 バージョン: 1.0.5
    CodeBase: file:///C:/Program%20Files/Aaon%20Coil%20Products,%20Inc/ACP%20Software%20Suite/AcpFormHeader.DLL
--------------------------------------------
System.Xml
    アセンブリ バージョン: 2.0.0.0
    Win32 バージョン: 2.0.50727.42 (RTM.050727-4200)
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
--------------------------------------------

************** JIT デバッグ **************
Just-In-Time (JIT) デバッグを有効にするには、この .config ファイル
アプリケーションまたはコンピューター (machine.config) には、
system.windows.forms セクションで設定された jitDebugging 値。
アプリケーションは、デバッグを使用してコンパイルする必要もあります
有効にします。

例えば:


    


JIT デバッグが有効になっている場合、未処理の例外
コンピューターに登録されている JIT デバッガーに送信されます
このダイアログ ボックスで処理するのではなく、

4

3 に答える 3

2
Win32 Version: 2.0.50727.42 (RTM.050727-4200)

インストール中に深刻な問題が発生しました。リビジョン 42 は、元の .NET 2.0 リリースです。トレースは 2.0.50727.3053 も示しています。これは適切なものです。現在、マシンにはさまざまなアセンブリ バージョンが混在しています。例外は確かにそれで予想されます。もちろん、これがどのように発生したのかはわかりません。既存の 2.0 インストールの上に 3.5 をインストールしたことが原因だと思います。または、インストール後にマシンを再起動するのを忘れました。

于 2011-01-25T21:51:31.133 に答える
1
  1. 良い質問。インストールに問題があったようです。
  2. .NET 3.5 は、.NET 3.0 と同様に 2.0 ランタイムを使用するためです。
  3. いいえ、そうではありません。これは完全に独立した構造です ( MSDNを参照)。それを使用しているコンポーネント、おそらくサードパーティのアセンブリが必要です。
于 2011-01-25T21:09:29.907 に答える
1

今日も同じ問題が発生しました。この方法で DataVisualization.Charting.Series に値を挿入していました

MaSerie.Points.AddXY(x, y)

これのコードを変更すると、DateTimeOffset エラーが消えます

MaSerie.Points.Add(New DataVisualization.Charting.DataPoint(x, y))
于 2012-07-10T20:43:26.217 に答える