Skip to content

Instantly share code, notes, and snippets.

@CaptainJH
CaptainJH / mutex_condition.cpp
Last active August 29, 2015 14:01
C++ Multithreading
#include <thread>
#include <mutex>
#include <condition_variable>
std::mutex g_mut;
std::condition_variable g_newMsgCondition;
void AddNewDlgMessage(const std::wstring& t)
{
@CaptainJH
CaptainJH / SendMail.py
Last active November 10, 2015 07:46
Send Mail by Python
print("Begin SendMail")
# Import smtplib for the actual sending function
import smtplib
# Import the email modules we'll need
from email.mime.text import MIMEText
textfile = "/Users/JHQ/Desktop/msg.txt"
# Open a plain text file for reading. For this example, assume that
@CaptainJH
CaptainJH / FFMpeg_player.cpp
Created June 15, 2014 11:35
a basic FFmpeg player based on SFML
//
// a basic FFMpeg video player
// FFMpeg 2.2.2
// SFML 2.1
// XCode 5.1.1
#include <SFML/Audio.hpp>
#include <SFML/Graphics.hpp>
@CaptainJH
CaptainJH / NamedPipe.cpp
Created August 20, 2014 07:13
How to use windows named pipe
#include <Windows.h>
#include <tlhelp32.h>
#include <psapi.h>
#include <iostream>
#include <utility>
#include <string>
#include <array>
#include <vector>
#include <random>
@CaptainJH
CaptainJH / bringToFront.cpp
Created August 26, 2014 06:25
Bring window to the top front accepting user input by code
void SetForegroundWindowInternal(HWND hWnd)
{
if (!::IsWindow(hWnd)) return;
BYTE keyState[256] = { 0 };
//to unlock SetForegroundWindow we need to imitate Alt pressing
if (::GetKeyboardState((LPBYTE)&keyState))
{
if (!(keyState[VK_MENU] & 0x80))
{
@CaptainJH
CaptainJH / pyTest.py
Last active April 14, 2018 05:20
PyQT5 fonts and HWND sample
import sys
import ctypes
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QFontDatabase, QFont, QFontMetrics, QImage, QPainter, QPen
from PyQt5.QtCore import Qt, QRectF
if __name__ == '__main__':
app = QApplication(sys.argv)
@CaptainJH
CaptainJH / multiwindow_SDL_sokol.cpp
Created June 8, 2024 01:54
Create multiple window with SDL2 and sokol
#define SOKOL_IMPL
#define SOKOL_GLCORE
#include <SDL.h>
#include <sokol_gfx.h>
#include <sokol_log.h>
#include <iostream>