Help with P/Invoke question in Win NT 4.0!
-
I have built a .net control which works well in XP and Win 2000, but fails in NT 4.0 and throws an exception FileLoadException. Why would it fail in NT and work well in Win2000 and XP? In my code, where I am declaring P/Invoke functions, I have the following: [DllImport("uxtheme.dll")] static public extern int SetWindowTheme(IntPtr h, string s1, string s2); But the thing is I do not call this unmanaged function in my entire control's source code. Its just declared. That's all. Do you think this could be causing the problem of FileLoadException when I try to run it in NT 4.0 (because there is no uxtheme.dll in NT 4.0). Note that although I have declared it in my code, I never call this function at all. Do you think I need to remove this declaration from my code and rebuild it to run it in NT 4.0 box.
-
I have built a .net control which works well in XP and Win 2000, but fails in NT 4.0 and throws an exception FileLoadException. Why would it fail in NT and work well in Win2000 and XP? In my code, where I am declaring P/Invoke functions, I have the following: [DllImport("uxtheme.dll")] static public extern int SetWindowTheme(IntPtr h, string s1, string s2); But the thing is I do not call this unmanaged function in my entire control's source code. Its just declared. That's all. Do you think this could be causing the problem of FileLoadException when I try to run it in NT 4.0 (because there is no uxtheme.dll in NT 4.0). Note that although I have declared it in my code, I never call this function at all. Do you think I need to remove this declaration from my code and rebuild it to run it in NT 4.0 box.
Wow! I'm amazed you actually got it to work on windows 2000. uxtheme is a feature for windows xp and newer only. its not possible for it to work on older version of windows
-
Wow! I'm amazed you actually got it to work on windows 2000. uxtheme is a feature for windows xp and newer only. its not possible for it to work on older version of windows
No need to be amazed at all! I found the answer to my problem. Anyway, for your information, it will work in Win 2000 without any problem because the uxtheme P/Invoke function was "just declared" in the code and "was never actually used" or "called" and hence there is no issue for it to be running properly in Win 2000.