Catalog · How the catalog works
IPCFramework4D
- ★ 3 on GitHub
Anyone may press Interesting, signed in or not. It helps others find this project.
README
IPCFramework4D
IPCFramework4D currently centers on BitBridge, a Delphi migration framework for applications that need to move to 64-bit while still using legacy 32-bit DLL functionality.
BitBridge keeps legacy 32-bit code in a separate 32-bit host process and lets a 64-bit Delphi application call it through a controlled IPC bridge.
Why BitBridge Exists
Many Delphi systems still depend on older vendor DLLs or internal libraries that only exist as 32-bit binaries. A 64-bit process cannot load those DLLs directly.
BitBridge provides a practical migration path:
- keep the legacy DLL isolated in a 32-bit host
- call it from a 64-bit application through a stable client API
- wrap legacy operations behind typed Delphi classes
- migrate one bounded slice at a time instead of rewriting everything at once
High-Level Architecture
64-bit Delphi application
|
v
BitBridge client / typed wrapper
|
v
Named-pipe IPC
|
v
BitBridge 32-bit host
|
v
Legacy 32-bit DLL or Delphi handlerThe application should normally talk to a typed wrapper. Raw command names and transport details should stay inside the integration layer.
Recommended Usage
Use BitBridge when:
- your main application must run as 64-bit
- a required dependency is still 32-bit
- the dependency can safely run out of process
- you want a gradual migration path with support visibility
The recommended adoption pattern is:
- Choose one small legacy workflow.
- Keep the existing 32-bit wrapper code inside the proxy host.
- Expose only the operations the 64-bit app needs.
- Add a typed 64-bit facade around those operations.
- Verify the slice with smoke tests and operational checks.
- Expand only after the first slice is stable.
Repository Layout
BitBridge/src/- framework sourceBitBridge/hosts/- 32-bit host projectBitBridge/demo/- demo applicationsBitBridge/test/- smoke tests and sample DLLsBitBridge/templates/- migration templatesBitBridge/docs/- production documentation
Key entry points:
BitBridge/hosts/BitBridge.ProxyHost32.dprBitBridge/src/BitBridge.Client.ProxyClient.pasBitBridge/templates/Legacy32Proxy/
Production Documentation
The retained documentation is intentionally focused:
BitBridge/docs/BITBRIDGE_USER_MANUAL.md- main high-level user manualBitBridge/docs/BITBRIDGE_USER_MANUAL.docx- Word version of the user manualBitBridge/docs/ADMIN_ENDPOINTS.md- operational endpoint referenceBitBridge/docs/ERROR_CODES.md- public error-code catalogBitBridge/docs/LEGACY_32BIT_DLL_MIGRATION_MANUAL.md- migration manual for existing Win32 wrappersBitBridge/docs/MIGRATION_INTEGRATION_EXAMPLE.md- compact integration example
Operational Surface
BitBridge includes built-in administrative commands for common support scenarios:
- host identity and capabilities
- health checks
- diagnostics
- request status and request history
- cooperative request cancellation
For details, see BitBridge/docs/ADMIN_ENDPOINTS.md.
Error Handling
Client code should treat BitBridge calls as remote calls. Log request IDs, handle documented error codes, and use the admin endpoints when diagnosing repeated failures.
For the stable public error codes, see BitBridge/docs/ERROR_CODES.md.
Current Direction
BitBridge is intended for deliberate, production-minded migration work. The best results come from small integration slices, typed wrappers, and clear support visibility.
Do not expose raw command strings throughout application code, and do not use the bridge as a reason to migrate every legacy export at once.
License
See LICENSE.


