I have a legacy C library that I want to be able to use to cause events to be raised and handled by a C# component. One way of doing this is to send a message containing data (an unmanaged C struct), to a C# delegate, which will process the data sent from the C library.
The C library sends a message (with data in struct) to a c# class that implements a delegate that handles the message sent. The class should correctly retrieve the data that was sent in the message, and do the ff:
1). Send an email message (to a specified address), with details of the object received
2). Send an SMS message (to a specified number) with details of the object received
The data sent from the C libarary will be defined in a header file (attached as zip file)The event handler (delegate) will have the ff signature:
public delegate Response HandleEvent(object o)
where:
o is the data sent by C library, wrapped up as an object understandable by C#
Response is a class that has a status property, and can be interrogated for errors in case ([login to view URL] == fail)
A sample application must be provided that does the following:
1). Send suitably populated data structure from C
2). Data is handled by a C# class, that implements the delegate - 'listening' to message on a seperate thread
3). class sends an email containing details of received object for verification (email address will be hardcoded)
4). class sends an SMS message containing details of received object for verification (SMS number will be hardcoded)
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
Windows 98 and above