チケット #1 (closed defect: fixed)

登録: 5 年

最終更新: 5 年

「視点」で視点を移動しようとすると落ちる

報告者: kkato 担当者: qurihara
優先度: critical マイルストーン:
コンポーネント: component1 バージョン:
キーワード: 関係者:

説明 (最終更新者: kkato) (diff)

「視点」で画面をドラッグするとエラーになります。

エラー情報:

System.MissingMethodException はハンドルされませんでした。
  Message="メソッドが見つかりません: 'Qurihara.InkView Qurihara.Slide.get_View()'"
  Source="ViewChangerPlugin"
  StackTrace:
       場所 KotodamaPlugin.ViewChangerPlugin.ViewMode.MoveView(Point inP, Point outP)
       場所 KotodamaPlugin.ViewChangerPlugin.ViewMode.MouseMove(Object sender, MouseEventArgs e) 場所 C:\workspace\kotodamaOSS\kotodama_Plugins\ViewChangerPlugin\ViewMode.cs:行 214
       場所 System.Windows.Forms.Control.OnMouseMove(MouseEventArgs e)
       場所 System.Windows.Forms.Control.WmMouseMove(Message& m)
       場所 System.Windows.Forms.Control.WndProc(Message& m)
       場所 System.Windows.Forms.ScrollableControl.WndProc(Message& m)
       場所 System.Windows.Forms.ContainerControl.WndProc(Message& m)
       場所 System.Windows.Forms.Form.WndProc(Message& m)
       場所 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       場所 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       場所 System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
       場所 System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
       場所 System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
       場所 System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
       場所 System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
       場所 System.Windows.Forms.Application.Run(Form mainForm)
       場所 Qurihara.Class1.Main() 場所 C:\workspace\kotodamaOSS\kotodamaCLASS\main.cs:行 38
       場所 System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
       場所 System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
       場所 Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
       場所 System.Threading.ThreadHelper.ThreadStart_Context(Object state)
       場所 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       場所 System.Threading.ThreadHelper.ThreadStart()

チケットの履歴

  更新者: kkato (5 年 前)

  • 説明 が変更されました (diff)

フォローアップ: ↓ 5   更新者: qurihara (5 年 前)

原因はわかりました. プラグインプロジェクトの参照設定では、ほとんどのDLLをローカルコピーしない設定なのですが、たまになんらかの操作をしてビルドすると、Visual Studioが勝手にローカルコピーする設定に変えてしまうのです.

時間を見つけてなおします.それほど時間はかからない予定.

ソースをいじる必要はありません.

  更新者: kkato (5 年 前)

  • 優先度major から critical に変更されました。

  更新者: kkato (5 年 前)

  • 担当者 somebody から qurihara に変更されました

↑ 2 への返信   更新者: kkato (5 年 前)

qurihara への返信

原因はわかりました. プラグインプロジェクトの参照設定では、ほとんどのDLLをローカルコピーしない設定なのですが、たまになんらかの操作をしてビルドすると、Visual Studioが勝手にローカルコピーする設定に変えてしまうのです.

もしかして*.userファイルを消してしまったのが原因かもしれません。 でも、*.userファイルはドライブ名付きの絶対パスが書いてあったりして、いろいろと邪悪な感じがするので、使わずにすむなら使わないほうがいいかと思います。

また、追加情報ですが、「字」機能についても同じ現象を確認しました。プラグインすべてについて確認したほうがいいかもしれません。

  更新者: qurihara (5 年 前)

  • ステータスnew から closed に変更されました。
  • 解決方法worksforme に設定されました。

とりあえずすべてのプラグインプロジェクトの依存関係を更新しました. 手元では動いています.皆さんも動くならばFixedにしてください. しかし,謎が残りました. 依存関係を更新しても,それぞれのプロジェクトの.csprojファイルは変更の無いままです. .csprojファイルを覗いてみると,依存関係は正常に記録されています. しかしソリューションを一度閉じてまた開くと,.csprojは正常なのにまたまた依存関係がVisualStudio上でおかしくなってしまいます. さらに,それでもアプリケーションは正しく動作するのです. 私の予想では,バイナリファイルでsvn管理外の.suoファイルにいろいろな情報が記録されているのではないかと思います. (.slnファイルをいじるだけでは,kotodamaCLASSプロジェクトをデフォルトプロジェクト(F5を押したときに起動するプロジェクト)にしたり,いくつかのプラグインを無効化する設定が反映されないから)

補足: 前バージョンでは,デフォルトプロジェクトがplugininterfaceプロジェクトになってしまっていました.これは.slnファイルの先頭にこのプロジェクトがあるからだと思います. そこで強引にkotodamaclassプロジェクトを先頭にして,デフォルトプロジェクトにするようにしました.

  更新者: kkato (5 年 前)

  • ステータスclosed から reopened に変更されました。
  • 解決方法 の設定値 worksforme が削除されました。

  更新者: kkato (5 年 前)

  • ステータスreopened から closed に変更されました。
  • 解決方法fixed に設定されました。

私の環境でも確認できましたので、これはクローズとします。

Note: チケットについてのヘルプは TracTickets を参照 して下さい。