为了使Shell32工作,我应该在C#应用程序中包含哪些内容?
编辑:
我的应用程序无法识别shell32.我应该包括哪些参考或库?我想要做的是:
Shell32.Shell shell = new Shell32.Shell();
Run Code Online (Sandbox Code Playgroud)
我得到的是一个错误:
错误1找不到类型或命名空间名称"Shell32"(您是否缺少using指令或程序集引用?)
Vas*_*ich 50
只是Shell32.dll,以Windows\System32形成Shell32.dll文件夹,并使用它:
Shell32.Shell shell = new Shell32.Shell();
shell.MinimizeAll();
Run Code Online (Sandbox Code Playgroud)
xam*_*mir 47
也许这可以帮助:
Add reference.COM制表Add reference对话Microsoft Shell Controls and Automation你shell32准备好了......
Du *_* D. 26
我知道这个帖子已经老了,但是我发布这个帖子给任何有同样问题的人都这样做了.上面的解决方案不能在Windows 8下编译
Shell32.Shell shell = new Shell32.Shell(); <=这不适用于Windows 8
如果您希望应用程序在Windows 8下运行,请使用下面的解决方法.
using Shell32;
private Shell32.Folder GetShell32Folder(string folderPath)
{
Type shellAppType = Type.GetTypeFromProgID("Shell.Application");
Object shell = Activator.CreateInstance(shellAppType);
return (Shell32.Folder)shellAppType.InvokeMember("NameSpace",
System.Reflection.BindingFlags.InvokeMethod, null, shell, new object[] { folderPath });
}
Run Code Online (Sandbox Code Playgroud)
您现在有了使用Shell32.Shell的适当参考.
将 COM 库Microsoft Shell Controls and Automation的引用添加到您的项目中。此外,请确保使用的代码Shell32.Shell在单线程单元中运行,例如通过将[STAThread]属性添加到Main.