所以我正在制作一个文件加密器,以便我可以加密我正在制作的 VB.NET 应用程序,这样人们就无法反编译它。我在 C# 中制作了这个并将其转移到 VB.NET,在 C# 中一切正常,但是一旦我在 VB.NET 中重新编写了代码,我在我的 RC4 加密方法中得到了这个错误:
'Arithmetic operation resulted in an overflow.'
错误发生在这里:
Dim t As Int64 = (s(i) + s(j)) Mod 256
这与上面 c# 中的代码相同:
int t = (s[i] + s[j]) % 256;
无论如何,是否有错误的计算?为什么它可以在 C# 中工作,但不能在 VB.NET 中工作?