解决方案 »
- C#如何制作QQ申请器!
- 如何实现图像旋转
- 如何回到文件头再重新读?
- 怎样把数据集DataTable复制到SQL表中...急呀...
- 怎么向Array对象中添加内容?
- DLL 调用
- 问一下:如何把一个彩色图像画成一个灰色的图像,用于按钮的disable显示,顶着有分,帮帮在下则个
- Combox对SQL中的两个字段进行多级查询应该怎么办啊?
- winform中使用DataGrid读出数据库中记录后,如何保存?
- [请教]关于第三方控件集ComponentsOne中Windows控件FlexGrid的问题
- 求助:水晶报表如何实现两个报表的功能
- 谁知道如何将excel第一行的列名导入的sql server数据库的表中啊?
using System;public object MYDecode(object Pass)
{
object[] code = new object[8];
object tlo = null;
code[2]= 0XFC;
code[4]= 0XF0;
code[6]= 0XC0;
Source_Len = Microsoft.VisualBasic.Strings.Len(Pass);
Count = 0;
ln = 0;
a1 = 0;
a2 = 0;
c1 = 2;
c2 = 0;
ind = 0;
tlo = 0;
while (Count < Source_Len)
{
mp = Pass.ToString().Substring(Count, 1);
ac = Convert.ToInt32(mp[0]);
if (ac - 0X3E < 0)
{
De_Str = De_Str + mp;
ln = ln + 1;
count = count + 1;
ln = 0;
a1 = 0;
a2 = 0;
c1 = 2;
c2 = 0;
ind = 0;
}
else
{
a1 = ac - 0X3E;
if (ln >= Source_Len)
{
break;
}
if (c2 + 6 < 8)
{
a2 = fix(a1 * ((Math.Pow(2, c1))));
a2 = fix(a2 & @int(code[c1]));
c2 = c2 + (8 - c1);
count = count + 1;
}
else
{
ind = fix(a1 & 0X3F);
ind = fix(ind / ((Math.Pow(2, (6-c1)))));
lo = ind | a2;
if (lo > 128 && tlo == 0)
{
tlo = lo * 256;
}
else
{
De_Str = De_Str + ((char)(tlo + lo)).ToString();
tlo = 0;
}
ln = ln + 1;
c2 = 0;
if (c1 >= 6)
{
c1 = 2;
count = count + 1;
}
else
{
c1 = c1 + 2;
a2 = fix(a1 * ((Math.Pow(2, c1))));
a2 = fix(a2 & @int(code[c1]));
c2 = c2 + (8 - c1);
count = count + 1;
}
}
}
}
BymDecode = De_Str;
return null;
}
{
[] code = new[];
dynamic tlo = null;
code(2) = 0xfc;
code(4) = 0xf0;
code(6) = 0xc0;
Source_Len = Strings.Len(Pass);
Count = 0;
ln = 0;
a1 = 0;
a2 = 0;
c1 = 2;
c2 = 0;
ind = 0;
tlo = 0;
while (Count < Source_Len) {
mp = Strings.Mid(Pass, Count + 1, 1);
ac = Strings.Asc(mp);
if (ac - 0x3e < 0) {
De_Str = De_Str + mp;
ln = ln + 1;
count = count + 1;
ln = 0;
a1 = 0;
a2 = 0;
c1 = 2;
c2 = 0;
ind = 0;
} else {
a1 = ac - 0x3e;
if (ln >= Source_Len) {
break; // TODO: might not be correct. Was : Exit Do
}
if (c2 + 6 < 8) {
a2 = Conversion.Fix(a1 * (Math.Pow(2, c1)));
a2 = Conversion.Fix(a2 & Conversion.Int(code(c1)));
c2 = c2 + (8 - c1);
count = count + 1;
} else {
ind = Conversion.Fix(a1 & 0x3f);
ind = Conversion.Fix(ind / (Math.Pow(2, (6 - c1))));
lo = ind | a2;
if (lo > 128 & tlo == 0) {
tlo = lo * 256;
} else {
De_Str = De_Str + Strings.Chr(tlo + lo);
tlo = 0;
}
ln = ln + 1;
c2 = 0;
if (c1 >= 6) {
c1 = 2;
count = count + 1;
} else {
c1 = c1 + 2;
a2 = Conversion.Fix(a1 * (Math.Pow(2, c1)));
a2 = Conversion.Fix(a2 & Conversion.Int(code(c1)));
c2 = c2 + (8 - c1);
count = count + 1;
}
}
}
}
BymDecode = De_Str;
}
那是vb.net-> C#
public object MYDecode(Pass)
{
[] code = new[];
dynamic tlo = null;
code(2) = 0xfc;
code(4) = 0xf0;
code(6) = 0xc0;
Source_Len = Strings.Len(Pass);
Count = 0;
ln = 0;
a1 = 0;
a2 = 0;
c1 = 2;
c2 = 0;
ind = 0;
tlo = 0;
while (Count < Source_Len) {
mp = Strings.Mid(Pass, Count + 1, 1);
ac = Strings.Asc(mp);
if (ac - 0x3e < 0) {
De_Str = De_Str + mp;
ln = ln + 1;
count = count + 1;
ln = 0;
a1 = 0;
a2 = 0;
c1 = 2;
c2 = 0;
ind = 0;
} else {
a1 = ac - 0x3e;
if (ln >= Source_Len) {
break; // TODO: might not be correct. Was : Exit Do
}
if (c2 + 6 < 8) {
a2 = Conversion.Fix(a1 * (Math.Pow(2, c1)));
a2 = Conversion.Fix(a2 & Conversion.Int(code(c1)));
c2 = c2 + (8 - c1);
count = count + 1;
} else {
ind = Conversion.Fix(a1 & 0x3f);
ind = Conversion.Fix(ind / (Math.Pow(2, (6 - c1))));
lo = ind | a2;
if (lo > 128 & tlo == 0) {
tlo = lo * 256;
} else {
De_Str = De_Str + Strings.Chr(tlo + lo);
tlo = 0;
}
ln = ln + 1;
c2 = 0;
if (c1 >= 6) {
c1 = 2;
count = count + 1;
} else {
c1 = c1 + 2;
a2 = Conversion.Fix(a1 * (Math.Pow(2, c1)));
a2 = Conversion.Fix(a2 & Conversion.Int(code(c1)));
c2 = c2 + (8 - c1);
count = count + 1;
}
}
}
}
BymDecode = De_Str;
}