├── Binary └── NDde.dll ├── Documentation ├── Readme.doc ├── License.doc ├── Documentation.chm └── NDde.ndoc ├── Source ├── NDde │ ├── bin │ │ ├── Release.piz │ │ └── Release │ │ │ ├── NDde.dll │ │ │ └── NDde.pdb │ ├── Internal │ │ ├── Ddeml.cs │ │ ├── DdemlEventArgs.cs │ │ ├── DdemlException.cs │ │ ├── Server │ │ │ ├── DdemlServer.cs │ │ │ └── DdemlConversation.cs │ │ ├── Advanced │ │ │ ├── DdemlContext.cs │ │ │ ├── DdemlTransaction.cs │ │ │ ├── Monitor │ │ │ │ ├── DdemlMonitor.cs │ │ │ │ ├── DdemlActivityEventArgs.cs │ │ │ │ ├── DdemlLinkActivityEventArgs.cs │ │ │ │ ├── DdemlErrorActivityEventArgs.cs │ │ │ │ ├── DdemlStringActivityEventArgs.cs │ │ │ │ ├── DdemlCallbackActivityEventArgs.cs │ │ │ │ ├── DdemlMessageActivityEventArgs.cs │ │ │ │ └── DdemlConversationActivityEventArgs.cs │ │ │ ├── IDdemlTransactionFilter.cs │ │ │ └── DdemlRegistrationEventArgs.cs │ │ ├── Client │ │ │ ├── DdemlAdviseEventArgs.cs │ │ │ └── DdemlDisconnectedEventArgs.cs │ │ └── Utility │ │ │ └── WeakReferenceDictionary.cs │ ├── obj │ │ ├── Release │ │ │ ├── NDde.dll │ │ │ ├── NDde.pdb │ │ │ ├── NDde.Properties.Resources.resources │ │ │ ├── NDde.csproj.GenerateResource.Cache │ │ │ ├── DesignTimeResolveAssemblyReferences.cache │ │ │ ├── NDde.csprojResolveAssemblyReference.cache │ │ │ ├── TempPE │ │ │ │ └── Properties.Resources.Designer.cs.dll │ │ │ ├── DesignTimeResolveAssemblyReferencesInput.cache │ │ │ └── NDde.csproj.FileListAbsolute.txt │ │ └── Debug │ │ │ ├── TempPE │ │ │ └── Properties.Resources.Designer.cs.dll │ │ │ └── DesignTimeResolveAssemblyReferencesInput.cache │ ├── Public │ │ ├── DdeEventArgs.cs │ │ ├── DdeException.cs │ │ ├── Server │ │ │ ├── DdeServer.cs │ │ │ └── DdeConversation.cs │ │ ├── Advanced │ │ │ ├── DdeMessageLoop.cs │ │ │ ├── DdeTransaction.cs │ │ │ ├── Monitor │ │ │ │ ├── DdeMonitor.cs │ │ │ │ ├── DdeActivityEventArgs.cs │ │ │ │ ├── DdeErrorActivityEventArgs.cs │ │ │ │ ├── DdeLinkActivityEventArgs.cs │ │ │ │ ├── DdeCallbackActivityEventArgs.cs │ │ │ │ ├── DdeMessageActivityEventArgs.cs │ │ │ │ ├── DdeStringActivityEventArgs.cs │ │ │ │ └── DdeConversationActivityEventArgs.cs │ │ │ ├── IDdeTransactionFilter.cs │ │ │ └── DdeRegistrationEventArgs.cs │ │ └── Client │ │ │ ├── DdeAdviseEventArgs.cs │ │ │ └── DdeDisconnectedEventArgs.cs │ ├── Documentation │ │ └── NamespaceDoc.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── NDde.csproj ├── Backup │ ├── NDde │ │ ├── Internal │ │ │ ├── Ddeml.cs │ │ │ ├── DdemlEventArgs.cs │ │ │ ├── DdemlException.cs │ │ │ ├── Client │ │ │ │ ├── DdemlClient.cs │ │ │ │ ├── DdemlAdviseEventArgs.cs │ │ │ │ └── DdemlDisconnectedEventArgs.cs │ │ │ ├── Server │ │ │ │ ├── DdemlServer.cs │ │ │ │ └── DdemlConversation.cs │ │ │ ├── Advanced │ │ │ │ ├── DdemlContext.cs │ │ │ │ ├── DdemlTransaction.cs │ │ │ │ ├── Monitor │ │ │ │ │ ├── DdemlMonitor.cs │ │ │ │ │ ├── DdemlActivityEventArgs.cs │ │ │ │ │ ├── DdemlLinkActivityEventArgs.cs │ │ │ │ │ ├── DdemlErrorActivityEventArgs.cs │ │ │ │ │ ├── DdemlMessageActivityEventArgs.cs │ │ │ │ │ ├── DdemlStringActivityEventArgs.cs │ │ │ │ │ ├── DdemlCallbackActivityEventArgs.cs │ │ │ │ │ └── DdemlConversationActivityEventArgs.cs │ │ │ │ ├── IDdemlTransactionFilter.cs │ │ │ │ └── DdemlRegistrationEventArgs.cs │ │ │ └── Utility │ │ │ │ └── WeakReferenceDictionary.cs │ │ ├── Public │ │ │ ├── DdeEventArgs.cs │ │ │ ├── DdeException.cs │ │ │ ├── Client │ │ │ │ ├── DdeClient.cs │ │ │ │ ├── DdeAdviseEventArgs.cs │ │ │ │ └── DdeDisconnectedEventArgs.cs │ │ │ ├── Server │ │ │ │ ├── DdeServer.cs │ │ │ │ └── DdeConversation.cs │ │ │ └── Advanced │ │ │ │ ├── DdeContext.cs │ │ │ │ ├── DdeMessageLoop.cs │ │ │ │ ├── DdeTransaction.cs │ │ │ │ ├── Monitor │ │ │ │ ├── DdeMonitor.cs │ │ │ │ ├── DdeActivityEventArgs.cs │ │ │ │ ├── DdeErrorActivityEventArgs.cs │ │ │ │ ├── DdeLinkActivityEventArgs.cs │ │ │ │ ├── DdeStringActivityEventArgs.cs │ │ │ │ ├── DdeCallbackActivityEventArgs.cs │ │ │ │ ├── DdeMessageActivityEventArgs.cs │ │ │ │ └── DdeConversationActivityEventArgs.cs │ │ │ │ ├── IDdeTransactionFilter.cs │ │ │ │ └── DdeRegistrationEventArgs.cs │ │ ├── Documentation │ │ │ └── NamespaceDoc.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── NDde.csproj │ ├── NDde.Test │ │ ├── Program.cs │ │ ├── Helpers │ │ │ ├── EventListener.cs │ │ │ └── TracingServer.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── NDde.Test.csproj │ └── NDde.sln ├── Reference │ └── nunit.framework.dll ├── NDde.Test │ ├── app.config │ ├── Program.cs │ ├── Helpers │ │ ├── EventListener.cs │ │ └── TracingServer.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── NDde.Test.csproj └── NDde.sln ├── Samples ├── cs │ ├── ClientWin │ │ ├── Properties │ │ │ ├── Settings.settings │ │ │ ├── Settings.Designer.cs │ │ │ ├── AssemblyInfo.cs │ │ │ ├── Resources.Designer.cs │ │ │ └── Resources.resx │ │ ├── Program.cs │ │ ├── MainForm.cs │ │ ├── MainForm.Designer.cs │ │ ├── ClientWin.csproj │ │ └── MainForm.resx │ ├── Client │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── Client.csproj │ │ └── Program.cs │ ├── Server │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── Server.csproj │ ├── Monitor │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── Program.cs │ │ └── Monitor.csproj │ └── Samples.sln └── vb │ ├── Client │ ├── My Project │ │ ├── Settings.settings │ │ ├── Application.Designer.vb │ │ ├── Application.myapp │ │ ├── AssemblyInfo.vb │ │ ├── Resources.Designer.vb │ │ ├── Settings.Designer.vb │ │ └── Resources.resx │ ├── Client.vbproj │ └── Program.vb │ ├── ClientWin │ ├── My Project │ │ ├── Settings.settings │ │ ├── Application.myapp │ │ ├── AssemblyInfo.vb │ │ ├── Application.Designer.vb │ │ ├── Resources.Designer.vb │ │ ├── Settings.Designer.vb │ │ └── Resources.resx │ ├── MainForm.vb │ ├── MainForm.Designer.vb │ ├── ClientWin.vbproj │ └── MainForm.resx │ ├── Server │ ├── My Project │ │ ├── Settings.settings │ │ ├── Application.Designer.vb │ │ ├── Application.myapp │ │ ├── AssemblyInfo.vb │ │ ├── Resources.Designer.vb │ │ ├── Settings.Designer.vb │ │ └── Resources.resx │ └── Server.vbproj │ └── Samples.sln ├── .gitattributes ├── README.md └── .gitignore /Binary/NDde.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Binary/NDde.dll -------------------------------------------------------------------------------- /Documentation/Readme.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Documentation/Readme.doc -------------------------------------------------------------------------------- /Documentation/License.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Documentation/License.doc -------------------------------------------------------------------------------- /Source/NDde/bin/Release.piz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/bin/Release.piz -------------------------------------------------------------------------------- /Source/NDde/Internal/Ddeml.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Ddeml.cs -------------------------------------------------------------------------------- /Documentation/Documentation.chm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Documentation/Documentation.chm -------------------------------------------------------------------------------- /Source/NDde/bin/Release/NDde.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/bin/Release/NDde.dll -------------------------------------------------------------------------------- /Source/NDde/bin/Release/NDde.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/bin/Release/NDde.pdb -------------------------------------------------------------------------------- /Source/NDde/obj/Release/NDde.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Release/NDde.dll -------------------------------------------------------------------------------- /Source/NDde/obj/Release/NDde.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Release/NDde.pdb -------------------------------------------------------------------------------- /Source/NDde/Public/DdeEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/DdeEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Public/DdeException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/DdeException.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Ddeml.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Ddeml.cs -------------------------------------------------------------------------------- /Source/Reference/nunit.framework.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Reference/nunit.framework.dll -------------------------------------------------------------------------------- /Source/NDde/Internal/DdemlEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/DdemlEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/DdemlException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/DdemlException.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Server/DdeServer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Server/DdeServer.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/DdeEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/DdeEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/DdeException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/DdeException.cs -------------------------------------------------------------------------------- /Source/NDde/Documentation/NamespaceDoc.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Documentation/NamespaceDoc.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Server/DdemlServer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Server/DdemlServer.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Server/DdeConversation.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Server/DdeConversation.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/DdemlEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/DdemlEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/DdemlException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/DdemlException.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Client/DdeClient.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Client/DdeClient.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Server/DdeServer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Server/DdeServer.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/DdemlContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/DdemlContext.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/DdeMessageLoop.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/DdeMessageLoop.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/DdeTransaction.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/DdeTransaction.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Client/DdeAdviseEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Client/DdeAdviseEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Documentation/NamespaceDoc.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Documentation/NamespaceDoc.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Client/DdemlClient.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Client/DdemlClient.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Server/DdemlServer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Server/DdemlServer.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/DdeContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/DdeContext.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/DdemlTransaction.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/DdemlTransaction.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Server/DdemlConversation.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Server/DdemlConversation.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/Monitor/DdeMonitor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/Monitor/DdeMonitor.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/DdemlContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/DdemlContext.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/DdeMessageLoop.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/DdeMessageLoop.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/DdeTransaction.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/DdeTransaction.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Server/DdeConversation.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Server/DdeConversation.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Client/DdemlAdviseEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Client/DdemlAdviseEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/IDdeTransactionFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/IDdeTransactionFilter.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Client/DdeAdviseEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Client/DdeAdviseEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/Monitor/DdemlMonitor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/Monitor/DdemlMonitor.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Client/DdeDisconnectedEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Client/DdeDisconnectedEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/DdemlTransaction.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/DdemlTransaction.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Server/DdemlConversation.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Server/DdemlConversation.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/Monitor/DdeMonitor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/Monitor/DdeMonitor.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/IDdemlTransactionFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/IDdemlTransactionFilter.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Client/DdemlDisconnectedEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Client/DdemlDisconnectedEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Utility/WeakReferenceDictionary.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Utility/WeakReferenceDictionary.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/DdeRegistrationEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/DdeRegistrationEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Client/DdemlAdviseEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Client/DdemlAdviseEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/IDdeTransactionFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/IDdeTransactionFilter.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/DdemlRegistrationEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/DdemlRegistrationEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/Monitor/DdeActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/Monitor/DdeActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/obj/Release/NDde.Properties.Resources.resources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Release/NDde.Properties.Resources.resources -------------------------------------------------------------------------------- /Source/NDde/obj/Release/NDde.csproj.GenerateResource.Cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Release/NDde.csproj.GenerateResource.Cache -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/Monitor/DdemlMonitor.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/Monitor/DdemlMonitor.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Utility/WeakReferenceDictionary.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Utility/WeakReferenceDictionary.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/DdeRegistrationEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/DdeRegistrationEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Client/DdeDisconnectedEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Client/DdeDisconnectedEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/IDdemlTransactionFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/IDdemlTransactionFilter.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Client/DdemlDisconnectedEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Client/DdemlDisconnectedEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/Monitor/DdemlActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/Monitor/DdemlActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/Monitor/DdeErrorActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/Monitor/DdeErrorActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/Monitor/DdeLinkActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/Monitor/DdeLinkActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/DdemlRegistrationEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/DdemlRegistrationEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/Monitor/DdeActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/Monitor/DdeActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/Monitor/DdemlLinkActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/Monitor/DdemlLinkActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/Monitor/DdeCallbackActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/Monitor/DdeCallbackActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/Monitor/DdeMessageActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/Monitor/DdeMessageActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/Monitor/DdeStringActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/Monitor/DdeStringActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll -------------------------------------------------------------------------------- /Source/NDde/obj/Release/DesignTimeResolveAssemblyReferences.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Release/DesignTimeResolveAssemblyReferences.cache -------------------------------------------------------------------------------- /Source/NDde/obj/Release/NDde.csprojResolveAssemblyReference.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Release/NDde.csprojResolveAssemblyReference.cache -------------------------------------------------------------------------------- /Source/NDde/obj/Release/TempPE/Properties.Resources.Designer.cs.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Release/TempPE/Properties.Resources.Designer.cs.dll -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/Monitor/DdemlErrorActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/Monitor/DdemlErrorActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/Monitor/DdemlStringActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/Monitor/DdemlStringActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/Monitor/DdemlActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/Monitor/DdemlActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/Monitor/DdeErrorActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/Monitor/DdeErrorActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/Monitor/DdeLinkActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/Monitor/DdeLinkActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/Monitor/DdeStringActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/Monitor/DdeStringActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/Monitor/DdemlCallbackActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/Monitor/DdemlCallbackActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/Monitor/DdemlMessageActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/Monitor/DdemlMessageActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/Public/Advanced/Monitor/DdeConversationActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Public/Advanced/Monitor/DdeConversationActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/Monitor/DdemlLinkActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/Monitor/DdemlLinkActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/Monitor/DdeCallbackActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/Monitor/DdeCallbackActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/Monitor/DdeMessageActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/Monitor/DdeMessageActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/Monitor/DdemlErrorActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/Monitor/DdemlErrorActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/Monitor/DdemlMessageActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/Monitor/DdemlMessageActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/Monitor/DdemlStringActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/Monitor/DdemlStringActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/NDde.Test/app.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Source/NDde/Internal/Advanced/Monitor/DdemlConversationActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/NDde/Internal/Advanced/Monitor/DdemlConversationActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/Monitor/DdemlCallbackActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/Monitor/DdemlCallbackActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Public/Advanced/Monitor/DdeConversationActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Public/Advanced/Monitor/DdeConversationActivityEventArgs.cs -------------------------------------------------------------------------------- /Source/Backup/NDde/Internal/Advanced/Monitor/DdemlConversationActivityEventArgs.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anphonic/NDde/HEAD/Source/Backup/NDde/Internal/Advanced/Monitor/DdemlConversationActivityEventArgs.cs -------------------------------------------------------------------------------- /Samples/cs/ClientWin/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Samples/vb/Client/My Project/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/My Project/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Samples/vb/Server/My Project/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Source/NDde.Test/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | using System.Threading; 5 | using System.Windows.Forms; 6 | using NDde; 7 | using NDde.Advanced; 8 | using NDde.Advanced.Monitor; 9 | using NDde.Client; 10 | using NDde.Server; 11 | 12 | namespace NDde.Test 13 | { 14 | class Program 15 | { 16 | static void Main(string[] args) 17 | { 18 | } 19 | 20 | } // class 21 | 22 | } // namespace 23 | -------------------------------------------------------------------------------- /Source/Backup/NDde.Test/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | using System.Threading; 5 | using System.Windows.Forms; 6 | using NDde; 7 | using NDde.Advanced; 8 | using NDde.Advanced.Monitor; 9 | using NDde.Client; 10 | using NDde.Server; 11 | 12 | namespace NDde.Test 13 | { 14 | class Program 15 | { 16 | static void Main(string[] args) 17 | { 18 | } 19 | 20 | } // class 21 | 22 | } // namespace 23 | -------------------------------------------------------------------------------- /Samples/vb/Client/My Project/Application.Designer.vb: -------------------------------------------------------------------------------- 1 | '------------------------------------------------------------------------------ 2 | ' 3 | ' This code was generated by a tool. 4 | ' Runtime Version:2.0.50727.42 5 | ' 6 | ' Changes to this file may cause incorrect behavior and will be lost if 7 | ' the code is regenerated. 8 | ' 9 | '------------------------------------------------------------------------------ 10 | 11 | Option Strict On 12 | Option Explicit On 13 | 14 | -------------------------------------------------------------------------------- /Samples/vb/Server/My Project/Application.Designer.vb: -------------------------------------------------------------------------------- 1 | '------------------------------------------------------------------------------ 2 | ' 3 | ' This code was generated by a tool. 4 | ' Runtime Version:2.0.50727.42 5 | ' 6 | ' Changes to this file may cause incorrect behavior and will be lost if 7 | ' the code is regenerated. 8 | ' 9 | '------------------------------------------------------------------------------ 10 | 11 | Option Strict On 12 | Option Explicit On 13 | 14 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/My Project/Application.myapp: -------------------------------------------------------------------------------- 1 | 2 | 3 | true 4 | MainForm 5 | false 6 | 0 7 | true 8 | 0 9 | true 10 | -------------------------------------------------------------------------------- /Samples/vb/Client/My Project/Application.myapp: -------------------------------------------------------------------------------- 1 | 2 | 3 | false 4 | false 5 | 0 6 | true 7 | 0 8 | 2 9 | true 10 | 11 | -------------------------------------------------------------------------------- /Samples/vb/Server/My Project/Application.myapp: -------------------------------------------------------------------------------- 1 | 2 | 3 | false 4 | false 5 | 0 6 | true 7 | 0 8 | 2 9 | true 10 | 11 | -------------------------------------------------------------------------------- /Samples/cs/ClientWin/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Windows.Forms; 4 | 5 | namespace ClientWin 6 | { 7 | static class Program 8 | { 9 | /// 10 | /// The main entry point for the application. 11 | /// 12 | [STAThread] 13 | static void Main() 14 | { 15 | Application.EnableVisualStyles(); 16 | Application.SetCompatibleTextRenderingDefault(false); 17 | Application.Run(new MainForm()); 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /Source/NDde.Test/Helpers/EventListener.cs: -------------------------------------------------------------------------------- 1 | namespace NDde.Test 2 | { 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Threading; 6 | using NDde; 7 | 8 | internal sealed class EventListener 9 | { 10 | private System.Threading.ManualResetEvent _Received = new System.Threading.ManualResetEvent(false); 11 | private List _Events = new List(); 12 | 13 | public List Events 14 | { 15 | get { return _Events; } 16 | } 17 | 18 | public System.Threading.WaitHandle Received 19 | { 20 | get { return _Received; } 21 | } 22 | 23 | public void OnEvent(object sender, DdeEventArgs args) 24 | { 25 | _Events.Add(args); 26 | _Received.Set(); 27 | } 28 | 29 | } // class 30 | 31 | } // namespace -------------------------------------------------------------------------------- /Source/Backup/NDde.Test/Helpers/EventListener.cs: -------------------------------------------------------------------------------- 1 | namespace NDde.Test 2 | { 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Threading; 6 | using NDde; 7 | 8 | internal sealed class EventListener 9 | { 10 | private System.Threading.ManualResetEvent _Received = new System.Threading.ManualResetEvent(false); 11 | private List _Events = new List(); 12 | 13 | public List Events 14 | { 15 | get { return _Events; } 16 | } 17 | 18 | public System.Threading.WaitHandle Received 19 | { 20 | get { return _Received; } 21 | } 22 | 23 | public void OnEvent(object sender, DdeEventArgs args) 24 | { 25 | _Events.Add(args); 26 | _Received.Set(); 27 | } 28 | 29 | } // class 30 | 31 | } // namespace -------------------------------------------------------------------------------- /Samples/cs/ClientWin/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:2.0.50727.42 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace ClientWin.Properties 12 | { 13 | 14 | 15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")] 17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase 18 | { 19 | 20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 21 | 22 | public static Settings Default 23 | { 24 | get 25 | { 26 | return defaultInstance; 27 | } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Samples/vb/Client/My Project/AssemblyInfo.vb: -------------------------------------------------------------------------------- 1 | Imports System 2 | Imports System.Reflection 3 | Imports System.Runtime.InteropServices 4 | 5 | ' General Information about an assembly is controlled through the following 6 | ' set of attributes. Change these attribute values to modify the information 7 | ' associated with an assembly. 8 | 9 | ' Review the values of the assembly attributes 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 'The following GUID is for the ID of the typelib if this project is exposed to COM 21 | 22 | 23 | ' Version information for an assembly consists of the following four values: 24 | ' 25 | ' Major Version 26 | ' Minor Version 27 | ' Build Number 28 | ' Revision 29 | ' 30 | ' You can specify all the values or you can default the Build and Revision Numbers 31 | ' by using the '*' as shown below: 32 | ' 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /Samples/vb/Server/My Project/AssemblyInfo.vb: -------------------------------------------------------------------------------- 1 | Imports System 2 | Imports System.Reflection 3 | Imports System.Runtime.InteropServices 4 | 5 | ' General Information about an assembly is controlled through the following 6 | ' set of attributes. Change these attribute values to modify the information 7 | ' associated with an assembly. 8 | 9 | ' Review the values of the assembly attributes 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 'The following GUID is for the ID of the typelib if this project is exposed to COM 21 | 22 | 23 | ' Version information for an assembly consists of the following four values: 24 | ' 25 | ' Major Version 26 | ' Minor Version 27 | ' Build Number 28 | ' Revision 29 | ' 30 | ' You can specify all the values or you can default the Build and Revision Numbers 31 | ' by using the '*' as shown below: 32 | ' 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/My Project/AssemblyInfo.vb: -------------------------------------------------------------------------------- 1 | Imports System 2 | Imports System.Reflection 3 | Imports System.Runtime.InteropServices 4 | 5 | ' General Information about an assembly is controlled through the following 6 | ' set of attributes. Change these attribute values to modify the information 7 | ' associated with an assembly. 8 | 9 | ' Review the values of the assembly attributes 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 'The following GUID is for the ID of the typelib if this project is exposed to COM 21 | 22 | 23 | ' Version information for an assembly consists of the following four values: 24 | ' 25 | ' Major Version 26 | ' Minor Version 27 | ' Build Number 28 | ' Revision 29 | ' 30 | ' You can specify all the values or you can default the Build and Revision Numbers 31 | ' by using the '*' as shown below: 32 | ' 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /Source/NDde.Test/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("NDde.Test")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("NDde.Test")] 13 | [assembly: AssemblyCopyright("Copyright © 2005")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("8e005542-d8d5-43e9-bfcf-f418effca9b4")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | [assembly: AssemblyVersion("1.0.0.0")] 33 | [assembly: AssemblyFileVersion("1.0.0.0")] 34 | -------------------------------------------------------------------------------- /Source/Backup/NDde.Test/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("NDde.Test")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("NDde.Test")] 13 | [assembly: AssemblyCopyright("Copyright © 2005")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("8e005542-d8d5-43e9-bfcf-f418effca9b4")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | [assembly: AssemblyVersion("1.0.0.0")] 33 | [assembly: AssemblyFileVersion("1.0.0.0")] 34 | -------------------------------------------------------------------------------- /Samples/cs/Client/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Client")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Client")] 13 | [assembly: AssemblyCopyright("Copyright © 2005")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("6641cbf8-926a-481a-a4b3-f7ab1e75efc6")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | [assembly: AssemblyVersion("1.0.0.0")] 33 | [assembly: AssemblyFileVersion("1.0.0.0")] 34 | -------------------------------------------------------------------------------- /Samples/cs/Server/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Server")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Server")] 13 | [assembly: AssemblyCopyright("Copyright © 2005")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("2816e8be-6d14-43e4-85f2-f3a435330164")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | [assembly: AssemblyVersion("1.0.0.0")] 33 | [assembly: AssemblyFileVersion("1.0.0.0")] 34 | -------------------------------------------------------------------------------- /Samples/cs/Monitor/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Monitor")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Monitor")] 13 | [assembly: AssemblyCopyright("Copyright © 2006")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("03e21b1e-3ad5-42a2-a522-dba86ca04e2b")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | [assembly: AssemblyVersion("1.0.0.0")] 33 | [assembly: AssemblyFileVersion("1.0.0.0")] 34 | -------------------------------------------------------------------------------- /Samples/cs/ClientWin/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("ClientWin")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("ClientWin")] 13 | [assembly: AssemblyCopyright("Copyright © 2005")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("734ff509-cc61-44b1-baa5-2b4d69a40bf0")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | [assembly: AssemblyVersion("1.0.0.0")] 33 | [assembly: AssemblyFileVersion("1.0.0.0")] 34 | -------------------------------------------------------------------------------- /Source/Backup/NDde.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 9.00 3 | # Visual Studio 2005 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NDde", "NDde\NDde.csproj", "{D77772F9-3D3D-40BA-B95F-05C45878078F}" 5 | EndProject 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NDde.Test", "NDde.Test\NDde.Test.csproj", "{D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {D77772F9-3D3D-40BA-B95F-05C45878078F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {D77772F9-3D3D-40BA-B95F-05C45878078F}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {D77772F9-3D3D-40BA-B95F-05C45878078F}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {D77772F9-3D3D-40BA-B95F-05C45878078F}.Release|Any CPU.Build.0 = Release|Any CPU 18 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 19 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}.Debug|Any CPU.Build.0 = Debug|Any CPU 20 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}.Release|Any CPU.ActiveCfg = Release|Any CPU 21 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}.Release|Any CPU.Build.0 = Release|Any CPU 22 | EndGlobalSection 23 | GlobalSection(SolutionProperties) = preSolution 24 | HideSolutionNode = FALSE 25 | EndGlobalSection 26 | EndGlobal 27 | -------------------------------------------------------------------------------- /Source/NDde.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 14 4 | VisualStudioVersion = 14.0.25420.1 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NDde", "NDde\NDde.csproj", "{D77772F9-3D3D-40BA-B95F-05C45878078F}" 7 | EndProject 8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NDde.Test", "NDde.Test\NDde.Test.csproj", "{D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}" 9 | EndProject 10 | Global 11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 12 | Debug|Any CPU = Debug|Any CPU 13 | Release|Any CPU = Release|Any CPU 14 | EndGlobalSection 15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 16 | {D77772F9-3D3D-40BA-B95F-05C45878078F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 17 | {D77772F9-3D3D-40BA-B95F-05C45878078F}.Debug|Any CPU.Build.0 = Debug|Any CPU 18 | {D77772F9-3D3D-40BA-B95F-05C45878078F}.Release|Any CPU.ActiveCfg = Release|Any CPU 19 | {D77772F9-3D3D-40BA-B95F-05C45878078F}.Release|Any CPU.Build.0 = Release|Any CPU 20 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 21 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}.Debug|Any CPU.Build.0 = Debug|Any CPU 22 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}.Release|Any CPU.ActiveCfg = Release|Any CPU 23 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00}.Release|Any CPU.Build.0 = Release|Any CPU 24 | EndGlobalSection 25 | GlobalSection(SolutionProperties) = preSolution 26 | HideSolutionNode = FALSE 27 | EndGlobalSection 28 | EndGlobal 29 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/MainForm.vb: -------------------------------------------------------------------------------- 1 | Imports System.Text 2 | Imports NDde.Client 3 | 4 | Public Class MainForm 5 | Private WithEvents client As New DdeClient("myapp", "mytopic", Me) 6 | 7 | Private Sub MainForm_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 8 | Try 9 | ' Connect to the server. It must be running or an exception will be thrown. 10 | client.Connect() 11 | 12 | ' Advise Loop 13 | client.StartAdvise("myitem", 1, True, 60000) 14 | Catch ex As Exception 15 | displayTextBox.Text = ex.Message 16 | End Try 17 | End Sub 18 | 19 | Private Sub MainForm_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize 20 | displayTextBox.Left = Me.DisplayRectangle.Left 21 | displayTextBox.Width = Me.DisplayRectangle.Width 22 | displayTextBox.Top = Me.DisplayRectangle.Top 23 | displayTextBox.Height = Me.DisplayRectangle.Height 24 | End Sub 25 | 26 | Private Sub client_Advise(ByVal sender As Object, ByVal e As NDde.Client.DdeAdviseEventArgs) Handles client.Advise 27 | displayTextBox.Text = "OnAdvise: " + e.Text 28 | End Sub 29 | 30 | Private Sub client_Disconnected(ByVal sender As Object, ByVal e As NDde.Client.DdeDisconnectedEventArgs) Handles client.Disconnected 31 | displayTextBox.Text = _ 32 | "OnDisconnected: " + _ 33 | "IsServerInitiated=" + e.IsServerInitiated.ToString() + " " + _ 34 | "IsDisposed=" + e.IsDisposed.ToString() 35 | End Sub 36 | End Class 37 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/My Project/Application.Designer.vb: -------------------------------------------------------------------------------- 1 | '------------------------------------------------------------------------------ 2 | ' 3 | ' This code was generated by a tool. 4 | ' Runtime Version:2.0.50727.42 5 | ' 6 | ' Changes to this file may cause incorrect behavior and will be lost if 7 | ' the code is regenerated. 8 | ' 9 | '------------------------------------------------------------------------------ 10 | 11 | Option Strict On 12 | Option Explicit On 13 | 14 | 15 | Namespace My 16 | 17 | 'NOTE: This file is auto-generated; do not modify it directly. To make changes, 18 | ' or if you encounter build errors in this file, go to the Project Designer 19 | ' (go to Project Properties or double-click the My Project node in 20 | ' Solution Explorer), and make changes on the Application tab. 21 | ' 22 | Partial Friend Class MyApplication 23 | 24 | _ 25 | Public Sub New() 26 | MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows) 27 | Me.IsSingleInstance = false 28 | Me.EnableVisualStyles = true 29 | Me.SaveMySettingsOnExit = true 30 | Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses 31 | End Sub 32 | 33 | _ 34 | Protected Overrides Sub OnCreateMainForm() 35 | Me.MainForm = Global.ClientWin.MainForm 36 | End Sub 37 | End Class 38 | End Namespace 39 | -------------------------------------------------------------------------------- /Samples/cs/Monitor/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Text; 4 | using NDde; 5 | using NDde.Advanced.Monitor; 6 | 7 | namespace Monitor 8 | { 9 | class Program 10 | { 11 | static void Main(string[] args) 12 | { 13 | using (DdeMonitor monitor = new DdeMonitor()) 14 | { 15 | monitor.Start(DdeMonitorFlags.Link | DdeMonitorFlags.Callback | DdeMonitorFlags.Conversation | DdeMonitorFlags.Message); 16 | monitor.LinkActivity += DdeMonitor_LinkActivity; 17 | monitor.CallbackActivity += DdeMonitor_CallbackActivity; 18 | monitor.ConversationActivity += DdeMonitor_ConversationActivity; 19 | monitor.MessageActivity += DdeMonitor_MessageActivity; 20 | Console.WriteLine("Press ENTER to quit..."); 21 | Console.ReadLine(); 22 | } 23 | } 24 | 25 | static void DdeMonitor_MessageActivity(object sender, DdeMessageActivityEventArgs e) 26 | { 27 | Console.WriteLine("MessageActivity: " + e.ToString()); 28 | } 29 | 30 | static void DdeMonitor_CallbackActivity(object sender, DdeCallbackActivityEventArgs e) 31 | { 32 | Console.WriteLine("CallbackActivity: " + e.ToString()); 33 | } 34 | 35 | static void DdeMonitor_LinkActivity(object sender, DdeLinkActivityEventArgs e) 36 | { 37 | Console.WriteLine("LinkActivity: " + e.ToString()); 38 | } 39 | 40 | static void DdeMonitor_ConversationActivity(object sender, DdeConversationActivityEventArgs e) 41 | { 42 | Console.WriteLine("ConversationActivity: " + e.ToString()); 43 | } 44 | 45 | } // class 46 | 47 | } // namespace 48 | -------------------------------------------------------------------------------- /Samples/vb/Samples.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 9.00 3 | # Visual Studio 2005 4 | Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Client", "Client\Client.vbproj", "{2482E71B-A607-4D2B-8CB4-EBD816E07462}" 5 | EndProject 6 | Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ClientWin", "ClientWin\ClientWin.vbproj", "{7E0C3AE2-E2C9-4C6C-913F-0655E9F23A83}" 7 | EndProject 8 | Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Server", "Server\Server.vbproj", "{8EAF0758-4C3C-4393-A3C6-8EA3D1C657E5}" 9 | EndProject 10 | Global 11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 12 | Debug|Any CPU = Debug|Any CPU 13 | Release|Any CPU = Release|Any CPU 14 | EndGlobalSection 15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 16 | {2482E71B-A607-4D2B-8CB4-EBD816E07462}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 17 | {2482E71B-A607-4D2B-8CB4-EBD816E07462}.Debug|Any CPU.Build.0 = Debug|Any CPU 18 | {2482E71B-A607-4D2B-8CB4-EBD816E07462}.Release|Any CPU.ActiveCfg = Release|Any CPU 19 | {2482E71B-A607-4D2B-8CB4-EBD816E07462}.Release|Any CPU.Build.0 = Release|Any CPU 20 | {7E0C3AE2-E2C9-4C6C-913F-0655E9F23A83}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 21 | {7E0C3AE2-E2C9-4C6C-913F-0655E9F23A83}.Debug|Any CPU.Build.0 = Debug|Any CPU 22 | {7E0C3AE2-E2C9-4C6C-913F-0655E9F23A83}.Release|Any CPU.ActiveCfg = Release|Any CPU 23 | {7E0C3AE2-E2C9-4C6C-913F-0655E9F23A83}.Release|Any CPU.Build.0 = Release|Any CPU 24 | {8EAF0758-4C3C-4393-A3C6-8EA3D1C657E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 25 | {8EAF0758-4C3C-4393-A3C6-8EA3D1C657E5}.Debug|Any CPU.Build.0 = Debug|Any CPU 26 | {8EAF0758-4C3C-4393-A3C6-8EA3D1C657E5}.Release|Any CPU.ActiveCfg = Release|Any CPU 27 | {8EAF0758-4C3C-4393-A3C6-8EA3D1C657E5}.Release|Any CPU.Build.0 = Release|Any CPU 28 | EndGlobalSection 29 | GlobalSection(SolutionProperties) = preSolution 30 | HideSolutionNode = FALSE 31 | EndGlobalSection 32 | EndGlobal 33 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/MainForm.Designer.vb: -------------------------------------------------------------------------------- 1 | _ 2 | Partial Class MainForm 3 | Inherits System.Windows.Forms.Form 4 | 5 | 'Form overrides dispose to clean up the component list. 6 | _ 7 | Protected Overrides Sub Dispose(ByVal disposing As Boolean) 8 | If disposing AndAlso components IsNot Nothing Then 9 | components.Dispose() 10 | End If 11 | MyBase.Dispose(disposing) 12 | End Sub 13 | 14 | 'Required by the Windows Form Designer 15 | Private components As System.ComponentModel.IContainer 16 | 17 | 'NOTE: The following procedure is required by the Windows Form Designer 18 | 'It can be modified using the Windows Form Designer. 19 | 'Do not modify it using the code editor. 20 | _ 21 | Private Sub InitializeComponent() 22 | Me.displayTextBox = New System.Windows.Forms.TextBox 23 | Me.SuspendLayout() 24 | ' 25 | 'displayTextBox 26 | ' 27 | Me.displayTextBox.Location = New System.Drawing.Point(11, 11) 28 | Me.displayTextBox.Name = "displayTextBox" 29 | Me.displayTextBox.ReadOnly = True 30 | Me.displayTextBox.Size = New System.Drawing.Size(270, 20) 31 | Me.displayTextBox.TabIndex = 0 32 | ' 33 | 'MainForm 34 | ' 35 | Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) 36 | Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font 37 | Me.ClientSize = New System.Drawing.Size(292, 41) 38 | Me.Controls.Add(Me.displayTextBox) 39 | Me.Name = "MainForm" 40 | Me.Padding = New System.Windows.Forms.Padding(8) 41 | Me.Text = "DDE Sample Application" 42 | Me.ResumeLayout(False) 43 | Me.PerformLayout() 44 | 45 | End Sub 46 | Friend WithEvents displayTextBox As System.Windows.Forms.TextBox 47 | 48 | End Class 49 | -------------------------------------------------------------------------------- /Samples/cs/ClientWin/MainForm.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Data; 5 | using System.Drawing; 6 | using System.Text; 7 | using System.Windows.Forms; 8 | using NDde.Client; 9 | 10 | namespace ClientWin 11 | { 12 | public partial class MainForm : Form 13 | { 14 | private DdeClient client; 15 | 16 | public MainForm() 17 | { 18 | InitializeComponent(); 19 | 20 | client = new DdeClient("myapp", "myservice", this); 21 | client.Advise += client_Advise; 22 | client.Disconnected += client_Disconnected; 23 | } 24 | 25 | private void MainForm_Load(object sender, EventArgs e) 26 | { 27 | try 28 | { 29 | // Connect to the server. It must be running or an exception will be thrown. 30 | client.Connect(); 31 | 32 | // Advise Loop 33 | client.StartAdvise("myitem", 1, true, 60000); 34 | } 35 | catch (Exception ex) 36 | { 37 | displayTextBox.Text = "MainForm_Load: " + ex.Message; 38 | } 39 | } 40 | 41 | private void MainForm_Resize(object sender, EventArgs e) 42 | { 43 | displayTextBox.Left = this.DisplayRectangle.Left; 44 | displayTextBox.Width = this.DisplayRectangle.Width; 45 | displayTextBox.Top = this.DisplayRectangle.Top; 46 | displayTextBox.Height = this.DisplayRectangle.Height; 47 | } 48 | 49 | private void client_Advise(object sender, DdeAdviseEventArgs args) 50 | { 51 | displayTextBox.Text = "OnAdvise: " + args.Text; 52 | } 53 | 54 | private void client_Disconnected(object sender, DdeDisconnectedEventArgs args) 55 | { 56 | displayTextBox.Text = 57 | "OnDisconnected: " + 58 | "IsServerInitiated=" + args.IsServerInitiated.ToString() + " " + 59 | "IsDisposed=" + args.IsDisposed.ToString(); 60 | } 61 | 62 | } // class 63 | 64 | } // namespace -------------------------------------------------------------------------------- /Samples/cs/Client/Client.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | Debug 4 | AnyCPU 5 | 8.0.50727 6 | 2.0 7 | {04E46B25-B029-488B-BD1B-9E4AB12E72E3} 8 | Exe 9 | Properties 10 | Client 11 | Client 12 | 13 | 14 | true 15 | full 16 | false 17 | bin\Debug\ 18 | DEBUG;TRACE 19 | prompt 20 | 4 21 | 22 | 23 | pdbonly 24 | true 25 | bin\Release\ 26 | TRACE 27 | prompt 28 | 4 29 | 30 | 31 | 32 | False 33 | ..\..\..\Binary\NDde.dll 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 51 | -------------------------------------------------------------------------------- /Samples/cs/Server/Server.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | Debug 4 | AnyCPU 5 | 8.0.50727 6 | 2.0 7 | {68784D57-3C16-40AC-B483-21202554E114} 8 | Exe 9 | Properties 10 | Server 11 | Server 12 | 13 | 14 | true 15 | full 16 | false 17 | bin\Debug\ 18 | DEBUG;TRACE 19 | prompt 20 | 4 21 | 22 | 23 | pdbonly 24 | true 25 | bin\Release\ 26 | TRACE 27 | prompt 28 | 4 29 | 30 | 31 | 32 | False 33 | ..\..\..\Binary\NDde.dll 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 51 | -------------------------------------------------------------------------------- /Samples/cs/Monitor/Monitor.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | Debug 4 | AnyCPU 5 | 8.0.50727 6 | 2.0 7 | {6AEEBA41-2B34-48F8-AE1C-DD8D19E67B6C} 8 | Exe 9 | Properties 10 | Monitor 11 | Monitor 12 | 13 | 14 | true 15 | full 16 | false 17 | bin\Debug\ 18 | DEBUG;TRACE 19 | prompt 20 | 4 21 | 22 | 23 | pdbonly 24 | true 25 | bin\Release\ 26 | TRACE 27 | prompt 28 | 4 29 | 30 | 31 | 32 | False 33 | ..\..\..\Binary\NDde.dll 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 51 | -------------------------------------------------------------------------------- /Source/NDde/obj/Release/NDde.csproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- 1 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\bin\Release\NDde.xml 2 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\bin\Release\NDde.dll 3 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\bin\Release\NDde.pdb 4 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\obj\Release\NDde.Properties.Resources.resources 5 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\obj\Release\NDde.csproj.GenerateResource.Cache 6 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\obj\Release\NDde.dll 7 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\obj\Release\NDde.pdb 8 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\obj\Release\NDde.csprojResolveAssemblyReference.cache 9 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\bin\Release\NDde.dll.CodeAnalysisLog.xml 10 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\bin\Release\NDde.dll.lastcodeanalysissucceeded 11 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\bin\Release\ASSIST_Extensions.dll 12 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\bin\Release\ASSIST_Extensions.pdb 13 | C:\Users\abilly\Documents\Visual Studio 2015\Projects\NDde\Source\NDde\bin\Release\ASSIST_Extensions.xml 14 | H:\Projects\C#\NDDERepo\Source\NDde\bin\Release\NDde.xml 15 | H:\Projects\C#\NDDERepo\Source\NDde\bin\Release\NDde.dll 16 | H:\Projects\C#\NDDERepo\Source\NDde\bin\Release\NDde.pdb 17 | H:\Projects\C#\NDDERepo\Source\NDde\bin\Release\NDde.dll.CodeAnalysisLog.xml 18 | H:\Projects\C#\NDDERepo\Source\NDde\bin\Release\NDde.dll.lastcodeanalysissucceeded 19 | H:\Projects\C#\NDDERepo\Source\NDde\bin\Release\ASSIST_Extensions.dll 20 | H:\Projects\C#\NDDERepo\Source\NDde\bin\Release\ASSIST_Extensions.pdb 21 | H:\Projects\C#\NDDERepo\Source\NDde\bin\Release\ASSIST_Extensions.xml 22 | H:\Projects\C#\NDDERepo\Source\NDde\obj\Release\NDde.Properties.Resources.resources 23 | H:\Projects\C#\NDDERepo\Source\NDde\obj\Release\NDde.csproj.GenerateResource.Cache 24 | H:\Projects\C#\NDDERepo\Source\NDde\obj\Release\NDde.dll 25 | H:\Projects\C#\NDDERepo\Source\NDde\obj\Release\NDde.pdb 26 | H:\Projects\C#\NDDERepo\Source\NDde\obj\Release\NDde.csprojResolveAssemblyReference.cache 27 | -------------------------------------------------------------------------------- /Samples/cs/Samples.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 9.00 3 | # Visual Studio 2005 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Client", "Client\Client.csproj", "{04E46B25-B029-488B-BD1B-9E4AB12E72E3}" 5 | EndProject 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClientWin", "ClientWin\ClientWin.csproj", "{8FD4456A-9C49-46ED-9EB4-155C2D738730}" 7 | EndProject 8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Server", "Server\Server.csproj", "{68784D57-3C16-40AC-B483-21202554E114}" 9 | EndProject 10 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Monitor", "Monitor\Monitor.csproj", "{6AEEBA41-2B34-48F8-AE1C-DD8D19E67B6C}" 11 | EndProject 12 | Global 13 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 14 | Debug|Any CPU = Debug|Any CPU 15 | Release|Any CPU = Release|Any CPU 16 | EndGlobalSection 17 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 18 | {04E46B25-B029-488B-BD1B-9E4AB12E72E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 19 | {04E46B25-B029-488B-BD1B-9E4AB12E72E3}.Debug|Any CPU.Build.0 = Debug|Any CPU 20 | {04E46B25-B029-488B-BD1B-9E4AB12E72E3}.Release|Any CPU.ActiveCfg = Release|Any CPU 21 | {04E46B25-B029-488B-BD1B-9E4AB12E72E3}.Release|Any CPU.Build.0 = Release|Any CPU 22 | {8FD4456A-9C49-46ED-9EB4-155C2D738730}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 23 | {8FD4456A-9C49-46ED-9EB4-155C2D738730}.Debug|Any CPU.Build.0 = Debug|Any CPU 24 | {8FD4456A-9C49-46ED-9EB4-155C2D738730}.Release|Any CPU.ActiveCfg = Release|Any CPU 25 | {8FD4456A-9C49-46ED-9EB4-155C2D738730}.Release|Any CPU.Build.0 = Release|Any CPU 26 | {68784D57-3C16-40AC-B483-21202554E114}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 27 | {68784D57-3C16-40AC-B483-21202554E114}.Debug|Any CPU.Build.0 = Debug|Any CPU 28 | {68784D57-3C16-40AC-B483-21202554E114}.Release|Any CPU.ActiveCfg = Release|Any CPU 29 | {68784D57-3C16-40AC-B483-21202554E114}.Release|Any CPU.Build.0 = Release|Any CPU 30 | {6AEEBA41-2B34-48F8-AE1C-DD8D19E67B6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 31 | {6AEEBA41-2B34-48F8-AE1C-DD8D19E67B6C}.Debug|Any CPU.Build.0 = Debug|Any CPU 32 | {6AEEBA41-2B34-48F8-AE1C-DD8D19E67B6C}.Release|Any CPU.ActiveCfg = Release|Any CPU 33 | {6AEEBA41-2B34-48F8-AE1C-DD8D19E67B6C}.Release|Any CPU.Build.0 = Release|Any CPU 34 | EndGlobalSection 35 | GlobalSection(SolutionProperties) = preSolution 36 | HideSolutionNode = FALSE 37 | EndGlobalSection 38 | EndGlobal 39 | -------------------------------------------------------------------------------- /Samples/cs/ClientWin/MainForm.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace ClientWin 2 | { 3 | partial class MainForm 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | this.displayTextBox = new System.Windows.Forms.TextBox(); 32 | this.SuspendLayout(); 33 | // 34 | // displayTextBox 35 | // 36 | this.displayTextBox.Location = new System.Drawing.Point(11, 11); 37 | this.displayTextBox.Name = "displayTextBox"; 38 | this.displayTextBox.ReadOnly = true; 39 | this.displayTextBox.Size = new System.Drawing.Size(270, 20); 40 | this.displayTextBox.TabIndex = 0; 41 | // 42 | // MainForm 43 | // 44 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 45 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 46 | this.ClientSize = new System.Drawing.Size(292, 41); 47 | this.Controls.Add(this.displayTextBox); 48 | this.Name = "MainForm"; 49 | this.Padding = new System.Windows.Forms.Padding(8); 50 | this.Text = "DDE Sample Application"; 51 | this.Resize += new System.EventHandler(this.MainForm_Resize); 52 | this.Load += new System.EventHandler(this.MainForm_Load); 53 | this.ResumeLayout(false); 54 | this.PerformLayout(); 55 | 56 | } 57 | 58 | #endregion 59 | 60 | private System.Windows.Forms.TextBox displayTextBox; 61 | 62 | } 63 | } 64 | 65 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # Set default behavior to automatically normalize line endings. 3 | ############################################################################### 4 | * text=auto 5 | 6 | ############################################################################### 7 | # Set default behavior for command prompt diff. 8 | # 9 | # This is need for earlier builds of msysgit that does not have it on by 10 | # default for csharp files. 11 | # Note: This is only used by command line 12 | ############################################################################### 13 | #*.cs diff=csharp 14 | 15 | ############################################################################### 16 | # Set the merge driver for project and solution files 17 | # 18 | # Merging from the command prompt will add diff markers to the files if there 19 | # are conflicts (Merging from VS is not affected by the settings below, in VS 20 | # the diff markers are never inserted). Diff markers may cause the following 21 | # file extensions to fail to load in VS. An alternative would be to treat 22 | # these files as binary and thus will always conflict and require user 23 | # intervention with every merge. To do so, just uncomment the entries below 24 | ############################################################################### 25 | #*.sln merge=binary 26 | #*.csproj merge=binary 27 | #*.vbproj merge=binary 28 | #*.vcxproj merge=binary 29 | #*.vcproj merge=binary 30 | #*.dbproj merge=binary 31 | #*.fsproj merge=binary 32 | #*.lsproj merge=binary 33 | #*.wixproj merge=binary 34 | #*.modelproj merge=binary 35 | #*.sqlproj merge=binary 36 | #*.wwaproj merge=binary 37 | 38 | ############################################################################### 39 | # behavior for image files 40 | # 41 | # image files are treated as binary by default. 42 | ############################################################################### 43 | #*.jpg binary 44 | #*.png binary 45 | #*.gif binary 46 | 47 | ############################################################################### 48 | # diff behavior for common document formats 49 | # 50 | # Convert binary document formats to text before diffing them. This feature 51 | # is only available from the command line. Turn it on by uncommenting the 52 | # entries below. 53 | ############################################################################### 54 | #*.doc diff=astextplain 55 | #*.DOC diff=astextplain 56 | #*.docx diff=astextplain 57 | #*.DOCX diff=astextplain 58 | #*.dot diff=astextplain 59 | #*.DOT diff=astextplain 60 | #*.pdf diff=astextplain 61 | #*.PDF diff=astextplain 62 | #*.rtf diff=astextplain 63 | #*.RTF diff=astextplain 64 | -------------------------------------------------------------------------------- /Documentation/NDde.ndoc: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /Source/Backup/NDde.Test/NDde.Test.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | Debug 4 | AnyCPU 5 | 8.0.50727 6 | 2.0 7 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00} 8 | Exe 9 | Properties 10 | NDde.Test 11 | NDde.Test 12 | 13 | 14 | true 15 | full 16 | false 17 | bin\Debug\ 18 | DEBUG;TRACE 19 | prompt 20 | 4 21 | 22 | 23 | pdbonly 24 | true 25 | bin\Release\ 26 | TRACE 27 | prompt 28 | 4 29 | 30 | 31 | 32 | False 33 | ..\Reference\nunit.framework.dll 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | {D77772F9-3D3D-40BA-B95F-05C45878078F} 53 | NDde 54 | 55 | 56 | 57 | 64 | -------------------------------------------------------------------------------- /Samples/vb/Server/My Project/Resources.Designer.vb: -------------------------------------------------------------------------------- 1 | '------------------------------------------------------------------------------ 2 | ' 3 | ' This code was generated by a tool. 4 | ' Runtime Version:2.0.50727.42 5 | ' 6 | ' Changes to this file may cause incorrect behavior and will be lost if 7 | ' the code is regenerated. 8 | ' 9 | '------------------------------------------------------------------------------ 10 | 11 | Option Strict On 12 | Option Explicit On 13 | 14 | Imports System 15 | 16 | Namespace My.Resources 17 | 18 | 'This class was auto-generated by the StronglyTypedResourceBuilder 19 | 'class via a tool like ResGen or Visual Studio. 20 | 'To add or remove a member, edit your .ResX file then rerun ResGen 21 | 'with the /str option, or rebuild your VS project. 22 | ''' 23 | ''' A strongly-typed resource class, for looking up localized strings, etc. 24 | ''' 25 | _ 29 | Friend Module Resources 30 | 31 | Private resourceMan As Global.System.Resources.ResourceManager 32 | 33 | Private resourceCulture As Global.System.Globalization.CultureInfo 34 | 35 | ''' 36 | ''' Returns the cached ResourceManager instance used by this class. 37 | ''' 38 | _ 39 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager 40 | Get 41 | If Object.ReferenceEquals(resourceMan, Nothing) Then 42 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("Server.Resources", GetType(Resources).Assembly) 43 | resourceMan = temp 44 | End If 45 | Return resourceMan 46 | End Get 47 | End Property 48 | 49 | ''' 50 | ''' Overrides the current thread's CurrentUICulture property for all 51 | ''' resource lookups using this strongly typed resource class. 52 | ''' 53 | _ 54 | Friend Property Culture() As Global.System.Globalization.CultureInfo 55 | Get 56 | Return resourceCulture 57 | End Get 58 | Set 59 | resourceCulture = value 60 | End Set 61 | End Property 62 | End Module 63 | End Namespace 64 | -------------------------------------------------------------------------------- /Samples/vb/Client/My Project/Resources.Designer.vb: -------------------------------------------------------------------------------- 1 | '------------------------------------------------------------------------------ 2 | ' 3 | ' This code was generated by a tool. 4 | ' Runtime Version:2.0.50727.42 5 | ' 6 | ' Changes to this file may cause incorrect behavior and will be lost if 7 | ' the code is regenerated. 8 | ' 9 | '------------------------------------------------------------------------------ 10 | 11 | Option Strict On 12 | Option Explicit On 13 | 14 | 15 | Namespace My.Resources 16 | 17 | 'This class was auto-generated by the StronglyTypedResourceBuilder 18 | 'class via a tool like ResGen or Visual Studio. 19 | 'To add or remove a member, edit your .ResX file then rerun ResGen 20 | 'with the /str option, or rebuild your VS project. 21 | ' 22 | ' A strongly-typed resource class, for looking up localized strings, etc. 23 | ' 24 | _ 28 | Friend Module Resources 29 | 30 | Private resourceMan As Global.System.Resources.ResourceManager 31 | 32 | Private resourceCulture As Global.System.Globalization.CultureInfo 33 | 34 | ' 35 | ' Returns the cached ResourceManager instance used by this class. 36 | ' 37 | _ 38 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager 39 | Get 40 | If Object.ReferenceEquals(resourceMan, Nothing) Then 41 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("Client.Resources", GetType(Resources).Assembly) 42 | resourceMan = temp 43 | End If 44 | Return resourceMan 45 | End Get 46 | End Property 47 | 48 | ' 49 | ' Overrides the current thread's CurrentUICulture property for all 50 | ' resource lookups using this strongly typed resource class. 51 | ' 52 | _ 53 | Friend Property Culture() As Global.System.Globalization.CultureInfo 54 | Get 55 | Return resourceCulture 56 | End Get 57 | Set(ByVal value As Global.System.Globalization.CultureInfo) 58 | resourceCulture = value 59 | End Set 60 | End Property 61 | End Module 62 | End Namespace 63 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/My Project/Resources.Designer.vb: -------------------------------------------------------------------------------- 1 | '------------------------------------------------------------------------------ 2 | ' 3 | ' This code was generated by a tool. 4 | ' Runtime Version:2.0.50727.42 5 | ' 6 | ' Changes to this file may cause incorrect behavior and will be lost if 7 | ' the code is regenerated. 8 | ' 9 | '------------------------------------------------------------------------------ 10 | 11 | Option Strict On 12 | Option Explicit On 13 | 14 | 15 | Namespace My.Resources 16 | 17 | 'This class was auto-generated by the StronglyTypedResourceBuilder 18 | 'class via a tool like ResGen or Visual Studio. 19 | 'To add or remove a member, edit your .ResX file then rerun ResGen 20 | 'with the /str option, or rebuild your VS project. 21 | ' 22 | ' A strongly-typed resource class, for looking up localized strings, etc. 23 | ' 24 | _ 28 | Friend Module Resources 29 | 30 | Private resourceMan As Global.System.Resources.ResourceManager 31 | 32 | Private resourceCulture As Global.System.Globalization.CultureInfo 33 | 34 | ' 35 | ' Returns the cached ResourceManager instance used by this class. 36 | ' 37 | _ 38 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager 39 | Get 40 | If Object.ReferenceEquals(resourceMan, Nothing) Then 41 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ClientWin.Resources", GetType(Resources).Assembly) 42 | resourceMan = temp 43 | End If 44 | Return resourceMan 45 | End Get 46 | End Property 47 | 48 | ' 49 | ' Overrides the current thread's CurrentUICulture property for all 50 | ' resource lookups using this strongly typed resource class. 51 | ' 52 | _ 53 | Friend Property Culture() As Global.System.Globalization.CultureInfo 54 | Get 55 | Return resourceCulture 56 | End Get 57 | Set(ByVal value As Global.System.Globalization.CultureInfo) 58 | resourceCulture = value 59 | End Set 60 | End Property 61 | End Module 62 | End Namespace 63 | -------------------------------------------------------------------------------- /Samples/cs/ClientWin/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:2.0.50727.42 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace ClientWin.Properties 12 | { 13 | 14 | 15 | /// 16 | /// A strongly-typed resource class, for looking up localized strings, etc. 17 | /// 18 | // This class was auto-generated by the StronglyTypedResourceBuilder 19 | // class via a tool like ResGen or Visual Studio. 20 | // To add or remove a member, edit your .ResX file then rerun ResGen 21 | // with the /str option, or rebuild your VS project. 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources 26 | { 27 | 28 | private static global::System.Resources.ResourceManager resourceMan; 29 | 30 | private static global::System.Globalization.CultureInfo resourceCulture; 31 | 32 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 33 | internal Resources() 34 | { 35 | } 36 | 37 | /// 38 | /// Returns the cached ResourceManager instance used by this class. 39 | /// 40 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 41 | internal static global::System.Resources.ResourceManager ResourceManager 42 | { 43 | get 44 | { 45 | if ((resourceMan == null)) 46 | { 47 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ClientWin.Properties.Resources", typeof(Resources).Assembly); 48 | resourceMan = temp; 49 | } 50 | return resourceMan; 51 | } 52 | } 53 | 54 | /// 55 | /// Overrides the current thread's CurrentUICulture property for all 56 | /// resource lookups using this strongly typed resource class. 57 | /// 58 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 59 | internal static global::System.Globalization.CultureInfo Culture 60 | { 61 | get 62 | { 63 | return resourceCulture; 64 | } 65 | set 66 | { 67 | resourceCulture = value; 68 | } 69 | } 70 | } 71 | } 72 | -------------------------------------------------------------------------------- /Samples/vb/Server/My Project/Settings.Designer.vb: -------------------------------------------------------------------------------- 1 | '------------------------------------------------------------------------------ 2 | ' 3 | ' This code was generated by a tool. 4 | ' Runtime Version:2.0.50727.42 5 | ' 6 | ' Changes to this file may cause incorrect behavior and will be lost if 7 | ' the code is regenerated. 8 | ' 9 | '------------------------------------------------------------------------------ 10 | 11 | Option Strict On 12 | Option Explicit On 13 | 14 | 15 | Namespace My 16 | 17 | _ 20 | Partial Friend NotInheritable Class MySettings 21 | Inherits Global.System.Configuration.ApplicationSettingsBase 22 | 23 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings),MySettings) 24 | 25 | #Region "My.Settings Auto-Save Functionality" 26 | #If _MyType = "WindowsForms" Then 27 | Private Shared addedHandler As Boolean 28 | 29 | Private Shared addedHandlerLockObject As New Object 30 | 31 | _ 32 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) 33 | If My.Application.SaveMySettingsOnExit Then 34 | My.Settings.Save() 35 | End If 36 | End Sub 37 | #End If 38 | #End Region 39 | 40 | Public Shared ReadOnly Property [Default]() As MySettings 41 | Get 42 | 43 | #If _MyType = "WindowsForms" Then 44 | If Not addedHandler Then 45 | SyncLock addedHandlerLockObject 46 | If Not addedHandler Then 47 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings 48 | addedHandler = True 49 | End If 50 | End SyncLock 51 | End If 52 | #End If 53 | Return defaultInstance 54 | End Get 55 | End Property 56 | End Class 57 | End Namespace 58 | 59 | Namespace My 60 | 61 | _ 64 | Friend Module MySettingsProperty 65 | 66 | _ 67 | Friend ReadOnly Property Settings() As Global.Server.My.MySettings 68 | Get 69 | Return Global.Server.My.MySettings.Default 70 | End Get 71 | End Property 72 | End Module 73 | End Namespace 74 | -------------------------------------------------------------------------------- /Samples/vb/Client/My Project/Settings.Designer.vb: -------------------------------------------------------------------------------- 1 | '------------------------------------------------------------------------------ 2 | ' 3 | ' This code was generated by a tool. 4 | ' Runtime Version:2.0.50727.42 5 | ' 6 | ' Changes to this file may cause incorrect behavior and will be lost if 7 | ' the code is regenerated. 8 | ' 9 | '------------------------------------------------------------------------------ 10 | 11 | Option Strict On 12 | Option Explicit On 13 | 14 | 15 | Namespace My 16 | 17 | _ 20 | Partial Friend NotInheritable Class MySettings 21 | Inherits Global.System.Configuration.ApplicationSettingsBase 22 | 23 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings) 24 | 25 | #Region "My.Settings Auto-Save Functionality" 26 | #If _MyType = "WindowsForms" Then 27 | Private Shared addedHandler As Boolean 28 | 29 | Private Shared addedHandlerLockObject As New Object 30 | 31 | _ 32 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) 33 | If My.Application.SaveMySettingsOnExit Then 34 | My.Settings.Save() 35 | End If 36 | End Sub 37 | #End If 38 | #End Region 39 | 40 | Public Shared ReadOnly Property [Default]() As MySettings 41 | Get 42 | 43 | #If _MyType = "WindowsForms" Then 44 | If Not addedHandler Then 45 | SyncLock addedHandlerLockObject 46 | If Not addedHandler Then 47 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings 48 | addedHandler = True 49 | End If 50 | End SyncLock 51 | End If 52 | #End If 53 | Return defaultInstance 54 | End Get 55 | End Property 56 | End Class 57 | End Namespace 58 | 59 | Namespace My 60 | 61 | _ 64 | Friend Module MySettingsProperty 65 | 66 | _ 67 | Friend ReadOnly Property Settings() As Global.Client.My.MySettings 68 | Get 69 | Return Global.Client.My.MySettings.Default 70 | End Get 71 | End Property 72 | End Module 73 | End Namespace 74 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/My Project/Settings.Designer.vb: -------------------------------------------------------------------------------- 1 | '------------------------------------------------------------------------------ 2 | ' 3 | ' This code was generated by a tool. 4 | ' Runtime Version:2.0.50727.42 5 | ' 6 | ' Changes to this file may cause incorrect behavior and will be lost if 7 | ' the code is regenerated. 8 | ' 9 | '------------------------------------------------------------------------------ 10 | 11 | Option Strict On 12 | Option Explicit On 13 | 14 | 15 | Namespace My 16 | 17 | _ 20 | Partial Friend NotInheritable Class MySettings 21 | Inherits Global.System.Configuration.ApplicationSettingsBase 22 | 23 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings) 24 | 25 | #Region "My.Settings Auto-Save Functionality" 26 | #If _MyType = "WindowsForms" Then 27 | Private Shared addedHandler As Boolean 28 | 29 | Private Shared addedHandlerLockObject As New Object 30 | 31 | _ 32 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) 33 | If My.Application.SaveMySettingsOnExit Then 34 | My.Settings.Save() 35 | End If 36 | End Sub 37 | #End If 38 | #End Region 39 | 40 | Public Shared ReadOnly Property [Default]() As MySettings 41 | Get 42 | 43 | #If _MyType = "WindowsForms" Then 44 | If Not addedHandler Then 45 | SyncLock addedHandlerLockObject 46 | If Not addedHandler Then 47 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings 48 | addedHandler = True 49 | End If 50 | End SyncLock 51 | End If 52 | #End If 53 | Return defaultInstance 54 | End Get 55 | End Property 56 | End Class 57 | End Namespace 58 | 59 | Namespace My 60 | 61 | _ 64 | Friend Module MySettingsProperty 65 | 66 | _ 67 | Friend ReadOnly Property Settings() As Global.ClientWin.My.MySettings 68 | Get 69 | Return Global.ClientWin.My.MySettings.Default 70 | End Get 71 | End Property 72 | End Module 73 | End Namespace 74 | -------------------------------------------------------------------------------- /Source/NDde.Test/NDde.Test.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.50727 7 | 2.0 8 | {D6FDDD04-3BB0-4AE4-B69A-CE8C1238FB00} 9 | Exe 10 | Properties 11 | NDde.Test 12 | NDde.Test 13 | v4.5.2 14 | 15 | 16 | 17 | 18 | 2.0 19 | 20 | 21 | 22 | true 23 | full 24 | false 25 | bin\Debug\ 26 | DEBUG;TRACE 27 | prompt 28 | 4 29 | false 30 | 31 | 32 | pdbonly 33 | true 34 | bin\Release\ 35 | TRACE 36 | prompt 37 | 4 38 | false 39 | 40 | 41 | 42 | False 43 | ..\Reference\nunit.framework.dll 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | {D77772F9-3D3D-40BA-B95F-05C45878078F} 63 | NDde 64 | 65 | 66 | 67 | 68 | 69 | 70 | 77 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # NDde 2 | Migrated from https://ndde.codeplex.com/ and update to .Net 4.5.2. Now works with 64bit machines/Windows. 3 | Added ability to write to/read from the event log. 4 | 5 | 6 | 7 | # Original Project Description - Credit to https://www.codeplex.com/site/users/view/briangideon 8 | Project Description 9 | This library provides a convenient and easy way to integrate .NET applications with legacy applications that use Dynamic Data Exchange (DDE). DDE is an older interprocess communication protocol that relies heavily on passing windows messages back and forth between applications. Other, more modern and robust, techniques for interprocess communication are available and should be used when available. This library is only intended to be used when no other alternatives exist. 10 | 11 | This project is not actively developed or maintained anymore. 12 | Last edited Sep 4, 2009 at 1:26 PM by briangideon, version 4 13 | 14 | # Custom License 15 | # Shared Source License for NDde 16 | 17 | This license governs use of the accompanying software ('Software'), and your use of the Software constitutes acceptance of this license. 18 | 19 | You may use the Software for any commercial or noncommercial purpose, including distributing derivative works. 20 | 21 | In return, we simply require that you agree: 22 | 1. Not to remove any copyright or other notices from the Software. 23 | 2. That if you distribute the Software in source code form you do so only under this license (i.e. you must include a complete copy of this license with your distribution), and if you distribute the Software solely in object form you only do so under a license that complies with this license. 24 | 3. That the Software comes "as is", with no warranties. None whatsoever. This means no express, implied or statutory warranty, including without limitation, warranties of merchantability or fitness for a particular purpose or any warranty of title or non-infringement. Also, you must pass this disclaimer on whenever you distribute the Software or derivative works. 25 | 4. That no contributor to the Software will be liable for any of those types of damages known as indirect, special, consequential, or incidental related to the Software or this license, to the maximum extent the law permits, no matter what legal theory it’s based on. Also, you must pass this limitation of liability on whenever you distribute the Software or derivative works. 26 | 5. That if you sue anyone over patents that you think may apply to the Software for a person's use of the Software, your license to the Software ends automatically. 27 | 6. That the patent rights, if any, granted in this license only apply to the Software, not to any derivative works you make. 28 | 7. That the Software is subject to U.S. export jurisdiction at the time it is licensed to you, and it may be subject to additional export or import laws in other places. You agree to comply with all such laws and regulations that may apply to the Software after delivery of the software to you. 29 | 8. That if you are an agency of the U.S. Government, (i) Software provided pursuant to a solicitation issued on or after December 1, 1995, is provided with the commercial license rights set forth in this license, and (ii) Software provided pursuant to a solicitation issued prior to December 1, 1995, is provided with “Restricted Rights” as set forth in FAR, 48 C.F.R. 52.227-14 (June 1987) or DFAR, 48 C.F.R. 252.227-7013 (Oct 1988), as applicable. 30 | 9. That your rights under this License end automatically if you breach it in any way. 31 | 10. That all rights not expressly granted to you in this license are reserved. 32 | -------------------------------------------------------------------------------- /Samples/cs/ClientWin/ClientWin.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | Debug 4 | AnyCPU 5 | 8.0.50727 6 | 2.0 7 | {8FD4456A-9C49-46ED-9EB4-155C2D738730} 8 | WinExe 9 | Properties 10 | ClientWin 11 | ClientWin 12 | 13 | 14 | true 15 | full 16 | false 17 | bin\Debug\ 18 | DEBUG;TRACE 19 | prompt 20 | 4 21 | 22 | 23 | pdbonly 24 | true 25 | bin\Release\ 26 | TRACE 27 | prompt 28 | 4 29 | 30 | 31 | 32 | False 33 | ..\..\..\Binary\NDde.dll 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | Form 45 | 46 | 47 | MainForm.cs 48 | 49 | 50 | 51 | 52 | Designer 53 | MainForm.cs 54 | 55 | 56 | ResXFileCodeGenerator 57 | Resources.Designer.cs 58 | Designer 59 | 60 | 61 | True 62 | Resources.resx 63 | 64 | 65 | SettingsSingleFileGenerator 66 | Settings.Designer.cs 67 | 68 | 69 | True 70 | Settings.settings 71 | True 72 | 73 | 74 | 75 | 82 | -------------------------------------------------------------------------------- /Samples/vb/Client/Client.vbproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.50727 7 | 2.0 8 | {2482E71B-A607-4D2B-8CB4-EBD816E07462} 9 | Exe 10 | Client.Program 11 | Client 12 | Client 13 | Console 14 | 15 | 16 | true 17 | full 18 | true 19 | true 20 | bin\Debug\ 21 | Client.xml 22 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 23 | 24 | 25 | pdbonly 26 | false 27 | true 28 | true 29 | bin\Release\ 30 | Client.xml 31 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 32 | 33 | 34 | 35 | False 36 | ..\..\..\Binary\NDde.dll 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | True 56 | Application.myapp 57 | 58 | 59 | True 60 | True 61 | Resources.resx 62 | 63 | 64 | True 65 | Settings.settings 66 | True 67 | 68 | 69 | 70 | 71 | VbMyResourcesResXFileCodeGenerator 72 | Resources.Designer.vb 73 | My.Resources 74 | Designer 75 | 76 | 77 | 78 | 79 | MyApplicationCodeGenerator 80 | Application.Designer.vb 81 | 82 | 83 | SettingsSingleFileGenerator 84 | My 85 | Settings.Designer.vb 86 | 87 | 88 | 89 | 96 | -------------------------------------------------------------------------------- /Samples/vb/Server/Server.vbproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.50727 7 | 2.0 8 | {8EAF0758-4C3C-4393-A3C6-8EA3D1C657E5} 9 | Exe 10 | Server.Program 11 | Server 12 | Server 13 | Console 14 | 15 | 16 | true 17 | full 18 | true 19 | true 20 | bin\Debug\ 21 | Server.xml 22 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 23 | 24 | 25 | pdbonly 26 | false 27 | true 28 | true 29 | bin\Release\ 30 | Server.xml 31 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 32 | 33 | 34 | 35 | False 36 | ..\..\..\Binary\NDde.dll 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | True 56 | Application.myapp 57 | 58 | 59 | True 60 | True 61 | Resources.resx 62 | 63 | 64 | True 65 | Settings.settings 66 | True 67 | 68 | 69 | 70 | 71 | VbMyResourcesResXFileCodeGenerator 72 | Resources.Designer.vb 73 | My.Resources 74 | Designer 75 | 76 | 77 | 78 | 79 | MyApplicationCodeGenerator 80 | Application.Designer.vb 81 | 82 | 83 | SettingsSingleFileGenerator 84 | My 85 | Settings.Designer.vb 86 | 87 | 88 | 89 | 96 | -------------------------------------------------------------------------------- /Source/NDde/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | #region Copyright (c) 2005 by Brian Gideon (briangideon@yahoo.com) 2 | 3 | /* Shared Source License for NDde 4 | * 5 | * This license governs use of the accompanying software ('Software'), and your use of the Software constitutes acceptance of this license. 6 | * 7 | * You may use the Software for any commercial or noncommercial purpose, including distributing derivative works. 8 | * 9 | * In return, we simply require that you agree: 10 | * 1. Not to remove any copyright or other notices from the Software. 11 | * 2. That if you distribute the Software in source code form you do so only under this license (i.e. you must include a complete copy of this 12 | * license with your distribution), and if you distribute the Software solely in object form you only do so under a license that complies with 13 | * this license. 14 | * 3. That the Software comes "as is", with no warranties. None whatsoever. This means no express, implied or statutory warranty, including 15 | * without limitation, warranties of merchantability or fitness for a particular purpose or any warranty of title or non-infringement. Also, 16 | * you must pass this disclaimer on whenever you distribute the Software or derivative works. 17 | * 4. That no contributor to the Software will be liable for any of those types of damages known as indirect, special, consequential, or incidental 18 | * related to the Software or this license, to the maximum extent the law permits, no matter what legal theory it’s based on. Also, you must 19 | * pass this limitation of liability on whenever you distribute the Software or derivative works. 20 | * 5. That if you sue anyone over patents that you think may apply to the Software for a person's use of the Software, your license to the Software 21 | * ends automatically. 22 | * 6. That the patent rights, if any, granted in this license only apply to the Software, not to any derivative works you make. 23 | * 7. That the Software is subject to U.S. export jurisdiction at the time it is licensed to you, and it may be subject to additional export or 24 | * import laws in other places. You agree to comply with all such laws and regulations that may apply to the Software after delivery of the 25 | * software to you. 26 | * 8. That if you are an agency of the U.S. Government, (i) Software provided pursuant to a solicitation issued on or after December 1, 1995, is 27 | * provided with the commercial license rights set forth in this license, and (ii) Software provided pursuant to a solicitation issued prior to 28 | * December 1, 1995, is provided with “Restricted Rights” as set forth in FAR, 48 C.F.R. 52.227-14 (June 1987) or DFAR, 48 C.F.R. 252.227-7013 29 | * (Oct 1988), as applicable. 30 | * 9. That your rights under this License end automatically if you breach it in any way. 31 | * 10. That all rights not expressly granted to you in this license are reserved. 32 | */ 33 | 34 | #endregion 35 | 36 | using System; 37 | using System.Reflection; 38 | using System.Runtime.InteropServices; 39 | 40 | // General Information about an assembly is controlled through the following 41 | // set of attributes. Change these attribute values to modify the information 42 | // associated with an assembly. 43 | [assembly: AssemblyTitle("NDde")] 44 | [assembly: AssemblyDescription("Dynamic Data Exchange Library")] 45 | #if DEBUG 46 | [assembly: AssemblyConfiguration("Debug")] 47 | #else 48 | [assembly: AssemblyConfiguration("Release")] 49 | #endif 50 | [assembly: AssemblyCompany("Brian Gideon")] 51 | [assembly: AssemblyProduct("NDde")] 52 | [assembly: AssemblyCopyright("Copyright © 2005-2006 by Brian Gideon (briangideon@yahoo.com)")] 53 | [assembly: AssemblyTrademark("")] 54 | [assembly: AssemblyCulture("")] 55 | 56 | // Setting ComVisible to false makes the types in this assembly not visible 57 | // to COM components. If you need to access a type in this assembly from 58 | // COM, set the ComVisible attribute to true on that type. 59 | [assembly: ComVisible(false)] 60 | 61 | // The following GUID is for the ID of the typelib if this project is exposed to COM 62 | [assembly: Guid("9e2a31da-f0a0-4094-a6cd-85ceb9ac297a")] 63 | 64 | // Version information for an assembly consists of the following four values: 65 | // 66 | // Major Version 67 | // Minor Version 68 | // Build Number 69 | // Revision 70 | // 71 | // You can specify all the values or you can default the Revision and Build Numbers 72 | // by using the '*' as shown below: 73 | [assembly: AssemblyVersion("2.01.0563.0")] 74 | [assembly: AssemblyFileVersion("2.01.0563.0")] // 1/17/2005 is the original build date 75 | 76 | [assembly: CLSCompliant(true)] -------------------------------------------------------------------------------- /Source/Backup/NDde/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | #region Copyright (c) 2005 by Brian Gideon (briangideon@yahoo.com) 2 | /* Shared Source License for NDde 3 | * 4 | * This license governs use of the accompanying software ('Software'), and your use of the Software constitutes acceptance of this license. 5 | * 6 | * You may use the Software for any commercial or noncommercial purpose, including distributing derivative works. 7 | * 8 | * In return, we simply require that you agree: 9 | * 1. Not to remove any copyright or other notices from the Software. 10 | * 2. That if you distribute the Software in source code form you do so only under this license (i.e. you must include a complete copy of this 11 | * license with your distribution), and if you distribute the Software solely in object form you only do so under a license that complies with 12 | * this license. 13 | * 3. That the Software comes "as is", with no warranties. None whatsoever. This means no express, implied or statutory warranty, including 14 | * without limitation, warranties of merchantability or fitness for a particular purpose or any warranty of title or non-infringement. Also, 15 | * you must pass this disclaimer on whenever you distribute the Software or derivative works. 16 | * 4. That no contributor to the Software will be liable for any of those types of damages known as indirect, special, consequential, or incidental 17 | * related to the Software or this license, to the maximum extent the law permits, no matter what legal theory it’s based on. Also, you must 18 | * pass this limitation of liability on whenever you distribute the Software or derivative works. 19 | * 5. That if you sue anyone over patents that you think may apply to the Software for a person's use of the Software, your license to the Software 20 | * ends automatically. 21 | * 6. That the patent rights, if any, granted in this license only apply to the Software, not to any derivative works you make. 22 | * 7. That the Software is subject to U.S. export jurisdiction at the time it is licensed to you, and it may be subject to additional export or 23 | * import laws in other places. You agree to comply with all such laws and regulations that may apply to the Software after delivery of the 24 | * software to you. 25 | * 8. That if you are an agency of the U.S. Government, (i) Software provided pursuant to a solicitation issued on or after December 1, 1995, is 26 | * provided with the commercial license rights set forth in this license, and (ii) Software provided pursuant to a solicitation issued prior to 27 | * December 1, 1995, is provided with “Restricted Rights” as set forth in FAR, 48 C.F.R. 52.227-14 (June 1987) or DFAR, 48 C.F.R. 252.227-7013 28 | * (Oct 1988), as applicable. 29 | * 9. That your rights under this License end automatically if you breach it in any way. 30 | * 10. That all rights not expressly granted to you in this license are reserved. 31 | */ 32 | #endregion 33 | using System; 34 | using System.Reflection; 35 | using System.Runtime.CompilerServices; 36 | using System.Runtime.InteropServices; 37 | 38 | // General Information about an assembly is controlled through the following 39 | // set of attributes. Change these attribute values to modify the information 40 | // associated with an assembly. 41 | [assembly: AssemblyTitle("NDde")] 42 | [assembly: AssemblyDescription("Dynamic Data Exchange Library")] 43 | #if DEBUG 44 | [assembly: AssemblyConfiguration("Debug")] 45 | #else 46 | [assembly: AssemblyConfiguration("Release")] 47 | #endif 48 | [assembly: AssemblyCompany("Brian Gideon")] 49 | [assembly: AssemblyProduct("NDde")] 50 | [assembly: AssemblyCopyright("Copyright © 2005-2006 by Brian Gideon (briangideon@yahoo.com)")] 51 | [assembly: AssemblyTrademark("")] 52 | [assembly: AssemblyCulture("")] 53 | 54 | // Setting ComVisible to false makes the types in this assembly not visible 55 | // to COM components. If you need to access a type in this assembly from 56 | // COM, set the ComVisible attribute to true on that type. 57 | [assembly: ComVisible(false)] 58 | 59 | // The following GUID is for the ID of the typelib if this project is exposed to COM 60 | [assembly: Guid("9e2a31da-f0a0-4094-a6cd-85ceb9ac297a")] 61 | 62 | // Version information for an assembly consists of the following four values: 63 | // 64 | // Major Version 65 | // Minor Version 66 | // Build Number 67 | // Revision 68 | // 69 | // You can specify all the values or you can default the Revision and Build Numbers 70 | // by using the '*' as shown below: 71 | [assembly: AssemblyVersion("2.01.0563.0")] 72 | [assembly: AssemblyFileVersion("2.01.0563.0")] // 1/17/2005 is the original build date 73 | 74 | [assembly: CLSCompliant(true)] 75 | 76 | -------------------------------------------------------------------------------- /Source/NDde.Test/Helpers/TracingServer.cs: -------------------------------------------------------------------------------- 1 | namespace NDde.Test 2 | { 3 | using System; 4 | using NDde; 5 | using NDde.Advanced; 6 | using NDde.Server; 7 | 8 | internal class TracingServer : DdeServer 9 | { 10 | public TracingServer(string service) 11 | : base(service) 12 | { 13 | } 14 | 15 | public TracingServer(string service, DdeContext context) 16 | : base(service, context) 17 | { 18 | } 19 | 20 | protected override bool OnBeforeConnect(string topic) 21 | { 22 | Console.WriteLine("OnBeforeConnect:".PadRight(16) 23 | + " Service='" + base.Service + "'" 24 | + " Topic='" + topic + "'"); 25 | 26 | return base.OnBeforeConnect(topic); 27 | } 28 | 29 | protected override void OnAfterConnect(DdeConversation conversation) 30 | { 31 | Console.WriteLine("OnAfterConnect:".PadRight(16) 32 | + " Service='" + conversation.Service + "'" 33 | + " Topic='" + conversation.Topic + "'" 34 | + " Handle=" + conversation.Handle.ToString()); 35 | } 36 | 37 | protected override void OnDisconnect(DdeConversation conversation) 38 | { 39 | Console.WriteLine("OnDisconnect:".PadRight(16) 40 | + " Service='" + conversation.Service + "'" 41 | + " Topic='" + conversation.Topic + "'" 42 | + " Handle=" + conversation.Handle.ToString()); 43 | } 44 | 45 | protected override bool OnStartAdvise(DdeConversation conversation, string item, int format) 46 | { 47 | Console.WriteLine("OnStartAdvise:".PadRight(16) 48 | + " Service='" + conversation.Service + "'" 49 | + " Topic='" + conversation.Topic + "'" 50 | + " Handle=" + conversation.Handle.ToString() 51 | + " Item='" + item + "'" 52 | + " Format=" + format.ToString()); 53 | 54 | return base.OnStartAdvise(conversation, item, format); 55 | } 56 | 57 | protected override void OnStopAdvise(DdeConversation conversation, string item) 58 | { 59 | Console.WriteLine("OnStopAdvise:".PadRight(16) 60 | + " Service='" + conversation.Service + "'" 61 | + " Topic='" + conversation.Topic + "'" 62 | + " Handle=" + conversation.Handle.ToString() 63 | + " Item='" + item + "'"); 64 | } 65 | 66 | protected override ExecuteResult OnExecute(DdeConversation conversation, string command) 67 | { 68 | Console.WriteLine("OnExecute:".PadRight(16) 69 | + " Service='" + conversation.Service + "'" 70 | + " Topic='" + conversation.Topic + "'" 71 | + " Handle=" + conversation.Handle.ToString() 72 | + " Command='" + command + "'"); 73 | 74 | return base.OnExecute(conversation, command); 75 | } 76 | 77 | protected override PokeResult OnPoke(DdeConversation conversation, string item, byte[] data, int format) 78 | { 79 | Console.WriteLine("OnPoke:".PadRight(16) 80 | + " Service='" + conversation.Service + "'" 81 | + " Topic='" + conversation.Topic + "'" 82 | + " Handle=" + conversation.Handle.ToString() 83 | + " Item='" + item + "'" 84 | + " Data=" + data.Length.ToString() 85 | + " Format=" + format.ToString()); 86 | 87 | return base.OnPoke(conversation, item, data, format); 88 | } 89 | 90 | protected override RequestResult OnRequest(DdeConversation conversation, string item, int format) 91 | { 92 | Console.WriteLine("OnRequest:".PadRight(16) 93 | + " Service='" + conversation.Service + "'" 94 | + " Topic='" + conversation.Topic + "'" 95 | + " Handle=" + conversation.Handle.ToString() 96 | + " Item='" + item + "'" 97 | + " Format=" + format.ToString()); 98 | 99 | return base.OnRequest(conversation, item, format); 100 | } 101 | 102 | protected override byte[] OnAdvise(string topic, string item, int format) 103 | { 104 | Console.WriteLine("OnAdvise:".PadRight(16) 105 | + " Service='" + this.Service + "'" 106 | + " Topic='" + topic + "'" 107 | + " Item='" + item + "'" 108 | + " Format=" + format.ToString()); 109 | 110 | return base.OnAdvise(topic, item, format); 111 | } 112 | 113 | } // class 114 | 115 | } // namespace -------------------------------------------------------------------------------- /Source/Backup/NDde.Test/Helpers/TracingServer.cs: -------------------------------------------------------------------------------- 1 | namespace NDde.Test 2 | { 3 | using System; 4 | using NDde; 5 | using NDde.Advanced; 6 | using NDde.Server; 7 | 8 | internal class TracingServer : DdeServer 9 | { 10 | public TracingServer(string service) 11 | : base(service) 12 | { 13 | } 14 | 15 | public TracingServer(string service, DdeContext context) 16 | : base(service, context) 17 | { 18 | } 19 | 20 | protected override bool OnBeforeConnect(string topic) 21 | { 22 | Console.WriteLine("OnBeforeConnect:".PadRight(16) 23 | + " Service='" + base.Service + "'" 24 | + " Topic='" + topic + "'"); 25 | 26 | return base.OnBeforeConnect(topic); 27 | } 28 | 29 | protected override void OnAfterConnect(DdeConversation conversation) 30 | { 31 | Console.WriteLine("OnAfterConnect:".PadRight(16) 32 | + " Service='" + conversation.Service + "'" 33 | + " Topic='" + conversation.Topic + "'" 34 | + " Handle=" + conversation.Handle.ToString()); 35 | } 36 | 37 | protected override void OnDisconnect(DdeConversation conversation) 38 | { 39 | Console.WriteLine("OnDisconnect:".PadRight(16) 40 | + " Service='" + conversation.Service + "'" 41 | + " Topic='" + conversation.Topic + "'" 42 | + " Handle=" + conversation.Handle.ToString()); 43 | } 44 | 45 | protected override bool OnStartAdvise(DdeConversation conversation, string item, int format) 46 | { 47 | Console.WriteLine("OnStartAdvise:".PadRight(16) 48 | + " Service='" + conversation.Service + "'" 49 | + " Topic='" + conversation.Topic + "'" 50 | + " Handle=" + conversation.Handle.ToString() 51 | + " Item='" + item + "'" 52 | + " Format=" + format.ToString()); 53 | 54 | return base.OnStartAdvise(conversation, item, format); 55 | } 56 | 57 | protected override void OnStopAdvise(DdeConversation conversation, string item) 58 | { 59 | Console.WriteLine("OnStopAdvise:".PadRight(16) 60 | + " Service='" + conversation.Service + "'" 61 | + " Topic='" + conversation.Topic + "'" 62 | + " Handle=" + conversation.Handle.ToString() 63 | + " Item='" + item + "'"); 64 | } 65 | 66 | protected override ExecuteResult OnExecute(DdeConversation conversation, string command) 67 | { 68 | Console.WriteLine("OnExecute:".PadRight(16) 69 | + " Service='" + conversation.Service + "'" 70 | + " Topic='" + conversation.Topic + "'" 71 | + " Handle=" + conversation.Handle.ToString() 72 | + " Command='" + command + "'"); 73 | 74 | return base.OnExecute(conversation, command); 75 | } 76 | 77 | protected override PokeResult OnPoke(DdeConversation conversation, string item, byte[] data, int format) 78 | { 79 | Console.WriteLine("OnPoke:".PadRight(16) 80 | + " Service='" + conversation.Service + "'" 81 | + " Topic='" + conversation.Topic + "'" 82 | + " Handle=" + conversation.Handle.ToString() 83 | + " Item='" + item + "'" 84 | + " Data=" + data.Length.ToString() 85 | + " Format=" + format.ToString()); 86 | 87 | return base.OnPoke(conversation, item, data, format); 88 | } 89 | 90 | protected override RequestResult OnRequest(DdeConversation conversation, string item, int format) 91 | { 92 | Console.WriteLine("OnRequest:".PadRight(16) 93 | + " Service='" + conversation.Service + "'" 94 | + " Topic='" + conversation.Topic + "'" 95 | + " Handle=" + conversation.Handle.ToString() 96 | + " Item='" + item + "'" 97 | + " Format=" + format.ToString()); 98 | 99 | return base.OnRequest(conversation, item, format); 100 | } 101 | 102 | protected override byte[] OnAdvise(string topic, string item, int format) 103 | { 104 | Console.WriteLine("OnAdvise:".PadRight(16) 105 | + " Service='" + this.Service + "'" 106 | + " Topic='" + topic + "'" 107 | + " Item='" + item + "'" 108 | + " Format=" + format.ToString()); 109 | 110 | return base.OnAdvise(topic, item, format); 111 | } 112 | 113 | } // class 114 | 115 | } // namespace -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ## Ignore Visual Studio temporary files, build results, and 2 | ## files generated by popular Visual Studio add-ons. 3 | 4 | # User-specific files 5 | *.suo 6 | *.user 7 | *.userosscache 8 | *.sln.docstates 9 | 10 | # User-specific files (MonoDevelop/Xamarin Studio) 11 | *.userprefs 12 | 13 | # Build results 14 | [Dd]ebug/ 15 | [Dd]ebugPublic/ 16 | [Rr]elease/ 17 | [Rr]eleases/ 18 | [Xx]64/ 19 | [Xx]86/ 20 | [Bb]uild/ 21 | bld/ 22 | [Bb]in/ 23 | [Oo]bj/ 24 | 25 | # Visual Studio 2015 cache/options directory 26 | .vs/ 27 | # Uncomment if you have tasks that create the project's static files in wwwroot 28 | #wwwroot/ 29 | 30 | # MSTest test Results 31 | [Tt]est[Rr]esult*/ 32 | [Bb]uild[Ll]og.* 33 | 34 | # NUNIT 35 | *.VisualState.xml 36 | TestResult.xml 37 | 38 | # Build Results of an ATL Project 39 | [Dd]ebugPS/ 40 | [Rr]eleasePS/ 41 | dlldata.c 42 | 43 | # DNX 44 | project.lock.json 45 | artifacts/ 46 | 47 | *_i.c 48 | *_p.c 49 | *_i.h 50 | *.ilk 51 | *.meta 52 | *.obj 53 | *.pch 54 | *.pdb 55 | *.pgc 56 | *.pgd 57 | *.rsp 58 | *.sbr 59 | *.tlb 60 | *.tli 61 | *.tlh 62 | *.tmp 63 | *.tmp_proj 64 | *.log 65 | *.vspscc 66 | *.vssscc 67 | .builds 68 | *.pidb 69 | *.svclog 70 | *.scc 71 | 72 | # Chutzpah Test files 73 | _Chutzpah* 74 | 75 | # Visual C++ cache files 76 | ipch/ 77 | *.aps 78 | *.ncb 79 | *.opendb 80 | *.opensdf 81 | *.sdf 82 | *.cachefile 83 | *.VC.db 84 | 85 | # Visual Studio profiler 86 | *.psess 87 | *.vsp 88 | *.vspx 89 | *.sap 90 | 91 | # TFS 2012 Local Workspace 92 | $tf/ 93 | 94 | # Guidance Automation Toolkit 95 | *.gpState 96 | 97 | # ReSharper is a .NET coding add-in 98 | _ReSharper*/ 99 | *.[Rr]e[Ss]harper 100 | *.DotSettings.user 101 | 102 | # JustCode is a .NET coding add-in 103 | .JustCode 104 | 105 | # TeamCity is a build add-in 106 | _TeamCity* 107 | 108 | # DotCover is a Code Coverage Tool 109 | *.dotCover 110 | 111 | # NCrunch 112 | _NCrunch_* 113 | .*crunch*.local.xml 114 | nCrunchTemp_* 115 | 116 | # MightyMoose 117 | *.mm.* 118 | AutoTest.Net/ 119 | 120 | # Web workbench (sass) 121 | .sass-cache/ 122 | 123 | # Installshield output folder 124 | [Ee]xpress/ 125 | 126 | # DocProject is a documentation generator add-in 127 | DocProject/buildhelp/ 128 | DocProject/Help/*.HxT 129 | DocProject/Help/*.HxC 130 | DocProject/Help/*.hhc 131 | DocProject/Help/*.hhk 132 | DocProject/Help/*.hhp 133 | DocProject/Help/Html2 134 | DocProject/Help/html 135 | 136 | # Click-Once directory 137 | publish/ 138 | 139 | # Publish Web Output 140 | *.[Pp]ublish.xml 141 | *.azurePubxml 142 | 143 | # TODO: Un-comment the next line if you do not want to checkin 144 | # your web deploy settings because they may include unencrypted 145 | # passwords 146 | #*.pubxml 147 | *.publishproj 148 | 149 | # NuGet Packages 150 | *.nupkg 151 | # The packages folder can be ignored because of Package Restore 152 | **/packages/* 153 | # except build/, which is used as an MSBuild target. 154 | !**/packages/build/ 155 | # Uncomment if necessary however generally it will be regenerated when needed 156 | #!**/packages/repositories.config 157 | # NuGet v3's project.json files produces more ignoreable files 158 | *.nuget.props 159 | *.nuget.targets 160 | 161 | # Microsoft Azure Build Output 162 | csx/ 163 | *.build.csdef 164 | 165 | # Microsoft Azure Emulator 166 | ecf/ 167 | rcf/ 168 | 169 | # Windows Store app package directory 170 | AppPackages/ 171 | BundleArtifacts/ 172 | 173 | # Visual Studio cache files 174 | # files ending in .cache can be ignored 175 | *.[Cc]ache 176 | # but keep track of directories ending in .cache 177 | !*.[Cc]ache/ 178 | 179 | # Others 180 | ClientBin/ 181 | [Ss]tyle[Cc]op.* 182 | ~$* 183 | *~ 184 | *.dbmdl 185 | *.dbproj.schemaview 186 | *.pfx 187 | *.publishsettings 188 | node_modules/ 189 | orleans.codegen.cs 190 | 191 | # RIA/Silverlight projects 192 | Generated_Code/ 193 | 194 | # Backup & report files from converting an old project file 195 | # to a newer Visual Studio version. Backup files are not needed, 196 | # because we have git ;-) 197 | _UpgradeReport_Files/ 198 | Backup*/ 199 | UpgradeLog*.XML 200 | UpgradeLog*.htm 201 | 202 | # SQL Server files 203 | *.mdf 204 | *.ldf 205 | 206 | # Business Intelligence projects 207 | *.rdl.data 208 | *.bim.layout 209 | *.bim_*.settings 210 | 211 | # Microsoft Fakes 212 | FakesAssemblies/ 213 | 214 | # GhostDoc plugin setting file 215 | *.GhostDoc.xml 216 | 217 | # Node.js Tools for Visual Studio 218 | .ntvs_analysis.dat 219 | 220 | # Visual Studio 6 build log 221 | *.plg 222 | 223 | # Visual Studio 6 workspace options file 224 | *.opt 225 | 226 | # Visual Studio LightSwitch build output 227 | **/*.HTMLClient/GeneratedArtifacts 228 | **/*.DesktopClient/GeneratedArtifacts 229 | **/*.DesktopClient/ModelManifest.xml 230 | **/*.Server/GeneratedArtifacts 231 | **/*.Server/ModelManifest.xml 232 | _Pvt_Extensions 233 | 234 | # LightSwitch generated files 235 | GeneratedArtifacts/ 236 | ModelManifest.xml 237 | 238 | # Paket dependency manager 239 | .paket/paket.exe 240 | 241 | # FAKE - F# Make 242 | .fake/ 243 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/ClientWin.vbproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.50727 7 | 2.0 8 | {7E0C3AE2-E2C9-4C6C-913F-0655E9F23A83} 9 | WinExe 10 | ClientWin.My.MyApplication 11 | ClientWin 12 | ClientWin 13 | WindowsForms 14 | 15 | 16 | true 17 | full 18 | true 19 | true 20 | bin\Debug\ 21 | ClientWin.xml 22 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 23 | 24 | 25 | pdbonly 26 | false 27 | true 28 | true 29 | bin\Release\ 30 | ClientWin.xml 31 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 32 | 33 | 34 | 35 | False 36 | ..\..\..\Binary\NDde.dll 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | Form 58 | 59 | 60 | MainForm.vb 61 | Form 62 | 63 | 64 | 65 | True 66 | Application.myapp 67 | 68 | 69 | True 70 | True 71 | Resources.resx 72 | 73 | 74 | True 75 | Settings.settings 76 | True 77 | 78 | 79 | 80 | 81 | Designer 82 | MainForm.vb 83 | 84 | 85 | VbMyResourcesResXFileCodeGenerator 86 | Resources.Designer.vb 87 | My.Resources 88 | Designer 89 | 90 | 91 | 92 | 93 | MyApplicationCodeGenerator 94 | Application.Designer.vb 95 | 96 | 97 | SettingsSingleFileGenerator 98 | My 99 | Settings.Designer.vb 100 | 101 | 102 | 103 | 110 | -------------------------------------------------------------------------------- /Samples/vb/Client/Program.vb: -------------------------------------------------------------------------------- 1 | Imports System.Text 2 | Imports NDde.Client 3 | 4 | Module Program 5 | 6 | Sub Main() 7 | 8 | ' Wait for the user to press ENTER before proceding. 9 | Console.WriteLine("The Server sample must be running before the client can connect.") 10 | Console.WriteLine("Press ENTER to continue...") 11 | Console.ReadLine() 12 | 13 | Try 14 | ' Create a client that connects to 'myapp|mytopic'. 15 | Using client As DdeClient = New DdeClient("myapp", "mytopic") 16 | 17 | ' Subscribe to the Disconnected event. This event will notify the application when a conversation has been terminated. 18 | AddHandler client.Disconnected, AddressOf OnDisconnected 19 | 20 | ' Connect to the server. It must be running or an exception will be thrown. 21 | client.Connect() 22 | 23 | ' Synchronous Execute Operation 24 | client.Execute("mycommand", 60000) 25 | 26 | ' Synchronous Poke Operation 27 | client.Poke("myitem", DateTime.Now.ToString(), 60000) 28 | 29 | ' Syncronous Request Operation 30 | Console.WriteLine("Request: " + client.Request("myitem", 60000)) 31 | 32 | ' Asynchronous Execute Operation 33 | client.BeginExecute("mycommand", AddressOf OnExecuteComplete, client) 34 | 35 | ' Asynchronous Poke Operation 36 | client.BeginPoke("myitem", Encoding.ASCII.GetBytes(DateTime.Now.ToString() + Convert.ToChar(0)), 1, AddressOf OnPokeComplete, client) 37 | 38 | ' Asynchronous Request Operation 39 | client.BeginRequest("myitem", 1, AddressOf OnRequestComplete, client) 40 | 41 | ' Advise Loop 42 | client.StartAdvise("myitem", 1, True, 60000) 43 | AddHandler client.Advise, AddressOf OnAdvise 44 | 45 | ' Wait for the user to press ENTER before proceding. 46 | Console.WriteLine("Press ENTER to quit...") 47 | Console.ReadLine() 48 | 49 | End Using 50 | 51 | Catch e As Exception 52 | 53 | Console.WriteLine(e.ToString()) 54 | Console.WriteLine("Press ENTER to quit...") 55 | Console.ReadLine() 56 | 57 | End Try 58 | 59 | End Sub 60 | 61 | Private Sub OnExecuteComplete(ByVal ar As IAsyncResult) 62 | Try 63 | Dim client As DdeClient = DirectCast(ar.AsyncState, DdeClient) 64 | client.EndExecute(ar) 65 | Console.WriteLine("OnExecuteComplete") 66 | Catch e As Exception 67 | Console.WriteLine("OnExecuteComplete: " + e.Message) 68 | End Try 69 | End Sub 70 | 71 | Private Sub OnPokeComplete(ByVal ar As IAsyncResult) 72 | Try 73 | Dim client As DdeClient = DirectCast(ar.AsyncState, DdeClient) 74 | client.EndPoke(ar) 75 | Console.WriteLine("OnPokeComplete") 76 | Catch e As Exception 77 | Console.WriteLine("OnPokeComplete: " + e.Message) 78 | End Try 79 | End Sub 80 | 81 | Private Sub OnRequestComplete(ByVal ar As IAsyncResult) 82 | Try 83 | Dim client As DdeClient = DirectCast(ar.AsyncState, DdeClient) 84 | Dim data() As Byte = client.EndRequest(ar) 85 | Console.WriteLine("OnRequestComplete: " + Encoding.ASCII.GetString(data)) 86 | Catch e As Exception 87 | Console.WriteLine("OnRequestComplete: " + e.Message) 88 | End Try 89 | End Sub 90 | 91 | Private Sub OnStartAdviseComplete(ByVal ar As IAsyncResult) 92 | Try 93 | Dim client As DdeClient = DirectCast(ar.AsyncState, DdeClient) 94 | client.EndStartAdvise(ar) 95 | Console.WriteLine("OnStartAdviseComplete") 96 | Catch e As Exception 97 | Console.WriteLine("OnStartAdviseComplete: " + e.Message) 98 | End Try 99 | End Sub 100 | 101 | Private Sub OnStopAdviseComplete(ByVal ar As IAsyncResult) 102 | Try 103 | Dim client As DdeClient = DirectCast(ar.AsyncState, DdeClient) 104 | client.EndStopAdvise(ar) 105 | Console.WriteLine("OnStopAdviseComplete") 106 | Catch e As Exception 107 | Console.WriteLine("OnStopAdviseComplete: " + e.Message) 108 | End Try 109 | End Sub 110 | 111 | Private Sub OnAdvise(ByVal sender As Object, ByVal args As DdeAdviseEventArgs) 112 | Console.WriteLine("OnAdvise: " + args.Text) 113 | End Sub 114 | 115 | Private Sub OnDisconnected(ByVal sender As Object, ByVal args As DdeDisconnectedEventArgs) 116 | Console.WriteLine( _ 117 | "OnDisconnected: " + _ 118 | "IsServerInitiated=" + args.IsServerInitiated.ToString() + " " + _ 119 | "IsDisposed=" + args.IsDisposed.ToString()) 120 | End Sub 121 | 122 | End Module 123 | -------------------------------------------------------------------------------- /Samples/cs/Client/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Text; 3 | using NDde.Client; 4 | 5 | namespace Client 6 | { 7 | public sealed class Client 8 | { 9 | public static void Main(string[] args) 10 | { 11 | // Wait for the user to press ENTER before proceding. 12 | Console.WriteLine("The Server sample must be running before the client can connect."); 13 | Console.WriteLine("Press ENTER to continue..."); 14 | Console.ReadLine(); 15 | try 16 | { 17 | // Create a client that connects to 'myapp|mytopic'. 18 | using (DdeClient client = new DdeClient("myapp", "mytopic")) 19 | { 20 | // Subscribe to the Disconnected event. This event will notify the application when a conversation has been terminated. 21 | client.Disconnected += OnDisconnected; 22 | 23 | // Connect to the server. It must be running or an exception will be thrown. 24 | client.Connect(); 25 | 26 | // Synchronous Execute Operation 27 | client.Execute("mycommand", 60000); 28 | 29 | // Synchronous Poke Operation 30 | client.Poke("myitem", DateTime.Now.ToString(), 60000); 31 | 32 | // Syncronous Request Operation 33 | Console.WriteLine("Request: " + client.Request("myitem", 60000)); 34 | 35 | // Asynchronous Execute Operation 36 | client.BeginExecute("mycommand", OnExecuteComplete, client); 37 | 38 | // Asynchronous Poke Operation 39 | client.BeginPoke("myitem", Encoding.ASCII.GetBytes(DateTime.Now.ToString() + "\0"), 1, OnPokeComplete, client); 40 | 41 | // Asynchronous Request Operation 42 | client.BeginRequest("myitem", 1, OnRequestComplete, client); 43 | 44 | // Advise Loop 45 | client.StartAdvise("myitem", 1, true, 60000); 46 | client.Advise += OnAdvise; 47 | 48 | // Wait for the user to press ENTER before proceding. 49 | Console.WriteLine("Press ENTER to quit..."); 50 | Console.ReadLine(); 51 | } 52 | } 53 | catch (Exception e) 54 | { 55 | Console.WriteLine(e.ToString()); 56 | Console.WriteLine("Press ENTER to quit..."); 57 | Console.ReadLine(); 58 | } 59 | } 60 | 61 | private static void OnExecuteComplete(IAsyncResult ar) 62 | { 63 | try 64 | { 65 | DdeClient client = (DdeClient)ar.AsyncState; 66 | client.EndExecute(ar); 67 | Console.WriteLine("OnExecuteComplete"); 68 | } 69 | catch (Exception e) 70 | { 71 | Console.WriteLine("OnExecuteComplete: " + e.Message); 72 | } 73 | } 74 | 75 | private static void OnPokeComplete(IAsyncResult ar) 76 | { 77 | try 78 | { 79 | DdeClient client = (DdeClient)ar.AsyncState; 80 | client.EndPoke(ar); 81 | Console.WriteLine("OnPokeComplete"); 82 | } 83 | catch (Exception e) 84 | { 85 | Console.WriteLine("OnPokeComplete: " + e.Message); 86 | } 87 | } 88 | 89 | private static void OnRequestComplete(IAsyncResult ar) 90 | { 91 | try 92 | { 93 | DdeClient client = (DdeClient)ar.AsyncState; 94 | byte[] data = client.EndRequest(ar); 95 | Console.WriteLine("OnRequestComplete: " + Encoding.ASCII.GetString(data)); 96 | } 97 | catch (Exception e) 98 | { 99 | Console.WriteLine("OnRequestComplete: " + e.Message); 100 | } 101 | } 102 | 103 | private static void OnStartAdviseComplete(IAsyncResult ar) 104 | { 105 | try 106 | { 107 | DdeClient client = (DdeClient)ar.AsyncState; 108 | client.EndStartAdvise(ar); 109 | Console.WriteLine("OnStartAdviseComplete"); 110 | } 111 | catch (Exception e) 112 | { 113 | Console.WriteLine("OnStartAdviseComplete: " + e.Message); 114 | } 115 | } 116 | 117 | private static void OnStopAdviseComplete(IAsyncResult ar) 118 | { 119 | try 120 | { 121 | DdeClient client = (DdeClient)ar.AsyncState; 122 | client.EndStopAdvise(ar); 123 | Console.WriteLine("OnStopAdviseComplete"); 124 | } 125 | catch (Exception e) 126 | { 127 | Console.WriteLine("OnStopAdviseComplete: " + e.Message); 128 | } 129 | } 130 | 131 | private static void OnAdvise(object sender, DdeAdviseEventArgs args) 132 | { 133 | Console.WriteLine("OnAdvise: " + args.Text); 134 | } 135 | 136 | private static void OnDisconnected(object sender, DdeDisconnectedEventArgs args) 137 | { 138 | Console.WriteLine( 139 | "OnDisconnected: " + 140 | "IsServerInitiated=" + args.IsServerInitiated.ToString() + " " + 141 | "IsDisposed=" + args.IsDisposed.ToString()); 142 | } 143 | 144 | } // class 145 | 146 | } // namespace 147 | -------------------------------------------------------------------------------- /Samples/cs/ClientWin/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | text/microsoft-resx 107 | 108 | 109 | 2.0 110 | 111 | 112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 113 | 114 | 115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | -------------------------------------------------------------------------------- /Samples/vb/Client/My Project/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | text/microsoft-resx 107 | 108 | 109 | 2.0 110 | 111 | 112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 113 | 114 | 115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/My Project/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | text/microsoft-resx 107 | 108 | 109 | 2.0 110 | 111 | 112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 113 | 114 | 115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | -------------------------------------------------------------------------------- /Samples/vb/Server/My Project/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | text/microsoft-resx 107 | 108 | 109 | 2.0 110 | 111 | 112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 113 | 114 | 115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | -------------------------------------------------------------------------------- /Source/Backup/NDde/NDde.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | Debug 4 | AnyCPU 5 | 8.0.50727 6 | 2.0 7 | {D77772F9-3D3D-40BA-B95F-05C45878078F} 8 | Library 9 | Properties 10 | NDde 11 | NDde 12 | 13 | 14 | true 15 | full 16 | false 17 | bin\Debug\ 18 | DEBUG;TRACE 19 | prompt 20 | 4 21 | bin\Debug\NDde.xml 22 | 23 | 24 | pdbonly 25 | true 26 | bin\Release\ 27 | TRACE 28 | prompt 29 | 4 30 | bin\Release\NDde.xml 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | True 85 | True 86 | Resources.resx 87 | 88 | 89 | 90 | 91 | 92 | Designer 93 | ResXFileCodeGenerator 94 | Resources.Designer.cs 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | -------------------------------------------------------------------------------- /Samples/cs/ClientWin/MainForm.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /Samples/vb/ClientWin/MainForm.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /Source/NDde/NDde.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.50727 7 | 2.0 8 | {D77772F9-3D3D-40BA-B95F-05C45878078F} 9 | Library 10 | Properties 11 | NDde 12 | NDde 13 | v4.5.2 14 | 15 | 16 | 17 | 18 | 2.0 19 | 20 | 21 | 22 | true 23 | full 24 | false 25 | bin\Debug\ 26 | DEBUG;TRACE 27 | prompt 28 | 4 29 | bin\Debug\NDde.xml 30 | false 31 | 32 | 33 | pdbonly 34 | true 35 | bin\Release\ 36 | TRACE 37 | prompt 38 | 4 39 | bin\Release\NDde.xml 40 | false 41 | AllRules.ruleset 42 | true 43 | 44 | 45 | false 46 | 47 | 48 | NDdeSSC-FortSmith-Dev-Key.pfx 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | True 104 | True 105 | Resources.resx 106 | 107 | 108 | 109 | 110 | 111 | Designer 112 | ResXFileCodeGenerator 113 | Resources.Designer.cs 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | --------------------------------------------------------------------------------