[PR #3565] [MERGED] Make ConPTY build as both LIB and DLL. #25420

Open
opened 2026-01-31 09:09:24 +00:00 by claunia · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/3565
Author: @miniksa
Created: 11/13/2019
Status: Merged
Merged: 11/14/2019
Merged by: @DHowett-MSFT

Base: masterHead: dev/miniksa/ptydll


📝 Commits (4)

  • b9a8f9d Make ConPTY build as both LIB and DLL. Update TerminalConnection reference to LIB version (because Terminal builds both UWP and Centennial, requiring different CRTs each). DLL is now available (and against desktop CRT) to be PInvokable from C# for WPF terminal. Note, DLL MUST BUILD PRECOMP to get the magic pragma linking information to the Desktop CRT.
  • a6d3afc oops, renamed the lib lib lib lib.
  • ef95617 don't audit PTY lib. I can't do safe things because the safe things we use don't fit back inside kernelbase.dll.
  • 9d726b6 restore packaging rules to projects.

📊 Changes

5 files changed (+150 additions, -68 deletions)

View changed files

📝 OpenConsole.sln (+46 -21)
📝 src/cascadia/TerminalConnection/TerminalConnection.vcxproj (+2 -2)
📝 src/winconpty/dll/winconpty.def (+0 -0)
src/winconpty/dll/winconptydll.vcxproj (+63 -0)
📝 src/winconpty/lib/winconptylib.vcxproj (+39 -45)

📄 Description

Summary of the Pull Request

Make ConPTY build as both LIB and DLL. Update TerminalConnection reference to LIB version (because Terminal builds both UWP and Centennial, requiring different CRTs each). DLL is now available (and against desktop CRT) to be PInvokable from C# for WPF terminal. Note, DLL MUST BUILD PRECOMP to get the magic pragma linking information to the Desktop CRT.

PR Checklist

Validation Steps Performed

  • built it, built the terminal, tried to run it, worked.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/3565 **Author:** [@miniksa](https://github.com/miniksa) **Created:** 11/13/2019 **Status:** ✅ Merged **Merged:** 11/14/2019 **Merged by:** [@DHowett-MSFT](https://github.com/DHowett-MSFT) **Base:** `master` ← **Head:** `dev/miniksa/ptydll` --- ### 📝 Commits (4) - [`b9a8f9d`](https://github.com/microsoft/terminal/commit/b9a8f9d709fb9ecf34b4357ad8ce8cb90141d6ff) Make ConPTY build as both LIB and DLL. Update TerminalConnection reference to LIB version (because Terminal builds both UWP and Centennial, requiring different CRTs each). DLL is now available (and against desktop CRT) to be PInvokable from C# for WPF terminal. Note, DLL MUST BUILD PRECOMP to get the magic pragma linking information to the Desktop CRT. - [`a6d3afc`](https://github.com/microsoft/terminal/commit/a6d3afc96a1e6454308e08bbbf2f11e37a0bcfb2) oops, renamed the lib lib lib lib. - [`ef95617`](https://github.com/microsoft/terminal/commit/ef95617c11f52c174f250ebe88f68dc83be83c67) don't audit PTY lib. I can't do safe things because the safe things we use don't fit back inside kernelbase.dll. - [`9d726b6`](https://github.com/microsoft/terminal/commit/9d726b64ef2e207c90da767538017f41d369f4bb) restore packaging rules to projects. ### 📊 Changes **5 files changed** (+150 additions, -68 deletions) <details> <summary>View changed files</summary> 📝 `OpenConsole.sln` (+46 -21) 📝 `src/cascadia/TerminalConnection/TerminalConnection.vcxproj` (+2 -2) 📝 `src/winconpty/dll/winconpty.def` (+0 -0) ➕ `src/winconpty/dll/winconptydll.vcxproj` (+63 -0) 📝 `src/winconpty/lib/winconptylib.vcxproj` (+39 -45) </details> ### 📄 Description ## Summary of the Pull Request Make ConPTY build as both LIB and DLL. Update TerminalConnection reference to LIB version (because Terminal builds both UWP and Centennial, requiring different CRTs each). DLL is now available (and against desktop CRT) to be PInvokable from C# for WPF terminal. Note, DLL MUST BUILD PRECOMP to get the magic pragma linking information to the Desktop CRT. <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist * [x] Closes #3563 * [x] I work here. * [x] Tests still pass, none added. * [x] No doc. * [x] I'm a core contributor. <!-- Describe how you validated the behavior. Add automated tests wherever possible, but list manual validation steps taken as well --> ## Validation Steps Performed - built it, built the terminal, tried to run it, worked. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:09:24 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#25420