kbys.c

来自「KByS是一个PE文件压缩壳,在这里你可以学到壳是怎么制作的」· C语言 代码 · 共 76 行

C
76
字号
#include "KByS.h"

int CALLBACK DlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
	switch (uMsg)
	{
	case WM_CLOSE:
		PostQuitMessage(0);
		break ;

	case WM_INITDIALOG:
		hWnd = hDlg;
		hIcon = LoadIcon(hInst, MAKEINTRESOURCE(102));
		SendMessage(hWnd, WM_SETICON, (WPARAM)TRUE, (LPARAM)hIcon);
		SendMessage(hWnd, WM_SETTEXT, (WPARAM)0, (LPARAM)"堀北压缩 0.28 beta");
		SendMessage(GetDlgItem(hWnd, IDC_CHINESE), BM_SETCHECK, BST_CHECKED, 0);
		SetDlgItemText(hWnd, IDC_INFO, "           堀北压缩\r\n\r\n1. 压缩资源\r\n2. 清除重定位表\r\n3. 保留附加数据\r\n4. 支持壳上壳\r\n5. 将文件拽进来即可");
		bChinese = TRUE;
		break ;

	case WM_DROPFILES:
		if (DragQueryFile((HDROP)wParam, 0, szFileName, MAX_PATH))
		{
			KByS();
			SetDlgItemText(hWnd, IDC_KBYS, szMessage);
		}
		break;
		/*
	case WM_LBUTTONDOWN:
		if (bChinese)
		{
			SetDlgItemText(hWnd, IDC_INFO, "           堀北压缩\r\n\r\n1. 压缩资源\r\n2. 清除重定位表\r\n3. 保留附加数据\r\n4. 支持壳上壳\r\n5. 将文件拽进来即可");
			bChinese = FALSE;
		}
		else
		{
			SetDlgItemText(hWnd, IDC_INFO, "        KByS Packer\r\n\r\n1. compress RSRC\r\n2. clear relocations\r\n3. reserve extra data\r\n4. support pack repeat\r\n5. drag file here");
			bChinese = TRUE;
		}
		break ;
		*/
	case WM_COMMAND:
		switch (wParam)
		{
		case IDC_CHINESE:
			SetDlgItemText(hWnd, IDC_INFO, "           堀北压缩\r\n\r\n1. 压缩资源\r\n2. 清除重定位表\r\n3. 保留附加数据\r\n4. 支持壳上壳\r\n5. 将文件拽进来即可");
			SendMessage(hWnd, WM_SETTEXT, (WPARAM)0, (LPARAM)"堀北压缩 0.28 beta");
			bChinese = TRUE;
			break ;
		case IDC_ENGLISH:
			SetDlgItemText(hWnd, IDC_INFO, "        KByS Packer\r\n\r\n1. compress RSRC\r\n2. clear relocations\r\n3. reserve extra data\r\n4. support pack repeat\r\n5. drag file here");
			SendMessage(hWnd, WM_SETTEXT, (WPARAM)0, (LPARAM)"KByS Packer 0.28 beta");
			bChinese = FALSE;
			break ;
		default:
			break ;
		}


	default:
		break;
	}

	return 0;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
	InitCommonControls();
	hInst = hInstance;
	DialogBox(hInst, MAKEINTRESOURCE(IDD_KBYS), NULL, (DLGPROC)DlgProc);

	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?