首页
社区
课程
招聘
[旧帖] [求助]这款开源软件的安装包验证问题(附源码) 0.00雪花
发表于: 2016-3-2 10:48 3199

[旧帖] [求助]这款开源软件的安装包验证问题(附源码) 0.00雪花

2016-3-2 10:48
3199
我把安装包的中文文件导入进去,提示安装包有错误。
后来试了一下,修改一个字符也提示安装包错误。
可以肯定安装包应该有自效验。
因为这个软件是开源的。所以下载了安装包的源代码
通过代码确定是CRC32校验。
看了半天用OD修改了安装包的几个跳转,还是不行。水平实在有限。
关键代码:
        if (bMakePackage)
        {
                /* Create self-extracting package */

                MakeSelfExtractingPackage (NULL, SetupFilesDir);
        }
        else
        {
                SetInstallationPath (NULL);

                if (!bUninstall)
                {
                        if (IsSelfExtractingPackage())
                        {
                                if (!VerifyPackageIntegrity())  // VerifyPackageIntegrity就应该是CRC32校验的函数
                                {
                                        // Package corrupted
                                        exit (1);
                                }
                                bDevm = FALSE;
                        }
                        else if (!bDevm)
                        {
                                MessageBox (NULL, "Error: This installer file does not contain any compressed files.\n\nTo create a self-extracting installation package (with embedded compressed files), run:\n\"TrueCrypt Setup.exe\" /p", "TrueCrypt", MB_ICONERROR | MB_SETFOREGROUND | MB_TOPMOST);
                                exit (1);
                        }

                        if (bChangeMode)
                        {
                                /* TrueCrypt is already installed on this system and we were launched from the Program Files folder */

                                char *tmpStr[] = {0, "SELECT_AN_ACTION", "REPAIR_REINSTALL", "UNINSTALL", "EXIT", 0};

                                // Ask the user to select either Repair or Unistallation
                                switch (AskMultiChoice ((void **) tmpStr, FALSE))
                                {
                                case 1:
                                        bRepairMode = TRUE;
                                        break;
                                case 2:
                                        bUninstall = TRUE;
                                        break;
                                default:
                                        exit (1);
                                }
                        }
                }

                // System Restore
                SystemRestoreDll = LoadLibrary ("srclient.dll");

                if (!bUninstall)
                {
                        /* Create the main dialog for install */

                        DialogBoxParamW (hInstance, MAKEINTRESOURCEW (IDD_INSTL_DLG), NULL, (DLGPROC) MainDialogProc,
                                (LPARAM)lpszCommandLine);
                }
                else
                {
                        /* Create the main dialog for uninstall  */

                        DialogBoxW (hInstance, MAKEINTRESOURCEW (IDD_UNINSTALL), NULL, (DLGPROC) UninstallDlgProc);

                        if (UninstallBatch[0])
                        {
                                STARTUPINFO si;
                                PROCESS_INFORMATION pi;

                                ZeroMemory (&si, sizeof (si));
                                si.cb = sizeof (si);
                                si.dwFlags = STARTF_USESHOWWINDOW;
                                si.wShowWindow = SW_HIDE;

                                if (!CreateProcess (UninstallBatch, NULL, NULL, NULL, FALSE, IDLE_PRIORITY_CLASS, NULL, NULL, &si, &pi))
                                        DeleteFile (UninstallBatch);
        else
                                {
                                        CloseHandle (pi.hProcess);
                                        CloseHandle (pi.hThread);
                                }
                        }
                }
        }

        return 0;
}
求大神分析一下,怎样用OD去掉校验。

安装包的源代码为setup.zip。
剩下的是安装包程序

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 450
活跃值: (129)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
有大神下载了。
2016-3-2 20:12
0
游客
登录 | 注册 方可回帖
返回
//