Skip to content

Instantly share code, notes, and snippets.

Avatar

Cory Todd corytodd

View GitHub Profile
@corytodd
corytodd / fixed_minispy.inf
Created Nov 24, 2019
The latest Windows 10 build, 1903-1909, rejects the minifilter INI samples shown in the DDK Github. This modified version allows the driver to at least load and function. I don't know if it is 100% correct though.
View fixed_minispy.inf
;;;
;;; Minispy
;;;
;;;
;;; Copyright (c) 2001, Microsoft Corporation
;;;
[Version]
Signature = "$Windows NT$"
Class = "ActivityMonitor" ;This is determined by the work this filter driver does
@corytodd
corytodd / run_reconnection_test.cs
Created Aug 30, 2018
PTIRelianceLib Reconnection Test Loop
View run_reconnection_test.cs
// Call out from some place else...
private static void RunReconnectionTest()
{
while (true)
{
using (var printer = new ReliancePrinter())
{
var start = DateTime.Now;
@corytodd
corytodd / ptireliancelib_ping_status.cs
Last active Aug 30, 2018
Shows how to use a timer to await a print completion before checking status
View ptireliancelib_ping_status.cs
using PTIRelianceLib;
using System;
using System.Drawing;
using System.Drawing.Printing;
using System.Threading;
namespace RelianceCLI
{
internal class Program
{
@corytodd
corytodd / csharp_gdi_print.cs
Created Jun 13, 2018
GDI Printing Example for C#
View csharp_gdi_print.cs
#region Win32 GDI
private void btnTextDrawCenter_Click(object sender, RoutedEventArgs e)
{
var doc = new PrintDocument()
{
PrintController = new StandardPrintController(),
};
doc.OriginAtMargins = false;
doc.PrinterSettings.PrinterName = CurrentPrinter;
doc.PrintPage += (s, args) =>
@corytodd
corytodd / Thermal_Paper_Roll_Length_Calculator.ipynb
Created Jun 13, 2018
Thermal Paper Roll Length Calculator
View Thermal_Paper_Roll_Length_Calculator.ipynb
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@corytodd
corytodd / TwoSidedImagePane.Java
Created Jun 13, 2018
JavaFX two-sided image widget
View TwoSidedImagePane.Java
import javafx.animation.KeyFrame;
import javafx.animation.KeyValue;
import javafx.animation.Timeline;
import javafx.geometry.Point3D;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.StackPane;
import javafx.scene.transform.Rotate;
import javafx.util.Duration;
@corytodd
corytodd / sign_published.py
Last active Jun 13, 2018
ClickOnce SHA256 Signing outside of Visual Studio
View sign_published.py
from xml.dom import minidom
from subprocess import check_output
#Set this to the Visual Studio output directory, no trailing \
path = 'X:\absolute\path\tp\publish\directory'
#Typically found as MyApp.application in the publish directory
app = "MyApp"
#Path to Mage.exe. Notice the delimented \v
mage = '"C:\Program Files (x86)\Microsoft SDKs\Windows\\v7.0A\Bin\mage.exe"'
View makefile_space2tabs.sh
#!/bin/sh
# Makefile fixer
# Some old projects that have been touched by dumb text editors
# may have had their makefile tabs turned in spaces. For large
# projects, this is a pia to fix. Use this script in your project
# directory as a quick fix. +1 for the expand command.
set -e
old="$1"
View bit_manipulation.txt
http://stackoverflow.com/questions/9023129/algorithm-for-bit-expansion-duplication
We are isolating each nibble, then each bit per the expansion factor (3 in this case)
out = (in | in << 8) & 0x0F00F;
out = (out | out << 4) & 0x0C30C3;
out = (out | out << 2) & 0x249249;
out *= 7;
== 0000 0000 0000 0000 1101 0101 (in == 0xD5)
View bitbucket_team_repos.py
from rauth import OAuth1Service
import BaseHTTPServer
import threading,time
import webbrowser
import urlparse
class Config(object):
def __init__(self):
# Create a new consumer at https://bitbucket.org/account/user/{username}/api
self.consumer_key = <YOUR_KEY>