gpt4 book ai didi

c# - 为什么我得到这个 NullReferenceException C#

转载 作者:行者123 更新时间:2023-11-30 13:49:43 33 4
gpt4 key购买 nike

<分区>

我一直在为一个应用程序编写一些代码,以通过事件目录查询来管理连接的用户和设备。

然后我收到这个错误“NullReferenceException was unhandled”大约一个星期,使用代码这是现在唯一停止应用程序的事情。

这是我使用的后台代码:

private void backgroundWorker2_Dowork(object sender, DoWorkEventArgs e)
{
try
{
e.Result = "";

int val = 6000;

for (int a = 1; a <= val; a++)
{
counter.Text = Convert.ToString(a);
if (txtWorkGroupName.Text == "") return;

DataTable dt = new DataTable();
dt.Clear();

dt.Columns.Add(new DataColumn("ComputerName", typeof(String))); //0
dt.Columns.Add(new DataColumn("IP", typeof(String))); //1
dt.Columns.Add(new DataColumn("MAC", typeof(String))); //2
dt.Columns.Add(new DataColumn("Descubierto", typeof(String))); //3
//int i = 0;

try
{
// Datos del grupo WinNT://&&&&(Nombre del grupo de trabajo)
DirectoryEntry DomainEntry = new DirectoryEntry("WinNT://" + txtWorkGroupName.Text + "");
DomainEntry.Children.SchemaFilter.Add("Computer");


///*************************************************
/// Interacting with pc's in the domain
///*************************************************

foreach (DirectoryEntry machine in DomainEntry.Children)
{
string strMachineName = machine.Name;
string strMACAddress = "";
IPAddress IPAddress;
DateTime discovered;

try
{
IPAddress = getIPByName(machine.Name);
}
catch
{
continue;
}//try/catch

///*************************************************
/// Get Mac
///*************************************************
strMACAddress = getMACAddress(IPAddress);

discovered = DateTime.Now;
///*************************************************
/// Add lines in the grid
///*************************************************

DataRow dr = dt.NewRow();


dr[0] = machine.Name;
dr[1] = IPAddress;
dr[2] = strMACAddress;
dr[3] = Convert.ToString(discovered);
dt.Rows.Add(dr);

///*************************************************
/// SETTING DATASOURCE
///*************************************************
dgvComputers1.DataSource = dt;


Thread.Sleep(2000);

}//foreach loop


catch (Exception ex)
{
{
MessageBox.Show(ex.Message);
}
}


if (backgroundWorker2.CancellationPending)
{
e.Cancel = true;
return;
}
}
}
catch (NullReferenceException ex)
{
MessageBox.Show("error:" + ex);
}
catch (NoNullAllowedException ex)
{
MessageBox.Show("error:" + ex);
}
catch (AccessViolationException ex)
{
MessageBox.Show("error:" + ex);
}
}

这是异常详细信息,抱歉,它们是西类牙语。

    System.NullReferenceException was unhandled
Message="Object reference not set to an instance of an object."
Source="System.Windows.Forms"
StackTrace:
en System.Windows.Forms.DataGridViewRowHeaderCell.PaintPrivate(Graphics graphics, Rectangle clipBounds, Rectangle cellBounds, Int32 rowIndex, DataGridViewElementStates dataGridViewElementState, Object formattedValue, String errorText, DataGridViewCellStyle cellStyle, DataGridViewAdvancedBorderStyle advancedBorderStyle, DataGridViewPaintParts paintParts, Boolean computeContentBounds, Boolean computeErrorIconBounds, Boolean paint)
en System.Windows.Forms.DataGridViewRowHeaderCell.Paint(Graphics graphics, Rectangle clipBounds, Rectangle cellBounds, Int32 rowIndex, DataGridViewElementStates cellState, Object value, Object formattedValue, String errorText, DataGridViewCellStyle cellStyle, DataGridViewAdvancedBorderStyle advancedBorderStyle, DataGridViewPaintParts paintParts)
en System.Windows.Forms.DataGridViewCell.PaintWork(Graphics graphics, Rectangle clipBounds, Rectangle cellBounds, Int32 rowIndex, DataGridViewElementStates cellState, DataGridViewCellStyle cellStyle, DataGridViewAdvancedBorderStyle advancedBorderStyle, DataGridViewPaintParts paintParts)
en System.Windows.Forms.DataGridViewRow.PaintHeader(Graphics graphics, Rectangle clipBounds, Rectangle rowBounds, Int32 rowIndex, DataGridViewElementStates rowState, Boolean isFirstDisplayedRow, Boolean isLastVisibleRow, DataGridViewPaintParts paintParts)
en System.Windows.Forms.DataGridViewRow.Paint(Graphics graphics, Rectangle clipBounds, Rectangle rowBounds, Int32 rowIndex, DataGridViewElementStates rowState, Boolean isFirstDisplayedRow, Boolean isLastVisibleRow)
en System.Windows.Forms.DataGridView.PaintRows(Graphics g, Rectangle boundingRect, Rectangle clipRect, Boolean singleHorizontalBorderAdded)
en System.Windows.Forms.DataGridView.PaintGrid(Graphics g, Rectangle gridBounds, Rectangle clipRect, Boolean singleVerticalBorderAdded, Boolean singleHorizontalBorderAdded)
en System.Windows.Forms.DataGridView.OnPaint(PaintEventArgs e)
en System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer, Boolean disposeEventArgs)
en System.Windows.Forms.Control.WmPaint(Message& m)
en System.Windows.Forms.Control.WndProc(Message& m)
en System.Windows.Forms.DataGridView.WndProc(Message& m)
en System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
en System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
en System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
en System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
en System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods. IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
en System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
en System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
en System.Windows.Forms.Application.Run(Form mainForm)
en NetworkScanner.Program.Main() en C:\Project Sigma 6\New Power move\discover\Program.cs:línea 17
en System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
en System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
en Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
en System.Threading.ThreadHelper.ThreadStart_Context(Object state)
en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
en System.Threading.ThreadHelper.ThreadStart()

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com