Here is a good one
Make a program that gets u free Email accounts for a short time!
Click a button and it gives ya a new email account!
Lets c how this turns out![]()
Here is a good one
Make a program that gets u free Email accounts for a short time!
Click a button and it gives ya a new email account!
Lets c how this turns out![]()
Hmm, I got a website/server thing; I might use it as mail-client.
I see your point sounds again interesting.
~Hermen

A thanks for your reply!
Where does WCF stands for?
~Hermen

Windows Communication Foundation.
You can think of it as a layer of software that takes all the cruddy details of working with a communications channel and hides it away from you.
As an example, I have a Delphi application that must talk to a server to get updated data. Say I want the client to get the server version number to see what features it supports. In previous versions I would put a string into NameValue pairs in a TStringList:
Then I'd copy that out as CommaText to put into a TCP packet to send to the server:Code:Command=GetServerVersion ClientID=ClientVersion UserID=SomeGuysName
The server would reverse that process, decide what to do and then send back the appropriate data:Code:TCP packet contents: "Command=GetServerVersion,ClientID=ClientVersion,UserID=SomeGuysName"
The client would dump that back into a string list, then use the Name[] property to get the server version back out.Code:TCP packet contents: "Command=GetServerVersion,VersionNum=1.0.0.0"
Pretty cheezy now, but it was quite effective when it was written about 6-7 years ago.
I'm migrating the server to C# now, using the WCF. To do this I just create a class that implements an interface that has a function that I want the client to be able to call, then I add some attributes (the stuff in square brackets) to set things up to work with the WCF. This tells the WCF what functions I want to expose as a service, in this case, just GetServerInfo(), which returns a data type of ServerInfo.
Then we tell it what a ServerInfo is. This is the part that carries the data back down to the client across the communication channel. Again add some properties to tell the WCF what it should expose:Code:[ServiceContract] public interface IServerAppService { [OperationContract] ServerInfo GetServerInfo(); } public class ServerAppService : IServerAppService { ServerInfo GetServerInfo() { return new ServerInfo(){ ServerVersion="1.0.0.0", SupportsFoo=true }; } }
So that all defines the function call that I can make and what the function returns. All I have to do then is edit a config file to tell WCF how I want to make it available. For my project I tell it to publish it through SOAP so Delphi can import the WSDL, generate the code to call the function, and it's done. From Delphi I just create an instance of the ServerAppService and call the function GetServerVersion and I get back a variable containing VersionNumber and SupportsSomeFeature.Code:[DataContract] public class ServerInfo { [DataMember] public string VersionNumber; [DataMember] public bool SupportsSomeFeature; }
If want to make it available through an web or secure web connection, it's just a config file change, no recompile. I can set it up to run on whatever TCP connection (without going through HTTP protocol) or even through channels like named pipes. All through the config file with zero code changes.
Cool stuff, and way easier than it might sound. Also, completely free from Microsoft, just download MSVC# 2008 Express Edition. You should see what they save to put in the pay versions!
You can still request programs, portabled existing applications or games!
~Hermen
Possible portable/USB photoshop?
On vacation in NeverLand,
Code:typedef int bool; enum { false, true };
.. Thinapp ..![]()
There are currently 1 users browsing this thread. (0 members and 1 guests)