Thursday, June 16, 2011

Do you want $1,000,000? Then Solve one of these problems

There are set of 7 puzzles, which are called as Millennium Prize Problems. These problems belongs to mathematics. But they have considerable impact on the computer science also. These problems were quoted by Clay Mathematics Institute of USA. If you solve any one of these problems, you will be awarded with 1 Million dollars.

Those Seven Problems are

1. P vs NP Problem
2. Hodge Conjecture
3. Poincare Conjecture
4. Riemann Hypothesis
5. Yang- Mills Existence and Mass gap
6. Navier Stokes Existence and Smoothness
7. Birch and Swinnerton- Dyer Conjecture

Out of these 7 problems, one problem was solved by Dr. Grigoriy Perelman of St. Petersburg, Russia last year. He solved the 3 problem i.e Poincare Conjecture. Obviously he will get 1 Million dollars, but he declined to take it.

Do you want $1,000,000, then try your luck here. The details of each problem was available from the portal of Clay Institute.

Tuesday, June 14, 2011

Signing an Assembly(DLL) without recompilation

While i was working on migration of one of our old application, i came across one situation where, i need to deploy a DLL into GAC. So what, what is the problem? Yes there is a problem, my old assembly is not strong named or signed. Thats it. As we know, we can't deploy non signed assemblies in to GAC.

That assembly was developed using .net framework 1.1 and i have no access to the development machine now. What to do now? Then, I have started exploring different options. I found one blog, where he has given few commands for strong naming assembly without recompilation. That's awesome. I gave a try with a sample DLL. Simply superb!!!!! Only 3 Steps, It worked perfectly.

Here is the Commands,

Go to your Visual Studio command Prompt, then navigate to the folder where you have the DLL to be signed. then type the following commands.

> ildasm MyAssembly.dll /out:MyAssembly.il
> sn -k MyKeyFile.snk
> ilasm MyAssembly.il /dll /key=MyKeyFile.snk

That's it, the DLL is strong named or signed. Now give a test by dropping the dll in to GAC.