精华内容
下载资源
问答
  • 一个可以管理Windows的资源管理器,winform编程,可学习参考,还有很多不足给予指点。一个可以管理Windows的资源管理器,winform编程,可学习参考,还有很多不足给予指点。
  • 利用C#编的资源管理器,类似Win系统自带的资源管理器
  • 利用Excel的VBA编程调用windows资源管理器, 自助选择路径, 并返回路径地址, 基础操作!!!
  • VC编程查看exe进程的资源管理器,VC编程查看exe进程的资源管理器
  • 通过编程实现windows资源管理器,加深对磁盘、文件夹、文件的理解及编程能力。 内容: 指定有磁盘或文件夹,通过递归的方法搜索该位置下的所有资源并列出相应信息(属性、大小、日期等)。 只求源程序就可以了,...
  • 精彩编程编程技巧-VB与Windows资源管理器互拷文件 ...
  • 如果你使用的是win7+的系统,那么你很可能遇到过下面的提示框:导致资源管理器崩溃的原因有很多: 1. 第三方软件冲突,包括中毒软件不兼容等情况 2. 系统本身缺陷,包括缺少必要文件,设置错误或注册表异常等情况 ...

    如果你使用的是win7+的系统,那么你很可能遇到过下面的提示框:

    资源管理器已停止工作

    导致资源管理器崩溃的原因有很多:
    1. 第三方软件冲突,包括中毒软件不兼容等情况
    2. 系统本身缺陷,包括缺少必要文件,设置错误或注册表异常等情况
    3. 其他

    百度有很多的解决方案,不过还是要具体情况具体分析,查找根源。这里就不详述了。

    如果你在测试你自己的程序的时候遇到这种情况,并且是确定性的,那很可能就是程序本身存在问题,需要调试排查,比如使用日志记录等来跟踪崩溃点。

    如果你的程序是要长时间运行的,并且偶尔才会遇到这种情况,排查也没有找到可疑的问题,那么或许一个临时的方案就是,如何让你的程序自动从 资源管理器已停止工作中恢复,这也是今天这里将要提到的解决方案。

    我们的思路很简单:当出现崩溃的时候我们桌面上肯定是有这样一个窗口存在,并且其窗口标题是固定的“Windows 资源管理器”,这时,用户界面是停止了交互功能,但如果我们的程序还能够枚举窗口来找到这个窗口,就是我们的程序可以检测到这个情况,那就可以去显式的重启explorer.exe进程,来从这种情况中恢复回来。测试后你会看到,答案是肯定的。不过如果你在程序中结束掉explorer.exe这个进程,一般并不需要你再显式的去重启这个进程,它会自动重启。
    那么代码就简单了:

    var handle = Utility.FindWindow("windows 资源管理器");
    if(handle != IntPtr.Zero)
    {
        RestartExplorer();
        Utility.CloseWindow(handle);
    }
    
    public static void RestartExplorer()
           {
               Process[] processes;
               processes = Process.GetProcessesByName("explorer");
               foreach (var p in processes)
               {
                   p.Kill();
               }
    
               //wait auto start
               System.Threading.Thread.Sleep(2000);
               //ensure start
               processes = Process.GetProcessesByName("explorer");
               if (processes.Count() == 0)
               {
                   Process.Start("explorer.exe");
               }
           }
    展开全文
  • 内容索引:VB源码,系统相关,仿Windows,资源管理器 VB仿真的Windows资源管理器,只不过有个封装的DLL,没有开源,有点遗憾啊,不过大家可以围绕这个DLL编程,它确实用起来比较方便,做一个类似资源管理器的东西很好用...
  • windows资源管理器

    2009-09-18 13:08:11
    最近刚涉及winform编程,模仿windows资源管理器自己制作的一个小程序,实现了windows资源管理器的基本功能,包括文件复制,粘贴,文件压缩,解压,鼠标操作,快捷键
  • 仿windows资源管理器

    2012-07-18 15:37:39
    自己学习java界面编程时模仿windows资源管理器用java awt和swing写的一个小程序,欢迎下载,还有些许bug有待大家完善
  • ListViewTreeView实现资源管理器,可以预览到C,D,E,F盘里面的文件夹以及子文件,图形界面丰富,用winform编程
  • 内容索引:VB源码,界面编程,滑动菜单 VB不用API函数实现XPSlide滑动条,也就是Windows XP 资源管理器左侧的管理菜单,本实现方法没有使用任何函数,而且生成的菜单操作过程中无任何闪烁,相信这种方法是值得我们学习...
  • 知识点:TreeView控件、ListView控件的使用、SplitContainer控件的使用 ... 一种常见的方法是,使用ListView和TreeView控件,创建类似于 Windows 操作系统的 Windows 资源管理器功能的用户界面 (UI)。 Windows 资...

    知识点:TreeView控件、ListView控件的使用、SplitContainer控件的使用

            Visual Studio 的优势之一是能够在较短的时间中创建具有专业外观的 Windows 窗体应用程序。 一种常见的方法是,使用ListView和TreeView控件,创建类似于 Windows 操作系统的 Windows 资源管理器功能的用户界面 (UI)。 Windows 资源管理器中显示用户的计算机上的文件和文件夹的层次结构。

    功能需求:点击左侧TreeView控件里的节点,右侧ListView控件里显示对应的文件内容。

    实现步骤:

    第一步:在VS软件中新建项目。

    第二步:从工具箱中添加一个SplitContainer控件到窗体上,并设置SplitContainer控件的Dock属性为Fill。

    SplitContainer控件可视为一个复合控件,它是由可移动条隔开的两个面板。 当鼠标指针位于条上方时,指针将改变形状以表示条可移动,此时可以调整左右两边的宽度。

     

    第三步:从工具箱添加一个ImageList控件到窗体,并设置Images属性,添加两张图片。

    第四步:从工具箱添加一个TreeView控件到窗体,并将它放置于SplitContainer控件的左侧,调整它的大小,使其填满左侧。同时设置Dock属性为Fill,设置ImageList属性为imageList1。

    第五步:从工具箱添加一个ListView控件到窗体上,并将它放置于SplitContainer控件的右侧,调整它的大小,使其填满右侧。同时设置Dock属性为Fill,View属性设置为Details,SmallImageList 属性设置为 imageList1。

    设置ListView控件的Columns属性,即设置详细视图里列的名称,添加3个ClolumnHeader,分别为(Name、Type、和Last Modified)

    第六步:实现代码填充TreeView节点和子节点。 将此代码添加到Form1类。方法:在解决方案资源管理器中,找到文件Form1.cs,在文件名称上单击鼠标右键,点击【查看代码】,即可进入代码编写模式。

    添加代码:

    private void PopulateTreeView()
    {
        TreeNode rootNode;
        
        DirectoryInfo info = new DirectoryInfo(@"../..");
        if (info.Exists)
        {
            rootNode = new TreeNode(info.Name);
            rootNode.Tag = info;
            GetDirectories(info.GetDirectories(), rootNode);
            treeView1.Nodes.Add(rootNode);
        }
    }
    
    private void GetDirectories(DirectoryInfo[] subDirs, 
        TreeNode nodeToAddTo)
    {
        TreeNode aNode;
        DirectoryInfo[] subSubDirs;
        foreach (DirectoryInfo subDir in subDirs)
        {
            aNode = new TreeNode(subDir.Name, 0, 0);
            aNode.Tag = subDir;
            aNode.ImageKey = "folder";
            subSubDirs = subDir.GetDirectories();
            if (subSubDirs.Length != 0)
            {
                GetDirectories(subSubDirs, aNode);
            }
            nodeToAddTo.Nodes.Add(aNode);
        }
    }

    添加此代码以后会发现程序出现错误提示:是因为前面的代码使用 System.IO 命名空间,因此添加相应的使用或导入窗体顶部的语句即可。

    第七步:从上一步中窗体的构造函数调用设置方法或Load事件处理方法。 将代码PopulateTreeView();添加到窗体构造函数。

    public Form1()
    {
        InitializeComponent();
        PopulateTreeView();
    }

    第八步:给treeview1 控件添加NodeMouseClick事件, 并实现代码来填充listview1单击节点时的节点的内容。添加以下代码到NodeMouseClick事件里。

     TreeNode newSelected = e.Node;
        listView1.Items.Clear();
        DirectoryInfo nodeDirInfo = (DirectoryInfo)newSelected.Tag;
        ListViewItem.ListViewSubItem[] subItems;
        ListViewItem item = null;
    
        foreach (DirectoryInfo dir in nodeDirInfo.GetDirectories())
        {
            item = new ListViewItem(dir.Name, 0);
            subItems = new ListViewItem.ListViewSubItem[]
                {new ListViewItem.ListViewSubItem(item, "Directory"), 
                 new ListViewItem.ListViewSubItem(item, 
                    dir.LastAccessTime.ToShortDateString())};
            item.SubItems.AddRange(subItems);
            listView1.Items.Add(item);
        }
        foreach (FileInfo file in nodeDirInfo.GetFiles())
        {
            item = new ListViewItem(file.Name, 1);
            subItems = new ListViewItem.ListViewSubItem[]
                { new ListViewItem.ListViewSubItem(item, "File"), 
                 new ListViewItem.ListViewSubItem(item, 
                    file.LastAccessTime.ToShortDateString())};
    
            item.SubItems.AddRange(subItems);
            listView1.Items.Add(item);
        }
    
        listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);

    第九步:启动运行。点击左侧TreeView里的节点(目录名称),右侧ListView控件对应打开该节点(目录)下所有的文件。

     

    完整代码:(如果复制完整代码,注意项目名称是否一致)

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace WindowsFormsApp2
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
                PopulateTreeView();
            }
            private void PopulateTreeView()
            {
                TreeNode rootNode;
    
                DirectoryInfo info = new DirectoryInfo(@"../..");
                if (info.Exists)
                {
                    rootNode = new TreeNode(info.Name);
                    rootNode.Tag = info;
                    GetDirectories(info.GetDirectories(), rootNode);
                    treeView1.Nodes.Add(rootNode);
                }
            }
    
            private void GetDirectories(DirectoryInfo[] subDirs,
                TreeNode nodeToAddTo)
            {
                TreeNode aNode;
                DirectoryInfo[] subSubDirs;
                foreach (DirectoryInfo subDir in subDirs)
                {
                    aNode = new TreeNode(subDir.Name, 0, 0);
                    aNode.Tag = subDir;
                    aNode.ImageKey = "folder";
                    subSubDirs = subDir.GetDirectories();
                    if (subSubDirs.Length != 0)
                    {
                        GetDirectories(subSubDirs, aNode);
                    }
                    nodeToAddTo.Nodes.Add(aNode);
                }
            }
    
            private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
            {
                TreeNode newSelected = e.Node;
                listView1.Items.Clear();
                DirectoryInfo nodeDirInfo = (DirectoryInfo)newSelected.Tag;
                ListViewItem.ListViewSubItem[] subItems;
                ListViewItem item = null;
    
                foreach (DirectoryInfo dir in nodeDirInfo.GetDirectories())
                {
                    item = new ListViewItem(dir.Name, 0);
                    subItems = new ListViewItem.ListViewSubItem[]
                        {new ListViewItem.ListViewSubItem(item, "Directory"),
                 new ListViewItem.ListViewSubItem(item,
                    dir.LastAccessTime.ToShortDateString())};
                    item.SubItems.AddRange(subItems);
                    listView1.Items.Add(item);
                }
                foreach (FileInfo file in nodeDirInfo.GetFiles())
                {
                    item = new ListViewItem(file.Name, 1);
                    subItems = new ListViewItem.ListViewSubItem[]
                        { new ListViewItem.ListViewSubItem(item, "File"),
                 new ListViewItem.ListViewSubItem(item,
                    file.LastAccessTime.ToShortDateString())};
    
                    item.SubItems.AddRange(subItems);
                    listView1.Items.Add(item);
                }
    
                listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
            }
        }
    }
    

     

     

     

     

     

    ======================这里是结束分割线====================

     

     

    展开全文
  • 内容索引:Delphi源码,系统相关,Windows,资源管理器 Delphi写的界面挺棒的Windows资源管理器,与Windows固有的挺像,支持显示图标,显示树叉菜单等,虽然有系统的资源管理器,我们不怎么用,但发上来的目的是学习...
  • 通过编程实现windows资源管理器的搜索功能,加深对磁盘、文件夹、文件的理解及编程能力。 内容: 指定有磁盘或文件夹,通过递归的方法搜索该位置下符合条件的资源并列出相应信息(属性、大小、日期等)。
  • VB做的资源管理器

    2008-06-08 21:53:43
    VB做的资源管理器,源码形式,对VB编程很有用!
  • 该代码涉及到windows类似资源管理器的实现,其中包含很多shell编程,是一个值得参考的知识。
  • 本人自己编写的程序,用VS2013编写C#.net编程
  • 摘要:Delphi源码,界面编程,漂亮界面 一个类似Windows资源管理器的Delphi窗口设计示例,大家在做一些信息管理系统的时候大概要用到吧,像客户管理系统、库存管理系统、考勤管理系统等,这个窗口设计的风格大家可借鉴...
  • 目的:通过编程实现windows资源管理器,加深对磁盘、文件夹、文件的理解及编程能力。 内容:指定有磁盘或文件夹,通过递归的方法搜索该位置下的所有资源并列出相应信息(属性、大小、日期) 用c++编写,哪位大神...
  • 《Solaris 10资源管理器开发者指南》介绍了如何编写用于对系统资源进行分区和管理 的应用程序,并讨论了要使用的API。本书还提供了编程示例,并对编写应用程序时要 考虑的编程问题进行了讨论。
  • 内容索引:VC/C++源码,界面编程,树形菜单 DirTree VC++版Windows资源管理器可的树型展开菜单,样式和外观和windowsr的几乎是一样的,超漂亮,而且在实际编程开发中,树控的应用也很广泛,希望您通过此菜单,可将树控...
  • 请问资源管理器中的WPS网盘和OneDrive网盘的客户端怎么实现的?Shell 扩展编程?,我大概晓得是Windows Shell 扩展编程做的,但是这个服务器上的目录本地没得,是通过那种方式实现的呢? 我猜测是拦截IShellFolder...
  • 文件管理器(设计+源代码)c#编程语言 功能类似windows资源管理器
  • 资源管理器C#源代码

    2009-03-02 13:02:33
    用C#写的类似Windows的资源管理器。提供Windows下的5种视图来展示文件。源代码比较简单,使用了列表、树等控件。适合于希望学习C#的朋友。希望能帮助好学的朋友通过实践学习C#编程
  • 系统相关,资源管理器,仿Windows vb写的文件管理器,完成的功能类似windows的资源管理器,在原有基础上根据自己的喜好添加了若干实用小功能,比如将IE浏览器集成到管理器中,还可以指定运行程序,将Windows编程常用...
  • 通过编程实现windows资源管理器的搜索功能,加深对磁盘、文件夹、文件的理解及编程能力。 内容: 指定有磁盘或文件夹,通过递归的方法搜索该位置下符合条件的资源并列出相应信息(属性、大小、日期等)。 求大神解答...
  • Delphi写的界面挺棒的Windows资源管理器,与Windows固有的挺像,支持显示图标,显示树叉菜单等,虽然有系统的资源管理器,我们不怎么用,但发上来的目的是学习交流,希望它能为你的编程开拓一些思路。
  • 编程术语晦涩Thanks to John Elliot, how to get Windows Explorer to "Yes to All" or "No to All":感谢John Elliot ,如何将Windows资源管理器设置为“全部同意”或“全部拒绝”: If you are copying manually in...
    编程术语晦涩

    编程术语晦涩

    Thanks to John Elliot, how to get Windows Explorer to "Yes to All" or "No to All":

    感谢John Elliot ,如何将Windows资源管理器设置为“全部同意”或“全部拒绝”:

    If you are copying manually in the GUI with a drag and drop or a
    CTRL+C/CTRL+V then press SHIFT when you click 'Yes/No' the first time you are prompted and it will remember that as the default answer for all other files in the copy operation.

    如果要通过拖放操作或CTRL + C / CTRL + V然后在第一次提示时单击“是/否”时按SHIFT键,它将记住这是复制操作中所有其他文件的默认答案。

    翻译自: https://www.hanselman.com/blog/obscure-offtopic-tip-of-the-day-how-to-get-windows-explorer-file-copymove-to-yes-to-all-or-no-to-all

    编程术语晦涩

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,867
精华内容 1,146
关键字:

编程资源管理器