1

我正在用 C# 编码。我将以下参数发送给函数 gvLayout(gvc, g, layout)

IntPtr gvc = gvContext();

// My string containing the graph
IntPtr g = agmemread(source);

string layout = "nop";

我已经从 graphviz 的文件夹中导入了 dll。

我得到答案:

Error: Layout type: "nop" not recognized. Use one of:

所以我尝试了:

string layout = "dot";

并得到:错误:布局类型:“点”无法识别。使用以下之一:

我得到的 gvLayout(gvc, g, layout) 的 int 返回值为 -1(应该是 0)。


更新:

我将所有 dll 和 config6 文件放入我的项目中。现在我收到了 4 次消息,然后什么也没发生:

“程序无法启动,因为您的计算机缺少 libglib-2.0-0.dll。请尝试重新安装程序以解决此问题。”

问题是该文件已经存在。我还尝试将该文件的副本添加到文件夹 System32 中,但它也不起作用。


我已经阅读了为什么 Graphviz 在 gvLayout 上失败?并且无法达成解决方案。

4

3 回答 3

0

你是如何安装graphviz的?您是链接到已安装的版本,还是将 dll 复制到其他地方?插件机制依赖于一个名为 config6 的文件与 dll 一起确定哪些插件可用。

于 2013-10-29T20:06:23.813 回答
0

您确定所有 DLL 文件都在正确的文件夹中吗?当我实际将graphviz目录中的所有文件复制到正确的调试文件夹时,我摆脱了错误......

于 2014-03-25T13:34:15.990 回答
0

遇到同样的问题,我解决了它从可执行文件旁边的“C:\Program Files (x86)\Graphviz\bin”复制所有 *.dll 和“config6”文件。


我首先尝试复制刚需要的 .dll,但我遇到了一些错误或字体或布局问题。我最后复制了所有 .dll,现在一切正常。

于 2018-08-22T09:09:16.153 回答