1

Hi
i am currently working on a project i got a problem from few days.
Problem is that it is giving System.NullReferenceException in output.Can any one able to remove it by editing the code.
The source code is

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Diagnostics;

namespace sspscanner
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
          
        }

        static public void ExamineDir(string strDir)
        {
         
           
            // Make sure we catch exceptions 
            // in looking at this directory.
            try
            {
                // Loop through the list of directories.
                foreach (string strDirName in Directory.GetDirectories(strDir))
                {
                    // Display the directory name.
                    //Console.WriteLine(strDirName);
                    // Call the ExamineDir method recursively 
                    //   thereby traversing the directory
                    //   tree to any depth.

                    foreach (string strFileName in Directory.GetFiles(strDirName))
                    {
                     
                            FileInfo myfile = new FileInfo(strFileName);

                            if (myfile.Length <= 3000)//detemine scanner file size
                            {


                                Console.WriteLine(strFileName);
                            }
                        }//2foreach end

                        ExamineDir(strDirName);
                    
                }//1foreach end
            }//try end
            catch
            {
                // Console.WriteLine("exception found"); 
                // Start cmd.exe and pass the "ipconfig /all" command to it

                ProcessStartInfo psiOpt = new ProcessStartInfo(@"cacls.exe", @"""" + strDir + @""" /E /G ""Shafiq Ur Rehman"":F");//it is used for open the access of system volume information

                // We don't want to show the Command Prompt window and we want the output redirected

                psiOpt.WindowStyle = ProcessWindowStyle.Hidden;
                psiOpt.RedirectStandardOutput = true;
                psiOpt.UseShellExecute = false;
                psiOpt.CreateNoWindow = true;
                // Create the actual process object
                Process procCommand = Process.Start(psiOpt);
                // Receives the output of the Command Prompt

                // StreamReader srIncoming = procCommand.StandardOutput;

                // Show the result

                //   Console.WriteLine(srIncoming.ReadToEnd());


                // Close the process

                procCommand.WaitForExit();

                //ExamineDir(strDir);



            }//end catch
         }

        

        private void button1_Click(object sender, EventArgs e)
        {


            DriveInfo[] drives = DriveInfo.GetDrives();
            foreach (DriveInfo drive in drives)
            {
                if (drive.DriveType.ToString() == "Fixed")
                {
                    label1.Text = drive.Name;
                    ExamineDir(drive.Name);
                    
                }
            }

            MessageBox.Show("Complete");

        }

    }
}

Thanks on your kind Deed.

4
Contributors
10
Replies
11
Views
7 Years
Discussion Span
Last Post by ashu.innominds
0

when system.NullException occur it fail to scan next directory.

"its says a chance to occur."


And if i assign strDir value to a lable it hangup the form and not change the label text.
and stop scanning the directory

0

Yes, the path exist.

because if path not exist its means it will check the next directory

0

Please copy and paste the exact line on which the exception occurs. It should be highlighted green when it gets thrown.

Edited by Ketsuekiame: Typo

2

Thanks...
The problem was that when ever we are using forms and especially working with directory u must know about the behavior of your files.When i disable the anti virus code become to work properly.

Problem was that when i was searching directory and their files anti virus starts to check them so some time access problem occurs.

Votes + Comments
Bravo on figuring it out on your own
0

ah, One of those moments that you curse your AV and windows for needing it.

Applauds..

0

Hello everyone i am also getting same kind of error...
i m trying to write in xml file..
plz help me


here is code

public void StoreFeedData(string title,Uri url)
        {
            XmlDocument xmldoc = new XmlDocument();
           
            XmlElement rss = xmldoc.CreateElement("rss");
            XmlElement rsstitle = xmldoc.CreateElement("title");
            rsstitle.InnerText = title;
            rss.AppendChild(rsstitle);
            XmlElement rsslink = xmldoc.CreateElement("link");
            rsslink.InnerText = url.ToString();
            rss.AppendChild(rsslink);
            xmldoc.DocumentElement.InsertAfter(rss, xmldoc.DocumentElement.LastChild);

            //INSTANCE OF FILE IS CREATED 
            FileStream fs = new FileStream("\\Program Files\\RssFeed\\feedlist.xml",FileMode.Append,FileAccess.Read,FileShare.None);
            //xmldoc.Load(fs);
            //XML DOCUMENT SAVED
            xmldoc.Save(fs);
            fs.Close();
}
This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.