今天看到烁空(SOCUT.COM)开发的数据库组件Socut.Data.dll这个数据库组件,就20K的东西买这么贵,感到很郁闷,一气之下把他破解出来,总共不到5分钟就搞定了,现在把代码贴出来,
namespace
System.Data

...
{
public static string DataLink;

public class scData : Page

...{
// Methods
static scData();
public scData();
public static DataSet DataSet(string sql, int startindex, int num, string dataname);
public static void ExecuteNonQuery(string sql);
public static object Executescalar(string SQL, int i);

// Fields
public static string DataLink;
}

public class scReader

...{
// Methods
public scReader(OleDbDataReader dr);
public scReader(SqlDataReader dr);
public scReader(string SQL);
public void Close();
public bool Read();

// Properties

public object this[string cs] ...{ get; }

// Fields
public CAcc myAcc;
public scData myData;
public CSql mySql;
private OleDbDataReader OleDR;
private SqlDataReader SqlDR;
}
public class scData : Page

...{
// Methods
static scData();
public scData();
public static DataSet DataSet(string sql, int startindex, int num, string dataname);
public static void ExecuteNonQuery(string sql);
public static object Executescalar(string SQL, int i);

// Fields
public static string DataLink;
}
public scData()

...{
}

public static DataSet DataSet(string sql, int startindex, int num, string dataname)

...{
if (scData.DataLink.ToUpper().IndexOf(";SERVER=") != -1)

...{
return CSql.ExecuteDataSet(sql, startindex, num, dataname);
}
return CAcc.ExecuteDataSet(sql, startindex, num, dataname);
}

public static void ExecuteNonQuery(string sql)

...{
if (scData.DataLink.ToUpper().IndexOf("SERVER") != -1)

...{
CSql.ExecuteNonQuery(sql);
}
else

...{
CAcc.ExecuteNonQuery(sql);
}
}

public static object Executescalar(string SQL, int i)

...{
if (scData.DataLink.ToUpper().IndexOf(";SERVER=") != -1)

...{
return CSql.ExecuteScalar(SQL, i);
}
return CAcc.ExecuteScalar(SQL, i);
}

public class scReader

...{
// Methods
public scReader(OleDbDataReader dr);
public scReader(SqlDataReader dr);
public scReader(string SQL);
public void Close();
public bool Read();

// Properties

public object this[string cs] ...{ get; }

// Fields
public CAcc myAcc;
public scData myData;
public CSql mySql;
private OleDbDataReader OleDR;
private SqlDataReader SqlDR;
}
public scReader(OleDbDataReader dr)

...{
this.myData = new scData();
this.myAcc = new CAcc();
this.mySql = new CSql();
if (scData.DataLink.ToUpper().IndexOf(";SERVER=") == -1)

...{
this.OleDR = dr;
}
}

public scReader(SqlDataReader dr)

...{
this.myData = new scData();
this.myAcc = new CAcc();
this.mySql = new CSql();
if (scData.DataLink.ToUpper().IndexOf(";SERVER=") != -1)

...{
this.SqlDR <-span>= dr;
}
}

public scReader(string SQL)

...{
public CAcc myAcc;
public scData myData;
public CSql mySql;
private OleDbDataReader OleDR;
private SqlDataReader SqlDR;

this.myData = new scData();
this.myAcc = new CAcc();
this.mySql = new CSql();
if (scData.DataLink.ToUpper().IndexOf(";SERVER=") != -1)

...{
CSql.Open();
this.SqlDR = new SqlCommand(SQL, CSql.ConnSql).ExecuteReader();
}
else

...{
CAcc.Open();
this.OleDR = new OleDbCommand(SQL, CAcc.ConnAcc).ExecuteReader();
}
}

public void Close()

...{
if (scData.DataLink.ToUpper().IndexOf(";SERVER=") != -1)

...{
this.SqlDR.Close();
CSql.Close();
}
else

...{
this.OleDR.Close();
CAcc.Close();
}
}

public bool Read()

...{
if (scData.DataLink.ToUpper().IndexOf(";SERVER=") != -1)

...{
return this.SqlDR.Read();
}
return this.OleDR.Read();
}

public object this[string cs]

...{
get

...{
if (scData.DataLink.ToUpper().IndexOf(";SERVER=") != -1)

...{
return this.SqlDR[cs];
}
return this.OleDR[cs];
}
}
}
代码有点乱,没来的及整理,过些天再写出来
public class CCheck : Page
{
// Methods
public CCheck();
public void GetCheck();
// Fields
public string DataCode;
public string DataLink;
}
这个里面的代码有想要的米我就行!有想使用的此组件的米我,帮你们免费算注册码哦!
源代码下载