Repository files navigation

CoreHook.Host

LicenseReleases

A library for hosting .NET Core with CoreHook in an unmanaged application on Windows.

Build status

Build serverPlatformBuild status
AppVeyorWindowsBuild status

Binary Releases

You download the pre-built Windows binaries here or you can build the binaries from source.

Usage

For x86, x64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the build output directory of your program.

For ARM, ARM64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the output directory of your published program, created either from using the Publishing Script or the dotnet publish command.

Building

Windows (x86, x64, ARM, ARM64)

Requirements

  • Visual Studio

Visual Studio

Building the DLL requires Visual Studio and there are two options: You can build the DLL by using the Visual Studio IDE or using msbuild within the Developer Command Prompt (the solution file is for Visual Studio 2017, for other versions see the CMake section).

You can choose a configuration (Debug|Release) and a platform (X86|X64|ARM|ARM64) and build.

An example for building the X64 coreload64.dll in the Release configuration:

msbuild build/msvc/coreload/coreload-dll.vcxproj /p:Configuration=Release /p:Platform=x64

To build the entire solution (which also builds the testing project), you can run:

nuget restore build/msvc/coreload.sln
msbuild build/msvc/coreload.sln /p:Configuration=Release /p:Platform=x64

The build output DLL will be inside the bin folder.

CMake

You can also build the library using CMake. You can run the build.cmd file to build for the x86 and x64 architectures using Visual Studio 2017. CMake also gives you the option to build with an older version of Visual Studio such as 2015 or 2013.

Tests

You can compile the .NET class Calculator.cs, which is required for the tests, with the command:

csc -target:library Calculator.cs

Credits

The coreload project is based on the core-setup host which supports parsing the .deps.json and runtimeconfig.json application configuration files. Most of the code for this library is borrowed from the corehost source.

References

About

Library for hosting .NET Core in Linux, macOS, and Windows applications

Topics

Resources

Stars

17 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

CoreHook.Host

LicenseReleases

A library for hosting .NET Core with CoreHook in an unmanaged application on Windows.

Build status

Build serverPlatformBuild status
AppVeyorWindowsBuild status

Binary Releases

You download the pre-built Windows binaries here or you can build the binaries from source.

Usage

For x86, x64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the build output directory of your program.

For ARM, ARM64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the output directory of your published program, created either from using the Publishing Script or the dotnet publish command.

Building

Windows (x86, x64, ARM, ARM64)

Requirements

  • Visual Studio

Visual Studio

Building the DLL requires Visual Studio and there are two options: You can build the DLL by using the Visual Studio IDE or using msbuild within the Developer Command Prompt (the solution file is for Visual Studio 2017, for other versions see the CMake section).

You can choose a configuration (Debug|Release) and a platform (X86|X64|ARM|ARM64) and build.

An example for building the X64 coreload64.dll in the Release configuration:

msbuild build/msvc/coreload/coreload-dll.vcxproj /p:Configuration=Release /p:Platform=x64

To build the entire solution (which also builds the testing project), you can run:

nuget restore build/msvc/coreload.sln
msbuild build/msvc/coreload.sln /p:Configuration=Release /p:Platform=x64

The build output DLL will be inside the bin folder.

CMake

You can also build the library using CMake. You can run the build.cmd file to build for the x86 and x64 architectures using Visual Studio 2017. CMake also gives you the option to build with an older version of Visual Studio such as 2015 or 2013.

Tests

You can compile the .NET class Calculator.cs, which is required for the tests, with the command:

csc -target:library Calculator.cs

Credits

The coreload project is based on the core-setup host which supports parsing the .deps.json and runtimeconfig.json application configuration files. Most of the code for this library is borrowed from the corehost source.

References

About

Library for hosting .NET Core in Linux, macOS, and Windows applications

Topics

Resources

Stars

17 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

CoreHook.Host

LicenseReleases

A library for hosting .NET Core with CoreHook in an unmanaged application on Windows.

Build status

Build serverPlatformBuild status
AppVeyorWindowsBuild status

Binary Releases

You download the pre-built Windows binaries here or you can build the binaries from source.

Usage

For x86, x64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the build output directory of your program.

For ARM, ARM64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the output directory of your published program, created either from using the Publishing Script or the dotnet publish command.

Building

Windows (x86, x64, ARM, ARM64)

Requirements

  • Visual Studio

Visual Studio

Building the DLL requires Visual Studio and there are two options: You can build the DLL by using the Visual Studio IDE or using msbuild within the Developer Command Prompt (the solution file is for Visual Studio 2017, for other versions see the CMake section).

You can choose a configuration (Debug|Release) and a platform (X86|X64|ARM|ARM64) and build.

An example for building the X64 coreload64.dll in the Release configuration:

msbuild build/msvc/coreload/coreload-dll.vcxproj /p:Configuration=Release /p:Platform=x64

To build the entire solution (which also builds the testing project), you can run:

nuget restore build/msvc/coreload.sln
msbuild build/msvc/coreload.sln /p:Configuration=Release /p:Platform=x64

The build output DLL will be inside the bin folder.

CMake

You can also build the library using CMake. You can run the build.cmd file to build for the x86 and x64 architectures using Visual Studio 2017. CMake also gives you the option to build with an older version of Visual Studio such as 2015 or 2013.

Tests

You can compile the .NET class Calculator.cs, which is required for the tests, with the command:

csc -target:library Calculator.cs

Credits

The coreload project is based on the core-setup host which supports parsing the .deps.json and runtimeconfig.json application configuration files. Most of the code for this library is borrowed from the corehost source.

References

About

Library for hosting .NET Core in Linux, macOS, and Windows applications

Topics

Resources

Stars

17 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

CoreHook.Host

LicenseReleases

A library for hosting .NET Core with CoreHook in an unmanaged application on Windows.

Build status

Build serverPlatformBuild status
AppVeyorWindowsBuild status

Binary Releases

You download the pre-built Windows binaries here or you can build the binaries from source.

Usage

For x86, x64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the build output directory of your program.

For ARM, ARM64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the output directory of your published program, created either from using the Publishing Script or the dotnet publish command.

Building

Windows (x86, x64, ARM, ARM64)

Requirements

  • Visual Studio

Visual Studio

Building the DLL requires Visual Studio and there are two options: You can build the DLL by using the Visual Studio IDE or using msbuild within the Developer Command Prompt (the solution file is for Visual Studio 2017, for other versions see the CMake section).

You can choose a configuration (Debug|Release) and a platform (X86|X64|ARM|ARM64) and build.

An example for building the X64 coreload64.dll in the Release configuration:

msbuild build/msvc/coreload/coreload-dll.vcxproj /p:Configuration=Release /p:Platform=x64

To build the entire solution (which also builds the testing project), you can run:

nuget restore build/msvc/coreload.sln
msbuild build/msvc/coreload.sln /p:Configuration=Release /p:Platform=x64

The build output DLL will be inside the bin folder.

CMake

You can also build the library using CMake. You can run the build.cmd file to build for the x86 and x64 architectures using Visual Studio 2017. CMake also gives you the option to build with an older version of Visual Studio such as 2015 or 2013.

Tests

You can compile the .NET class Calculator.cs, which is required for the tests, with the command:

csc -target:library Calculator.cs

Credits

The coreload project is based on the core-setup host which supports parsing the .deps.json and runtimeconfig.json application configuration files. Most of the code for this library is borrowed from the corehost source.

References

About

Library for hosting .NET Core in Linux, macOS, and Windows applications

Topics

Resources

Stars

17 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

CoreHook.Host

LicenseReleases

A library for hosting .NET Core with CoreHook in an unmanaged application on Windows.

Build status

Build serverPlatformBuild status
AppVeyorWindowsBuild status

Binary Releases

You download the pre-built Windows binaries here or you can build the binaries from source.

Usage

For x86, x64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the build output directory of your program.

For ARM, ARM64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the output directory of your published program, created either from using the Publishing Script or the dotnet publish command.

Building

Windows (x86, x64, ARM, ARM64)

Requirements

  • Visual Studio

Visual Studio

Building the DLL requires Visual Studio and there are two options: You can build the DLL by using the Visual Studio IDE or using msbuild within the Developer Command Prompt (the solution file is for Visual Studio 2017, for other versions see the CMake section).

You can choose a configuration (Debug|Release) and a platform (X86|X64|ARM|ARM64) and build.

An example for building the X64 coreload64.dll in the Release configuration:

msbuild build/msvc/coreload/coreload-dll.vcxproj /p:Configuration=Release /p:Platform=x64

To build the entire solution (which also builds the testing project), you can run:

nuget restore build/msvc/coreload.sln
msbuild build/msvc/coreload.sln /p:Configuration=Release /p:Platform=x64

The build output DLL will be inside the bin folder.

CMake

You can also build the library using CMake. You can run the build.cmd file to build for the x86 and x64 architectures using Visual Studio 2017. CMake also gives you the option to build with an older version of Visual Studio such as 2015 or 2013.

Tests

You can compile the .NET class Calculator.cs, which is required for the tests, with the command:

csc -target:library Calculator.cs

Credits

The coreload project is based on the core-setup host which supports parsing the .deps.json and runtimeconfig.json application configuration files. Most of the code for this library is borrowed from the corehost source.

References

About

Library for hosting .NET Core in Linux, macOS, and Windows applications

Topics

Resources

Stars

17 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

CoreHook.Host

LicenseReleases

A library for hosting .NET Core with CoreHook in an unmanaged application on Windows.

Build status

Build serverPlatformBuild status
AppVeyorWindowsBuild status

Binary Releases

You download the pre-built Windows binaries here or you can build the binaries from source.

Usage

For x86, x64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the build output directory of your program.

For ARM, ARM64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the output directory of your published program, created either from using the Publishing Script or the dotnet publish command.

Building

Windows (x86, x64, ARM, ARM64)

Requirements

  • Visual Studio

Visual Studio

Building the DLL requires Visual Studio and there are two options: You can build the DLL by using the Visual Studio IDE or using msbuild within the Developer Command Prompt (the solution file is for Visual Studio 2017, for other versions see the CMake section).

You can choose a configuration (Debug|Release) and a platform (X86|X64|ARM|ARM64) and build.

An example for building the X64 coreload64.dll in the Release configuration:

msbuild build/msvc/coreload/coreload-dll.vcxproj /p:Configuration=Release /p:Platform=x64

To build the entire solution (which also builds the testing project), you can run:

nuget restore build/msvc/coreload.sln
msbuild build/msvc/coreload.sln /p:Configuration=Release /p:Platform=x64

The build output DLL will be inside the bin folder.

CMake

You can also build the library using CMake. You can run the build.cmd file to build for the x86 and x64 architectures using Visual Studio 2017. CMake also gives you the option to build with an older version of Visual Studio such as 2015 or 2013.

Tests

You can compile the .NET class Calculator.cs, which is required for the tests, with the command:

csc -target:library Calculator.cs

Credits

The coreload project is based on the core-setup host which supports parsing the .deps.json and runtimeconfig.json application configuration files. Most of the code for this library is borrowed from the corehost source.

References

About

Library for hosting .NET Core in Linux, macOS, and Windows applications

Topics

Resources

Stars

17 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

CoreHook.Host

LicenseReleases

A library for hosting .NET Core with CoreHook in an unmanaged application on Windows.

Build status

Build serverPlatformBuild status
AppVeyorWindowsBuild status

Binary Releases

You download the pre-built Windows binaries here or you can build the binaries from source.

Usage

For x86, x64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the build output directory of your program.

For ARM, ARM64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the output directory of your published program, created either from using the Publishing Script or the dotnet publish command.

Building

Windows (x86, x64, ARM, ARM64)

Requirements

  • Visual Studio

Visual Studio

Building the DLL requires Visual Studio and there are two options: You can build the DLL by using the Visual Studio IDE or using msbuild within the Developer Command Prompt (the solution file is for Visual Studio 2017, for other versions see the CMake section).

You can choose a configuration (Debug|Release) and a platform (X86|X64|ARM|ARM64) and build.

An example for building the X64 coreload64.dll in the Release configuration:

msbuild build/msvc/coreload/coreload-dll.vcxproj /p:Configuration=Release /p:Platform=x64

To build the entire solution (which also builds the testing project), you can run:

nuget restore build/msvc/coreload.sln
msbuild build/msvc/coreload.sln /p:Configuration=Release /p:Platform=x64

The build output DLL will be inside the bin folder.

CMake

You can also build the library using CMake. You can run the build.cmd file to build for the x86 and x64 architectures using Visual Studio 2017. CMake also gives you the option to build with an older version of Visual Studio such as 2015 or 2013.

Tests

You can compile the .NET class Calculator.cs, which is required for the tests, with the command:

csc -target:library Calculator.cs

Credits

The coreload project is based on the core-setup host which supports parsing the .deps.json and runtimeconfig.json application configuration files. Most of the code for this library is borrowed from the corehost source.

References

About

Library for hosting .NET Core in Linux, macOS, and Windows applications

Topics

Resources

Stars

17 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

CoreHook.Host

LicenseReleases

A library for hosting .NET Core with CoreHook in an unmanaged application on Windows.

Build status

Build serverPlatformBuild status
AppVeyorWindowsBuild status

Binary Releases

You download the pre-built Windows binaries here or you can build the binaries from source.

Usage

For x86, x64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the build output directory of your program.

For ARM, ARM64, extract the zip corresponding to your target architecture, then place the coreload32.dll or coreload64.dll in the output directory of your published program, created either from using the Publishing Script or the dotnet publish command.

Building

Windows (x86, x64, ARM, ARM64)

Requirements

  • Visual Studio

Visual Studio

Building the DLL requires Visual Studio and there are two options: You can build the DLL by using the Visual Studio IDE or using msbuild within the Developer Command Prompt (the solution file is for Visual Studio 2017, for other versions see the CMake section).

You can choose a configuration (Debug|Release) and a platform (X86|X64|ARM|ARM64) and build.

An example for building the X64 coreload64.dll in the Release configuration:

msbuild build/msvc/coreload/coreload-dll.vcxproj /p:Configuration=Release /p:Platform=x64

To build the entire solution (which also builds the testing project), you can run:

nuget restore build/msvc/coreload.sln
msbuild build/msvc/coreload.sln /p:Configuration=Release /p:Platform=x64

The build output DLL will be inside the bin folder.

CMake

You can also build the library using CMake. You can run the build.cmd file to build for the x86 and x64 architectures using Visual Studio 2017. CMake also gives you the option to build with an older version of Visual Studio such as 2015 or 2013.

Tests

You can compile the .NET class Calculator.cs, which is required for the tests, with the command:

csc -target:library Calculator.cs

Credits

The coreload project is based on the core-setup host which supports parsing the .deps.json and runtimeconfig.json application configuration files. Most of the code for this library is borrowed from the corehost source.

References

About

Library for hosting .NET Core in Linux, macOS, and Windows applications

Topics

Resources

Stars

17 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages