Skip to content

Instantly share code, notes, and snippets.

View sayurin's full-sized avatar

Kurata Sayuri sayurin

  • Japan
  • 18:53 (UTC +09:00)
View GitHub Profile
module Sayuri.Drawing.Png
open FSharp.NativeInterop
open System
open System.Buffers
open System.Buffers.Binary
open System.Drawing
open System.Drawing.Imaging
open System.IO
open System.IO.Compression
open System.IO.Hashing
#include <cmath>
#include <thread>
#include <Windows.h>
#include <MMSystem.h>
#pragma comment(lib, "winmm")
struct MultiMediaTimer {
static const wchar_t* name;
static LARGE_INTEGER elapsed[10000];
static int idx;
#include <iostream>
#include <string_view>
#include <wrl/client.h>
#include <mfapi.h>
#include <mftransform.h>
#include <wincodec.h>
#pragma comment(lib, "mfplat.lib")
#pragma comment(lib, "mfuuid.lib")
#pragma comment(lib, "Windowscodecs.lib")
using namespace std::literals;
@sayurin
sayurin / Dockerfile
Created November 12, 2019 14:01
vsFTPd + OpenSSLの組み合わせ確認
ARG centos=latest
FROM centos:$centos
RUN yum install -x openssl -x openssl-libs -y gcc libcap-devel perl \
&& rm -rf /var/cache/yum/* \
&& useradd -m guest \
&& echo 'guest:guest' | chpasswd
WORKDIR /root/openssl
ARG openssl=https://www.openssl.org/source/old/1.0.2/openssl-1.0.2k.tar.gz
RUN curl $openssl | tar xfz - --strip=1 \
&& ./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl \
@sayurin
sayurin / hfs+.cpp
Last active September 21, 2022 07:57
HFS+に出現しない文字、出現する文字
#include <charconv>
#include <fstream>
#include <iostream>
#include <map>
#include <regex>
#include <set>
#include <string>
#include <string_view>
#include <cassert>
using namespace std::literals;
@sayurin
sayurin / isoimage.cs
Last active September 21, 2022 07:56
ISO image creator
using System;
using System.Runtime.InteropServices;
using IMAPI2FS; // COM reference: Microsoft IMAPI2 File System Image Creator
using IStream = System.Runtime.InteropServices.ComTypes.IStream;
class IsoImage {
[DllImport("shlwapi.dll", CharSet = CharSet.Unicode, PreserveSig = true)]
static extern void SHCreateStreamOnFile(string pszFile, uint grfMode, out IStream ppstm);
static void Main(string[] args) {
#define SECURITY_WIN32
#include <iostream>
#include <tuple>
#include <Windows.h>
#include <security.h>
#include <schannel.h>
#pragma comment(lib, "Secur32.lib")
static std::tuple<int, const char*> protocols[] = {
{ SP_PROT_PCT1_CLIENT, "PCT 1.0" },
@sayurin
sayurin / twitterclient.cpp
Created May 23, 2019 21:45
Sample Twitter client using C++ REST SDK.
#include <locale>
#include <cpprest/http_client.h>
#include <cpprest/oauth1.h>
static constexpr auto
apikey = U(""),
apisecretkey = U(""),
accesstoken = U(""),
accesstokensecret = U("");
using System;
static void Test(string columnName) => Console.WriteLine("{0,-3} => {1,4} => {2,-3}", columnName, columnName.ToColumnNumber(), columnName.ToColumnNumber().ToColumnName());
Test("A");
Test("Z");
Test("AA");
Test("ZZ");
Test("AAA");
Test("BBB");
namespace Sayuri.IO.Compression
open System.IO
open System.IO.Compression
module ZLib =
[<Literal>]
let private ModuloAdler = 65521u
let private adler32 (buffer : byte[]) =
let mutable a = 1u
let mutable b = 0u