From 860eec4c0a2dd1642518eefcbec4cdf8a63091c9 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jean-Philippe=20Bruy=C3=A8re?= Date: Sun, 31 Oct 2021 18:26:25 +0100 Subject: [PATCH] add message for windows on dll not found --- Crow/src/Interface.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Crow/src/Interface.cs b/Crow/src/Interface.cs index a41d5dae..ac8c73d4 100644 --- a/Crow/src/Interface.cs +++ b/Crow/src/Interface.cs @@ -83,7 +83,15 @@ namespace Crow switch (libraryName) { case "cairo": - return NativeLibrary.Load("cairo-2", assembly, null); + IntPtr cairoNative = NativeLibrary.Load("cairo-2", assembly, null); + if (cairoNative == IntPtr.Zero && RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { + Console.WriteLine ("[Error] Native dlls required by crow are not found."); + Console.WriteLine ("You can download them here:\n\thttps://onedrive.live.com/download?cid=B3181664476E9B48&resid=B3181664476E9B48%21493&authkey=AJCso6KAKMCBfAM"); + Console.WriteLine ("Then extract them in one of the following directory or in your build target one: "); + foreach (string dir in System.AppContext.GetData("NATIVE_DLL_SEARCH_DIRECTORIES").ToString().Split (';')) + Console.WriteLine ($"\t- {dir}"); + } + return cairoNative; /*case "glfw3": return NativeLibrary.Load("glfw", assembly, null);*/ case "rsvg-2.40": -- 2.47.3