Patcher for Safe Exam Browser
Find a file
2024-10-16 21:19:33 +02:00
SEBPatcher.Client Integrate SafeExamBrowser.Client 2024-10-16 21:19:33 +02:00
SEBPatcher.Configuration Integrate SafeExamBrowser.Client 2024-10-16 21:19:33 +02:00
SEBPatcher.Monitoring Integrate SafeExamBrowser.Client 2024-10-16 21:19:33 +02:00
SEBPatcherUtils Integrated logging 2024-10-16 08:11:06 +02:00
.gitignore Initial commit 2024-10-14 21:35:33 +02:00
Directory.Build.props Add missing build props 2024-10-15 09:32:37 +02:00
README.md Integrate SafeExamBrowser.Client 2024-10-16 21:19:33 +02:00
SEBPatcher.sln Integrate SafeExamBrowser.Client 2024-10-16 21:19:33 +02:00

SEB-Patcher

A patcher for Safe Exam Browser built on MonoMod / Mono.Cecil

This repository is a .NET solution with libraries used to patch prebuilt SEB DLLs.

Patching

In order to use the patches, do the following:

  1. Get the patch DLLs: build them or get them from releases.

  2. Put patch DLLs into SafeExamBrowser\Application.

  3. Get MonoMod and put all its files into SafeExamBrowser\Application.

  4. Run MonoMod on all relevant DLLs, eg. .\MonoMod.exe SafeExamBrowser.Monitoring.dll

Development

This project was created in MonoDevelop, but should be compatible with Visual Studio.

All you have to do is clone this repository, change the ReferenceBasePaths in the projects, and open it in your IDE.

Set ReferenceBasePath to your SEB installation (SafeExamBrowser\Application). You also need to copy the MonoMod files into your SEB installation.

If you want to separate your development/testing files from your actual SEB installation, I recommend copying the files in SafeExamBrowser\Application and the MonoMod files to their own directory.

Resources

This depends on MonoMod and SafeExamBrowser.

Download Resources

SafeExamBrowser: https://safeexambrowser.org/download_en.html

MonoMod: https://github.com/MonoMod/MonoMod

stripping/publicizing for development: https://github.com/bbepis/NStrip

Learning Resources

SafeExamBrowser sourcecode: https://github.com/SafeExamBrowser/seb-win-refactoring

MonoMod API documentation: https://monomod.github.io/api/index.html

MonoMod step-by-step example implementation: https://github.com/TROYTRON/ti-mods/blob/main/tutorials/MonoMod%20Guide.md

Example patch by MonoMod: https://monomod.dev/docs/README.Patcher.html

dnSpy decomp/analysis tool: https://github.com/dnSpyEx/dnSpy

sandbox for testing modifications (if you cant host a seb server): https://sandbox.moodledemo.net