0
を使用して、クラスでEmguを使用しているとき、私は奇妙なconfictを発見した「ImageViewerの」C#GTK 2&3競合Emgucv
することは、すべてがうまく動作します。例えば、
using Emgu.CV;
using Emgu.CV.Util;
using Emgu.CV.UI;
namespace TmpTest
{
class TmpTest
{
private Mat img = new Mat(); // a non-static class member is OKey
public static void Main(string[] arg)
{
SDKWrapper util = new SDKWrapper();
ImageViewer viewer = new ImageViewer();
VideoCapture capture = new VideoCapture();
Application.Idle += new EventHandler (delegate(object sender, EventArgs e) {
Mat read_frame = capture.QueryFrame();
util.processFrame(read_frame);
util.drawSkeleton(read_frame);
viewer.Image = read_frame;
});
viewer.ShowDialog();
return;
}
}
}
以下のようなコードしかし、すぐに、私は静的クラスのメンバを追加すると、例えば、
private static Mat img
に
private Mat img
を変更、私はすぐに私はこの
Gtk-ERROR **: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported
のようなランタイムエラーを得ましたubuntu 16.04とmonodevelopmentを使って、誰が何が起こったのか、それをどのように解決するのかを知っていますか?