Sunday, May 27, 2012

.Net 4.5-The End of Microsoft .Net Framework Client Profile





Microsoft had introduced 2 Variants of the .net Frameworks till .Net Framework Version 4,the Complete Framework and the Client Profile which was only a subset of the the Complete Framework.

Why did Microsoft do it?

Since the Complete Framework had a large size Microsoft did not want the END user's to consider it annoying to download the complete framework to run applications developed in .Net.
Certain software's only used some parts of the framework.So client profile was created as a subset of the .Net Framework complete Edition.The client Profile did not support ASP.Net and the Advanced Web Programming.

Was Client Framework a Success?

The Straight forward answer is 'NO'.If you ask why just compare the size of the two packages.

 .NET Framework 4 32BIT + 64 bit Full  - 48.1 MB
 .NET Framework 4 Client Profile-   41.0 MB

Just a 7MB Difference.So this is where it failed,the users will find it comfortable to download the full framework as the sizes have a small difference.This also created confusion among common users regarding the different terms used.

But with the Release of the .NET Framework 4.5 Microsoft is putting an End to the Client Framework model.Microsoft has mentioned about this in their MSDN Article http://social.msdn.microsoft.com/search/en-us?query=compact+&x=0&y=0

Quoting from MSDN

Starting with the .NET Framework 4.5, the Client Profile has been discontinued and only the full redistributable package is available. Optimizations provided by the .NET Framework 4.5, such as smaller download size and faster deployment, have eliminated the need for a separate deployment package. The single redistributable streamlines the installation process and simplifies your app's deployment options.
 Thus us Developers and END Users will find it comfortable to download a single version rather than getting confused with all different versions around.




Saturday, May 26, 2012

The Best 4 Free IDEs for coding programs in C Language

C Language is the Base for all Softwares existing today,it is a powerful language for programming applications which require Low Level System Functions.The Object oriented successor of C is C++ which is considered much easier to program when compared to C because of its Object Oriented Nature.


It is Necessary for Every Programming Aspirant to learn C Language and C should be the primary language you learn because future languages apart from Functional Languages most Imperative Programming Languages use the structure similar to C.


There are Several Powerful and Completely free IDEs(Integrated Development Environments) Available for Developing C Programs which can be simultaneously used for other languages like C++.


Given Below is a List of the Best 4 Free IDEs for Developing Programs using the C Programming Language.


1)Eclipse-CDT(C/C++ Development Tooling):

Eclipse is Popular IDE for Developing Java Applications.It is mainly used for Developing Android Applications by Integrating the Android Plugin. Eclipse IDE has its C/C++ Counterpart called Eclipse CDT Which can be used to Develop both C and C++ Programs.The main feature of CDT is Code refactoring and Syntax Highlighting.



You can Download Eclipse CDT from http://www.eclipse.org/cdt/





2)Pelles C :

Pelles C is a good free Integrated development Environment for developing C programs.
It is available in both 32 and 64 bit versions with support for Windows 7 64 bit editions.It is a good alternative for the Old 16 Bit Borland Turbo C Compiler(TC).


Pelles C is a lightweight bundle of Integrated features.It can be used it to edit source files, icons, cursors, bitmaps, resource scripts
For More Information on Pelles C Please check out this post http://c-madeeasy.blogspot.in/2011/07/pelles-c-good-ide-supporting-windows-7.html




You can Download Pelles C from http://www.smorgasbordet.com/pellesc/





3)Dev-C++ IDE:


Dev-C++ is an Free IDE by BloodShed Software that can be used to Develop C and C++ Programs
Dev-C++ IDE Supports GCC Based Compilers has Profiling Feature.It is also a good IDE Targeted for C/C++ Development.Dev-C++ supports GCC Based Compilers ,has Code Completion Feature and has Inbuilt Profiling.


You can Download Dev-C++ IDE from http://www.bloodshed.net/devcpp.html

4)Code::Blocks:

Code::Blocks is a  free C/C++ IDE which is Open-source and Cross Platform.The main feature its ability to maintain the look and feel across different platforms.It also has Plugin Support to extend the usability.




You can Download Code Blocks IDE from http://www.codeblocks.org/

Tuesday, May 22, 2012

Program to Implement Selection Sort in Java+Explanation



Selection sort is said to be an efficient algorithm when considering small computations involving limited memory/resource but it is quite inefficient when compared to other techniques when huge computations are required.Selection sort is said to be efficient for small list of items because of its simplicity.

The following steps Explains the working of the Selection sort Algorithm


  1. Obtain the Item with the Minimal value from a List/Collection of items
  2. Swap the item with the Item in the first position of the Collection/List
  3. Repeat the Process for the rest of the Items in the Collection


The Following is the Complete Program Source Code in Java for Implementing Selection Sort Algorithm
 import java.io.*;
import java.lang.*;
class array
{
 DataInputStream get;
 int a[];
 int i,j,n;
 void getdata()
 {
 try
  {
   get=new DataInputStream(System.in);
   System.out.println("Enter the limit");
   n=Integer.parseInt(get.readLine());
   a=new int[n];
   System.out.println("Enter the elements in the array");
   for(i=0;ia[j])
   {
    temp=a[i];
    a[i]=a[j];
    a[j]=temp;
   }
  }
 }
 System.out.println("Elements in ascending order is:");
 for(i=0;i=0;i--)
 System.out.print(" "+a[i]);
 }
}
class selectionsort
{
 public static void main(String arg[])
 {
  array obj=new array();
  obj.getdata();
  obj.sorting();
 }
}

Wednesday, May 16, 2012

How to Recover Lost or Forgotten RAR(Winrar) Archive Passwords

RAR Files are common format for compression.It is likely that you forget a Encrypted RAR Password.
RAR Files are secured by strong encryption so it is not easy to recover lost RAR File Passwords.

This Tutorial will teach you how to recover lost RAR File Passwords using a technique called Brute-Force Attack.In this method random passwords of varying length are checked againt the Encrypted Winrar Archive untill the correct password is obtained.This is similar to a person checking possible password,.


Follow these Simple Steps to Recover your Lost RAR File Passwords


1.Download and Install RAR Password Recovery Software from this link  http://www.intelore.com/rar_password_recovery.php


2.Open the Encrypted Archive in RAR Password Recovery




3.Click on the Brute Force Tab and specify the settings,the default settings will check passwords ranging from 0-9 characters and a-z alphabets you can change this.

























4.Click on Start Button to start recovery.Once the password is found you will be shown a window with the password


   











For a Detailed View see the Video Tutorial Below or visit Youtube 
http://www.youtube.com/watch?v=hqNLKqEwUBE








Sunday, May 13, 2012

Quick Sort Program in Java -Explanation+Complete Source Code

Quick-sort is a sorting technique commonly called divide and conquer algorithm. Quick-sort first divides a large array of items into two smaller arrays : the low items and high items(ie:all elements in first array is less than all elements in second). 
Quick sort algorithm involves three steps
  1.  An n element, called a pivot is picked from the array.Pivot is commonly the middle element of the array
  2. Rearrange the array elements such that all elements less than the pivot come before the pivot and all elements greater than the pivot come after the pivot,this step is called array partitioning
  3. Then a recursive sorting of the partitioned arrays is done individually
Following is the complete source code for Quick-sort program in Java.

 import java.io.*;  
 import java.lang.*;  
 class array  
 {  
//c-madeeasy.blogspot.com
  DataInputStream get=new DataInputStream(System.in);  
  int a[];  
  int i,n,h,l;  
  void getdata(int n,int x,int y)  
  {  
  try  
  {  
   a=new int[n];  
   System.out.println("Enter the elements");  
   for(i=0;i<n;i++)  
   a[i]=Integer.parseInt(get.readLine());  
  }  
  catch(Exception e)  
  {  
   System.out.println(e.getMessage());  
  }  
  l=x;  
  h=y;  
  }  
  void sort(int l,int h)  
  {  
  int temp,key,low,high;  
  low=l;  
  high=h;  
  key=a[(low+high)/2];  
  while(low<=high)  
  {  
   while(key>a[low])  
   {  
   low++;  
   }  
   while(key<a[high])  
   {  
   high--;  
  }  
  if(low<=high)  
   {  
   temp=a[low];  
   a[low]=a[high];  
   a[high]=temp;  
   low++;  
   high--;  
   }  
   }  
   if(l<low-1)  
   {  
   sort(l,low-1);  
   }  
   if(low<h)  
   {  
   sort(low,h);  
   }  
  }  
  void display(int n)  
  {  
  System.out.println("Asending order is");  
  for(i=0;i<n;i++)  
  System.out.println(" "+a[i]);  
  }  
  }  
  class quicksort  
  {  
  public static void main(String arg[])  
  {  
   array obj=new array();  
   DataInputStream get=new DataInputStream(System.in);  
   int n,x,y;  
   n=0;  
  try  
   {  
   System.out.println("Enter the limit");  
   n=Integer.parseInt(get.readLine());  
   }  
  catch(Exception e)  
   {  
   System.out.println(e.getMessage());  
  }  
  x=0;  
  y=n-1;  
  obj.getdata(n,x,y);  
  obj.sort(x,y);  
  obj.display(n);  
  }  
  }  

Saturday, May 12, 2012

Program to create Parser for IF-ELSE Statement using Flex(Lex) and Bison(Yacc)


'IF -ELSE' Statement is commonly used in all programming languages to implement various logical operations.
The control flows by checking a specific condition-if('cond) then expression if the condition is not satisfied the control flows 
to the else statement else-expression.


Parsing if-else statement is done by definitions of a grammar which uses Regular expressions.Compiler construction tools Flex(Lex) and Bison(Yacc) in Linux(Ubuntu) are used to define the grammar and basic operations .On compilation a c program is generated which is actually the parser for 'IF-ELSE' statement.A parser generates a Parse tree for Intermediate code generation.


Following are complete source codes for Flex and Bison programs to create a Parser for 'IF-ELSE' Statement which accepts valid 'IF-ELSE' Statements
 /*PARSER FOR IF ELSE STATEMENT*/  
 //c-madeeasy.blogspot.com  
 /*YACC PROGRAM*/  
 %{  
 #include<stdio.h>  
 #include<stdlib.h>  
 %}  
 %token num alpha LT GT EQ LE GE NE AND OR INC DEC END  
 %left '+''-'  
 %left '*''/'  
 %right '^'  
 %right '='  
 %nonassoc UMINUS  
 %nonassoc IF  
 %nonassoc ELSE  
 %left GE NE LT GT LE EQ  
 %left AND OR  
 %%  
 S:ST END{printf("\n Accepted\n");exit(0);}  
 ST:IF'('F')''{'ST'}'%prec IF  
  |IF'('F')''{'ST'}'ELSE'{'ST'}'  
  |E';'  
  |E';'ST  
  F:C LO C  
  |C  
 LO:AND  
  |OR  
  C:E RELOP E  
  |E  
  E:alpha '='E  
  |E'+'E   
  |E'-'E   
  |E'*'E   
  |E'/'E  
  |E'^'E  
  |'('E')'   
  |'-'E %prec UMINUS  
  |alpha  
  |num  
  |alpha INC  
  |alpha DEC  
 RELOP:LT  
    |GT  
    |EQ  
    |LE  
    |GE  
    |NE  
   ;  
 %%  
 #include"lex.yy.c"  
 int main()  
 {   
 yyparse();  
 yylex();  
 return END;  
 }  
 yyerror(char *s)  
 {  
  printf("\nError");  
 }  
 /*LEX PROGRAM*/  
 %{  
 #include"pgm4.tab.h"  
 %}  
 %%  
 "if" {return IF;}  
 "else" {return ELSE;}  
 "&&" {return AND;}  
 "||" {return OR;}  
 "<=" {return LE;}  
 ">=" {return GE;}  
 ">" {return GT;}  
 "<" {return LT;}  
 "!=" {return NE;}  
 "++" {return INC;}  
 "--" {return DEC;}  
 "==" {return EQ;}  
 [0-9]+ {return num;}  
 [a-zA-Z]+ {return alpha;}  
 [\t];  
 [\n];   
 "$" {return END;}  
 .  {return yytext[0];}  
 %%  
 /*OUTPUT  
 if(i>0)  
 {  
 a=0;  
 c++;  
 }  
 else  
 {  
 h;  
 }  
 $  
 Accepted  
 if(a>l)   
 {  
 w;  
 }  
 $  
 Accepted*/  


Monday, May 7, 2012

Program to Construct Interpreter for Arthemetic Expression Evaluation using Bison and Flex


Arithmetic expressions are common in programming languages,this program is a sample implementation of an Interpreter to evaluate basic arithmetic expressions like a*b,a+b etc .This is accomplished by using compiler construction tools Flex(Lex) and Bison(Yacc) in Linux operating system environment.The following are complete source codes for two  Flex and Bison Programs to create an evaluator for Arithmetic Expressions

 /*YACC PROGRAM*/  
 %{  
 #include<stdio.h>  
 %}  
 %token num alpha END  
 %left '+''-'  
 %left '*''/'  
 %right '^'  
 %nonassoc UMINUS  
 %%  
 S:E END{printf("\n The given expression is valid\n");exit(0);}  
 E:E'+'E  
  |E'-'E  
  |E'*'E  
  |E'/'E  
  |'-'E %prec UMINUS  
  |'('E')'  
  |E'^'E  
  |num  
  |alpha  
  ;  
 %%  
 #include"lex.yy.c"  
 int main()  
 {  
  yyparse();  
  yylex();  
  return 0;  
 }  
  yyerror(char *s)  
  {  
  printf("\nerror\n");  
  }  
 /*LEX PROGRAM*/  
 %{  
 #include "pgm2.tab.h"  
 %}  
 %%  
 [0-9]+ {return num;}  
 [a-z]+ {return alpha;}  
 [ \t]  ;  
 [\n]  ;  
 "$"  {return END;}  
 .    {return yytext[0];}  
 %%  
 /*OUTPUT  
 r+x  
 $  
 The given expression is valid  
 d++c  
 $  
 error*/  

Tuesday, May 1, 2012

Program to create Lexical Analyser for C Programming Language using Lex/Flex

Flex/Lex is a compiler construction tool that can be used to design a compiler.In this example flex is used to create a sample lexical analyzer for c programming language,it can recognize the valid symbols in c programming language including valid programming constructs.
The following is a complete source code Flex/Lex program to implement a Lexical analyzer for C programming language
 letter [a-zA-Z]  
 digit[0-9]  
 %%  
 {digit}+("E"("+"|"-")?{digit}+)? printf("\n%s\tis real number",yytext);  
 {digit}+"."{digit}+("E"("+"|"-")?{digit}+)? printf("\n%s\t is floating pt no ",yytext);  
 "if"|"else"|"int"|"char"|"scanf"|"printf"|"switch"|"return"|"struct"|"do"|"while"|"void"|"for"|"float" printf("\n%s\t is keywords",yytext);  
 "\a"|"\\n"|"\\b"|"\t"|"\\t"|"\b"|"\\a" printf("\n%s\tis Escape sequences",yytext);  
 {letter}({letter}|{digit})* printf("\n%s\tis identifier",yytext);  
 "&&"|"<"|">"|"<="|">="|"="|"+"|"-"|"?"|"*"|"/"|"%"|"&"|"||" printf("\n%s\toperator ",yytext);  
 "{"|"}"|"["|"]"|"("|")"|"#"|"'"|"."|"\""|"\\"|";"|"," printf("\n%s\t is a special character",yytext);  
 "%d"|"%s"|"%c"|"%f"|"%e" printf("\n%s\tis a format specifier",yytext);  
 %%  
 int yywrap()  
 {  
 return 1;  
 }  
 int main(int argc,char *argv[])  
 {  
 yyin=fopen(argv[1],"r");  
 yylex();  
 fclose(yyin);  
 return 0;  
 }  
 /*INPUT PROGRAM  
 #include<stdio.h>  
 void main()  
 {  
  printf("\nhai\n");  
 }  
/*
OUTPUT

#  is a special character
include is identifier
< operator 
stdio is identifier
.  is a special character
h is identifier
> operator 

void  is keywords 
main is identifier
(  is a special character
)  is a special character

{  is a special character
 
printf  is keywords
(  is a special character
"  is a special character
\n is Escape sequences
hai is identifier
\n is Escape sequences
"  is a special character
)  is a special character
;  is a special character

}  is a special character
*/

How to Restart Windows Explorer after a Crash using Task Manager



Windows Explorer is exposed to frequent crashes and hangs. After explorer hangs you can use Task Manager to End the explorer process but the Start Menu will disappear.To restart explorer follow the simple steps listed below

  • Press Ctrl+Alt+Delete to start Task Manager
  • Click on File>New Process
 
  • Type in explorer and Click Ok
  • Explorer will restart and Start Menu will Reapper

Which is the Best Photo Watermarking Software

Photo Theft is becoming more and more common in the web with the outburst of social websites like Facebook,Google Plus and Image sharing se...