Skip to content

Instantly share code, notes, and snippets.

@lxfly2000
lxfly2000 / FindLoop.cpp
Created April 27, 2017 04:23
Find loop points in a wave file.
#include<iostream>
#include<fstream>
#include<string>
struct DataStructure_16BitStereo
{
short var_left, var_right;
};
struct WaveStructure
{
char strRIFF[4];
@lxfly2000
lxfly2000 / mml2ff.cpp
Last active June 2, 2017 03:26
Convert FM voices defined in MML file to FF format. (FM voices definition file: https://pan.baidu.com/s/1mh6gGre )
#include<iostream>
#include<sstream>
#include<fstream>
int main()
{
std::fstream f("voice.ff",std::ios::out|std::ios::binary);
std::stringstream ss;
std::string s;
int ar[4],dr[4],sr[4],rr[4],sl[4],
tl[4],ks[4],ml[4],dt1[4],dt2[4],
@lxfly2000
lxfly2000 / httpdl.cpp
Created April 27, 2017 05:28
HTTP/HTTPS download demo using WinINet
//WinINet HTTP Get
//http://blog.csdn.net/wzx19840423/article/details/6536342
//HTTPS: https://support.microsoft.com/zh-cn/kb/168151
#include<iostream>
#include<Windows.h>
#include<WinInet.h>
#pragma comment(lib,"WinInet.lib")
int main()
{
HINTERNET hOpen = InternetOpen(TEXT("KaikiUpdate"), INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);//打开连接,获得Internet句柄
@lxfly2000
lxfly2000 / xmlrw.cpp
Last active August 3, 2019 05:21
XML read/write using XMLLite.
#include<iostream>
#include<string>
#include<xmllite.h>
#include<atlmem.h>
#include<Shlwapi.h>
#pragma comment(lib,"xmllite.lib")
#pragma comment(lib,"shlwapi.lib")
struct HResultBase
{
HResultBase() :result(S_OK) {}
@lxfly2000
lxfly2000 / multithread.cpp
Created June 1, 2017 12:56
A Multi-Thread example using C++ 11 thread which meets such case as bgm playing.
#include<iostream>
#include<string>
#include<thread>
int timer = 0;
bool timing = false;
std::thread gsub;
void SubTimer()
{
@lxfly2000
lxfly2000 / HookSrc.cpp
Created July 12, 2017 13:08
替换函数地址实现Hook。
//参考:http://blog.csdn.net/friendan/article/details/12222651
//目前只能对自身进程Hook。
#ifndef WIN32
#error 该程序目前只能在 x86 平台中使用。
#endif
#include<Windows.h>
using FUNCTYPE = decltype(MessageBox);
FUNCTYPE *funcOriginal = nullptr;
DWORD protectOriginal;
bool hookOn = false;
@lxfly2000
lxfly2000 / luainter.c
Last active September 10, 2017 03:05
Lua与C语言函数相互调用示例。
//Lua与C交互示例,参考:http://blog.csdn.net/shun_fzll/article/details/39120965
#include<stdio.h>
#include<string.h>
#include"lua.h"
#include"lualib.h"
#include"lauxlib.h"
#pragma comment(lib,"lua53.lib")
#define C(action,r) if(r=action)return r
#define LVAR_NAME "luanum"
const char luasource[] =
@lxfly2000
lxfly2000 / wavsplit.cpp
Last active September 6, 2017 09:47
音频分隔
#include<iostream>
#include<fstream>
#include<string>
#define max(a,b) ((a)>(b)?(a):(b))
#define min(a,b) ((a)<(b)?(a):(b))
#define abs(x) ((x)>0?(x):-(x))
typedef short DataStructure_16BitMono;
struct WaveStructure
{
char strRIFF[4];
@lxfly2000
lxfly2000 / rmitomid.c
Last active September 8, 2017 14:21
RMI与MIDI文件相互转换程序。
//参考:http://www.yueshou.net/jiao/shuma/yingjian/200608/14735.html
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define stricmp _stricmp
struct RMIDHeader
{
char strRIFF[4];
int chunkSize;
char strFormat[4];
@lxfly2000
lxfly2000 / pixiv-hosts.txt
Created September 19, 2017 11:55
Hosts for pixiv and its services.
#Pixiv Start
210.129.120.44 pixiv.net
210.129.120.43 pixiv.net
210.129.120.41 pixiv.net
210.129.120.44 www.pixiv.net
210.129.120.43 www.pixiv.net
210.129.120.41 www.pixiv.net
210.140.131.144 source.pixiv.net
210.140.131.147 source.pixiv.net
210.140.131.145 source.pixiv.net