VPL.cs

(开头部分) 3KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Runtime.InteropServices;

namespace RA2VXLEncryption
{
    // 参考资料:
    // [1] https://www.cnblogs.com/cmtspace/p/14356272.html

    public class VPL
    {
        static VPL()
        {
            string dllFile = Environment.Is64BitProcess ?
                "./DLL/x64/vpl.dll" :
                "./DLL/x86/vpl.dll";
            LoadLibraryA(dllFile);
        }

        [DllImport("kernel32")]
        private static extern IntPtr LoadLibraryA([MarshalAs(UnmanagedType.LPStr)] string fileName);

        /// <summary>
        /// 加密指定的VPL文件并生成对应的密钥
        /// </summary>
        /// <param name="vplSource">未加密的VPL路径</param>
        /// <param name="vplDest">生成加密后的VPL路径</param>
        /// <param name="keyBuffer">密钥</param>
        /// <param name="encryptScriptPath">生成的对应cscheme加密脚本[可NULL]</param>
        /// <returns>操作是否成功</returns>
        [DllImport("vpl.dll", EntryPoint = "Encrypt_VPL_File")]
        public static extern bool EncryptVPL(
            IntPtr vplSource,
            IntPtr vplDest,
            IntPtr keyBuffer,
            IntPtr encryptScriptPath);

        /// <summary>
        /// 根据指定的密钥还原VPL文件
        /// </summary>
        /// <param name="vplSource">加密过的VPL文件路径</param>
        /// <param name="vplDest">还原的VPL文件路径</param>
        /// <param name="keyBuffer">密钥</param>
        /// <returns>操作是否成功</returns>
        [DllImport("vpl.dll", EntryPoint = "Decrypt_VPL_File")]
        public static extern bool DecryptVPL(
            IntPtr vplSource,
            IntPtr vplDest,
            IntPtr keyBuffer);

        /// <summary>
        /// 将密钥逆向或导出对应的cscheme解密脚本
        /// </summary>
        /// <param name="keyBuffer">密钥</param>
        /// <param name="decryptScriptPath">生成的对应cscheme解密脚本[可NULL]</param>
        /// <param name="keyDest">逆向的密钥[可NULL]</param>
        /// <returns>操作是否成功</returns>
        [Obsolete]
        [DllImport("vpl.dll", EntryPoint = "Decrypt_Key")]
        public static extern bool DecryptKey(
            IntPtr keyBuffer,
后面还有 30 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。