网站菜单
日记 - DCMS CHECKIN
* 日记 | AB510Q | DCMS CHECKIN
Avatar 作者: AB510Q ( 2026/02/14 23:29)
阅读量: 14
// Copyright 2026 ZiyangBai All Rights Reserved
#define _CRT_SECURE_NO_WARNINGS
#include <windows.h>
#include <winhttp.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#pragma comment(lib, "winhttp.lib")
#define HOST L"dcms.netlib.re"
#define LOGIN_PATH L"/api.php?action=login"
#define CHECKIN_PATH L"/user/daily_checkin.php"
#define USERNAME ""
#define PASSWORD ""
char response[200000];
char token[2048];
wchar_t wbuffer[200000];
void PrintUTF8(const char* utf8)
{
int len = MultiByteToWideChar(CP_UTF8, 0, utf8, -1, NULL, 0);
MultiByteToWideChar(CP_UTF8, 0, utf8, -1, wbuffer, len);
wprintf(L"%ls
", wbuffer);
}
void ReadResponse(HINTERNET hRequest) {
DWORD dwSize = 0;
DWORD dwDownloaded = 0;
char buffer[8192];
response[0] = 0;
do {
if (!WinHttpQueryDataAvailable(hRequest, &dwSize))
break;
if (dwSize == 0)
break;
if (!WinHttpReadData(hRequest, buffer, min(dwSize, sizeof(buffer) - 1), &dwDownloaded))
break;
buffer[dwDownloaded] = 0;
strcat(response, buffer);
} while (dwSize > 0);
}
int ExtractToken() {
char* start = strstr(response, ""token":"");
if (!start) return 0;
start += 9;
char* end = strchr(start, '"');
if (!end) return 0;
strncpy(token, start, end - start);
token[end - start] = 0;
return 1;
}
void ShowResult()
{
if (strstr(response, "已签到") || strstr(response, "今天已经"))
{
printf("
Already!
");
return;
}
if (strstr(response, "签到成功") || strstr(response, "获得"))
{
printf("
OK!Checkin!
");
return;
}
if (strstr(response, "Login"))
{
printf("
Bad!
");
return;
}
printf("
Q!
");
PrintUTF8(response);
}
int main() {
SetConsoleOutputCP(CP_UTF8);
printf("Starting Checkin
");
HINTERNET hSession = WinHttpOpen(
L"Kodak/1.0",
WINHTTP_ACCESS_TYPE_DEFAULT_PROXY,
WINHTTP_NO_PROXY_NAME,
WINHTTP_NO_PROXY_BYPASS,
0
);
if (!hSession) {
printf("WinHttpOpen failed
");
return 1;
}
HINTERNET hConnect = WinHttpConnect(
hSession,
HOST,
INTERNET_DEFAULT_HTTPS_PORT,
0
);
if (!hConnect) {
printf("Connect failed
");
return 1;
}
HINTERNET hLogin = WinHttpOpenRequest(
hConnect,
L"POST",
LOGIN_PATH,
NULL,
WINHTTP_NO_REFERER,
WINHTTP_DEFAULT_ACCEPT_TYPES,
WINHTTP_FLAG_SECURE
);
DWORD flags =
SECURITY_FLAG_IGNORE_UNKNOWN_CA |
SECURITY_FLAG_IGNORE_CERT_DATE_INVALID |
SECURITY_FLAG_IGNORE_CERT_CN_INVALID |
SECURITY_FLAG_IGNORE_CERT_WRONG_USAGE;
WinHttpSetOption(hLogin, WINHTTP_OPTION_SECURITY_FLAGS, &flags, sizeof(flags));
1 2 >
« 上一页 (第26页 共5667页) 下一页 »
* (0) *
评论: (3)
* 日记 | AB510Q | DCMS CHECKIN
官方QQ群-310379632
© DCMS-Social