Hola Carlojas, no consigo los resultados esperados. He trabajado en el código y pude llegar a esto, pero sigue sin hacer lo mismo que en vb.NET
Código:
private string Encripta(string password)
{
string clave = "!"#$%&", pass2 = "", CAR, Codigo;
for (int i = 0; i < password.Length; i++)
{
CAR = password.Substring(i, 1);
Codigo = clave.Substring((i - 1) % clave.Length +1, 1);
string valor = ("0" + Hex(Codigo) + Asc(CAR).ToString());
pass2 = pass2 + (valor).Substring(valor.Length - 2, 2);
}
return pass2;
}
public string Hex(string asciiString)
{
string hex = "";
foreach (char c in asciiString)
{
int tmp = c;
hex += String.Format("{0:x2}", (uint)System.Convert.ToUInt32(tmp.ToString()));
}
return hex;
}
public static int Asc(string s)
{
return Encoding.ASCII.GetBytes(s)[0];
}
la parte que no puedo resolver es donde dice
"Hex(Codigo) + Asc(CAR)"
que debiera ser
Right("0" & Hex(Asc(Codigo) Xor Asc(CAR)), 2)
gracias, un saludo