出现尝试读取或写入受保护的内存的错误,是什么原因? 我的程序是winform+Webservice结构的程序,不知道什么原因会出现【尝试读取或写入受保护的内存。这通常指示其他内存已损坏】的错误 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 空洞的说法。这是不安全代码造成的,你用了它,使用时间越长,bug爆发的机会越大。 string PPSQL = ""; if (this.radioGroup1.SelectedIndex >= 0) if (this.radioGroup1.Properties.Items[this.radioGroup1.SelectedIndex].Description != "全部品牌") { PPSQL = "stk_pp = '" + this.radioGroup1.Properties.Items[this.radioGroup1.SelectedIndex].Description + "'"; } if (textBox1.Text.Trim() == "") SearchSQL = ""; else SearchSQL = "Stk_Name like '%" + textBox1.Text.Trim() + "%' OR Stk_NoEx like '%" + textBox1.Text.Trim() + "%' OR stk_pp like '%" + textBox1.Text.Trim() + "%' OR stk_group like '%" + textBox1.Text.Trim() + "%' OR stk_Car like '%" + textBox1.Text.Trim() + "%' OR stk_BarCode like '%" + textBox1.Text.Trim() + "%'"; if (PPSQL.Trim() != "") { if (SearchSQL.Trim() == "") SearchSQL = PPSQL; else SearchSQL = "(" + SearchSQL + ") and " + PPSQL; } CurPage = 1; LoadProdPJ();private void LoadProdPJ() { try { this.Cursor = Cursors.WaitCursor; try { W4SWebRef.JXC4SWeb.JXCDataBase.dm_prod_pjDataTable tb = WS.dm_prod_pjList(UserNo, UserPwd, MyDes.EnStr(SearchSQL), CurPage, ref TotalPage, ref sErr); if (sErr != "1") { MessageBox.Show("发生错误!原因:" + sErr, "提示"); return; } this.dmprodpjBindingSource.DataSource = tb; toolStripTextBox1.Text = Convert.ToString(CurPage); toolStripLabel2.Text = "页/共" + Convert.ToString(TotalPage) + "页,每页50行"; if (tb != null) tb.Dispose(); } catch { MessageBox.Show("错误!", "操作提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } finally { this.Cursor = Cursors.Default; } }请问这代码算不安全代码吗?就是这些代码在某些电脑上有时会出现【尝试读取或写入受保护的内存。这通常指示其他内存已损坏】的错误 貌似这句:W4SWebRef.JXC4SWeb.JXCDataBase.dm_prod_pjDataTable tb = WS.dm_prod_pjList(UserNo, UserPwd, MyDes.EnStr(SearchSQL), CurPage, ref TotalPage, ref sErr); 貌似是数据类型出错 好比c++里的long c#要写成Int32一样 LZ仔细检查下 关于XML的Save方法的一个小小的问题? 新手求教:如何实现模拟点击网页上的按钮 C#编写的dll怎么对外屏蔽一些类呢? 模板列radiobutton 默认选中 问题 手上有C#和C的书各一本,先学哪个好? 传入一个sql语句,返回第一行第一列,怎样效率最高? 用户校验时,如没有该用户,则SqlDataReader中是什么值? 判断输入的数的问题 switch语法问题请教! C#中读取Base64的问题???各位大侠帮忙!!! WPF鼠标放上去效果 如何用Timer,控制時間
空洞的说法。这是不安全代码造成的,你用了它,使用时间越长,bug爆发的机会越大。
if (this.radioGroup1.SelectedIndex >= 0)
if (this.radioGroup1.Properties.Items[this.radioGroup1.SelectedIndex].Description != "全部品牌")
{
PPSQL = "stk_pp = '" + this.radioGroup1.Properties.Items[this.radioGroup1.SelectedIndex].Description + "'";
}
if (textBox1.Text.Trim() == "")
SearchSQL = "";
else
SearchSQL = "Stk_Name like '%" + textBox1.Text.Trim() + "%' OR Stk_NoEx like '%" + textBox1.Text.Trim() + "%' OR stk_pp like '%" + textBox1.Text.Trim() + "%' OR stk_group like '%" + textBox1.Text.Trim() + "%' OR stk_Car like '%" + textBox1.Text.Trim() + "%' OR stk_BarCode like '%" + textBox1.Text.Trim() + "%'";
if (PPSQL.Trim() != "")
{
if (SearchSQL.Trim() == "")
SearchSQL = PPSQL;
else
SearchSQL = "(" + SearchSQL + ") and " + PPSQL;
}
CurPage = 1;
LoadProdPJ();private void LoadProdPJ()
{
try
{
this.Cursor = Cursors.WaitCursor;
try
{
W4SWebRef.JXC4SWeb.JXCDataBase.dm_prod_pjDataTable tb = WS.dm_prod_pjList(UserNo, UserPwd, MyDes.EnStr(SearchSQL), CurPage, ref TotalPage, ref sErr);
if (sErr != "1")
{
MessageBox.Show("发生错误!原因:" + sErr, "提示");
return;
}
this.dmprodpjBindingSource.DataSource = tb;
toolStripTextBox1.Text = Convert.ToString(CurPage);
toolStripLabel2.Text = "页/共" + Convert.ToString(TotalPage) + "页,每页50行";
if (tb != null)
tb.Dispose();
}
catch
{
MessageBox.Show("错误!", "操作提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
}
finally
{
this.Cursor = Cursors.Default;
}
}请问这代码算不安全代码吗?就是这些代码在某些电脑上有时会出现【尝试读取或写入受保护的内存。这通常指示其他内存已损坏】的错误
W4SWebRef.JXC4SWeb.JXCDataBase.dm_prod_pjDataTable tb = WS.dm_prod_pjList(UserNo, UserPwd, MyDes.EnStr(SearchSQL), CurPage, ref TotalPage, ref sErr);