You missed the point. C# is not like C or c++ which could have different compiler. C# and all other supported .NET language like VB.NET have the same compiler. Its nothing to deal with C or C++.You should ask in VC++ forum the best C or C++ compiler.
Mazdak wrote: C# and all other supported .NET language like VB.NET have the same compiler.
You may have mistyped this, but to clarify to the original posters or future readers, each language has its own compiler (not to say someone couldn't develop a compiler that compiles multiple languages). The main point to understand is that each compiler produces Intermediate Language, or IL. While each language compiler may support different things (like VB.NET as of 1.1 can't make use of unsigned integer types or use unsafe pointers while C# can), the output is still essentially the same which means that it doesn't matter in what language a .NET assembly / library is written, each language targeting the CLR (a.k.a. ".NET language") can use the assemblies. This is language interoperability thanks to the .NET Framework's Common Type System, or CTS.
I have an office app that need to send information to a central server through the net (Ie. update the central server's SQL database). My first thought was to do remoting. To secure it I used a secure channel. However I still have a problem: the remote object is exposed on the internet. What is the best way of authenticating the clients.
I've been looking for things and the only thing that I came up with is hosting the object in IIS and using server certificates. However I haven't been able to get client-activated remote objects properly hosted in IIS. If this is a good direction to head please help me out with a pointer to hosting client-activated objects in IIS.
Theming (a.k.a. XP styles) should only be used if the operating system uses it. This is highly recommended by the Windows User Interface Guidelines to provide users with a consistent interface. To make that happen, see my article Windows XP Visual Styles for Windows Forms[^]. For themed controls that don't support theming in .NET, see Infragistic's[^] NetAdvantage suite, which has great Windows Forms and Web Forms controls. I've used a few and they're pretty good.
There is a base class names DES for another class DESCryptoServiceProvider,I can use both for DES encyption like this:
DES des = DES.Create();
DES des = new DESCryptoServiceProvider();
My book say it is recommended to use first one because it create default cryptography service which it is latest version but second one is a defined way which is not surly latest version. Now I have a problem,I have a web service which has some encryption-decryption and this web service has a VB client and the VB client has its own encryption-decryption. The VB developer do his own part. Is that make change which one I use? Because he will/can not use .NET framework and he have to use cryptograohy API, I don't know the API's and I don't know the equivalent of first one. Also can I be sure if the cryptography's versions are grow the results of DES.Create() will be the same and it will generate the same decrypted value whith the constant KEY?(I mean only algorithm change but not the result) If I wrote myself both parts I could be sure about that but now one part in VB and I'm not sure about that. I hope that my problem is clear for you guys.
The whole idea of cryptographic standards - or any standards at all - is that they are the same wherever they are implemented. Crypto algorithms like RSA and DSA are standard. Don't worry about the implementation. So long as the key (i.e., the shared key in symmetric key or private key in asymmetric algorithms) you should have no problems. And again don't worry about the cipher text being different from encrypt and encrypt - the initialization vector is supposed to change in order to randomize the results and make it harder for crypto analysts to crack the key.
Again - these are standards.
Besides, the cryptography in .NET uses the Crypto API for various things.
I derived my collection class from CollectionBase. Now if i edit my collection in the CollectionEditor and remove an item from the collection, there is no call to CollectionBase.Remove() method. The Add method is called, but the remove never, why ?
I would like to perform additional custom processes on add, insert and remove.
This has to work on code and with CollectionEditor, but it seems that it behaves different.
When you override methods, it is your method that is getting called. In your implementation, make sure to call base.Remove in order for the base class's method to be called. You should almost always call base.Method(params) when overriding methods from a base class, unless you have a reason for not doing so (like you don't want the default implementation to be executed, which is pretty common when overriding WndProc).