Sunday, February 24, 2013

A day Hacking and Cracking Office 2013



A day with Office 2013! It was a wonderful experience installing Office 2013 and taking a peek at its new sky drive facility! To be honest I am using a pirated version of Office 2013!

Installation was very smooth on my Windows 8 PC. Later on I found an activator or can be said as a crack which is to be used for activating the Office 2013. My fun turned to be misery when I realized that the crack is not working for me since I installed my office 2013 in my ‘G’ drive.

Whole of a sudden it was terror for me! Now what?!?! Should I get back to my previous version of Office or should I reinstall Office 2013 in my ‘C’ drive after uninstalling some application?!?!
Now at this point my Misery turned into fun guess what I thought of writing my own Crack for Office 2013 so that I can fix it once and for all! And why not share it with other peoples too who might be having same problem.

Slowly and slowly I started to look for loop hole and the way to hack Office 2013! Later by noon time I found some ways and wrote my own first Crack application for Office 2013 and voila it’s working!!!

You can find the source code for the same below:


If you are interested in the EXE then please click here (from Rapidshare) to download the zip file and then extract it.

To use this crack you must be having KMS emulator or qemu running on your machine and then execute my crack. Everything will go fine!


This is how it should look when you run it!



 
Enjoy Office 2013 for free!

Sorry my post was down for some time due to Infringement Notification you know from whom! ;)

Please do not use this post for illegal purpose!

Sunday, May 20, 2012

Change color of Visual Studio Text Editor


Change color of Visual Studio Text Editor

 

Every young developer likes to play around with the tools they use for development! Moreover we have always learned programming in Turbo C compiler which has a blue background. But Visual studio is altogether different! And what if you are a black hat? You must be liking Black background most of the time?
So want some change in visual studio text editor? Then follow bellow mentioned steps its plain and simple!
1.       Open Visual Studio (for me its Visual Studio 2010)
2.       Now Go to menu bar on top and select Tools - > Options - > Environment - > Fonts and Colors
3.       Now you must be getting a window similar to this!


4.       Now once you get this window try changing the Item foreground color to White and Item background color to Black Now for trial just click on Ok!
5.       Now you should be getting the background color and foreground color just as shown in bellow screen!
  6.       Now once you have mastered all the option you can simply try your own combination!
7.       Otherwise you can stick up to bellow mentioned combination
a.      Plain Text – White
b.      Line Numbers – Silver
c.       Comments  – 213,0,213 {R,G,B} (Purple)
d.      Identifier  – 253,223,57 {R,G,B}  (Mustard)
e.       Keyword  – 244,122,0 {R,G,B}  (Orange)
f.        Operator – White
g.      String – Lime
h.      User Types  – 179,179,0 {R,G,B}  (Mustardy)
Well! Hope that was satisfactory!
Reference:
MSDN - http://msdn.microsoft.com/en-us/library/ms165337.aspx

Saturday, February 19, 2011

ASP .Net Web Handlers




ASP .Net Generic Handlers

Generic handlers are also called as web handlers. Just as ASPX files can be compiled on the fly (just-in-time), so can handlers. Generic handlers have an extension of ASHX. They contain classes that fully implement IHttpHandler. They're convenient in the same way ASPX files are convenient. You simply surf to them and they're compiled automatically.
Now you would probably have a question in your mind that “why should I use a generic handlers when I can do same thing using web service? “ Now if you know web service needs a consumer event or page to consume its output but in case of Generic Handler you do not need a consumer service. You just can browse through the page where IHttpHandler will do the rest of the work for you or maybe you are in a situation where you need output from something without calling any function, in such scenario web handlers are very handy!
So suppose you want to start using a web handler you can learn to use the same thing from here:
My point is to help people know things as easily as possible so I use copy paste since everything is available in internet! Ctrl+C and Ctrl+V the most prominent tool!
My main reason to come across Web handlers is due to auto complete feature in my project where I was not allowed to use Ajax since I work in a domain which is mainly linked to banking sector, where security and machine speed is considered at high end! In short there are lot of bankers who are very high profiled and they don’t have high configuration machine and they have requirement of security and high functional application with less trouble. So I was enforced to use Jquery.
Ah!! I was at auto complete. Now you must have seen in www.google.com when you type something you get the rest of the things coming up in text box! Ya that is auto complete. Now this one I got it from some site which seems to be worthy for me http://www.aspsnippets.com/Articles/Using-jQuery-AutoComplete-Plugin-in-ASP.Net.aspx try it out!
So Happy Learning!

Sunday, January 16, 2011

How to develop an application from the Scratch?

Pre-requisite:

  1. You should know to copy paste (Ctrl+C and Ctrl+V). This helps to increase your speed since there is no point in reinventing the wheels.
  2. You should know OOPS .If you don't know OOPS refer to this section before proceeding further (http://www.codeproject.com/KB/architecture/OOP_Concepts_and_manymore.aspx). Now you must be knowing basics of OOPS and how to apply it.
  3. Once you are done with OOPS you should know what is Three-Tier Architecture? If you don't know what is Three-Tier Architecture you can refer to this link http://www.codeproject.com/KB/architecture/three_tier_architecture.aspx .In today's world all application is build in Three-Tier and N-Tier architecture. So following this structure is most important since it reduces programming complexity and redundant coding as well as helps to maintain integrity and consistency.
  4. Now if you want to Most Valued Professional then you should follow a Coding Standard. I have chosen a best coding standard specified by dotnetspider.com http://www.dotnetspider.com/tutorials/CodingStandards.doc here is it!
  5. You must have noticed by this time that I am copy pasting most of the contents and links from most of the sites since this is available easily. So without explaining itself you should know how to search using search engine.
  6. You should know how to create a database either in Ms Access, Ms SQL Server or Oracle.
  7. You should have good knowledge of programming either .net or free sources such as Java.
  8. As well as you should know how to use IDE such as Visual Studio or Eclipse or Net Beans.

Application Development

  1. This is the simplest phase of a project. Once you have done with the Pre-requisite you would be having good knowledge about OOPS and programming so in no time or with less time you will be able to make an Application.
  2. The first and most important thing you need to know is what you are going to develop. You should have a proper idea in your mind about how thing should flow.
  3. The other important part if you are developing an application for a client you should cull out entire proper requirement from your client so that you can develop application efficiently if you have not done the same in Software Engineering Phase otherwise simply ignores this.
  4. Now you must choose a language to use during software development. For my flexibility I am choosing C# .net so that I get most of the content easily available in internet as most of the developer stick with this. Remember Copy Paste!
  5. Now you should make
    1. Database (Ms Access, SQL Server or Oracle)
    2. DAL (Data Access Layer)
    3. BAL (Business Access Layer) or BLL (Business Logic Layer)
    4. UI (User Interface)
    5. You can follow the same as shown in this sample project http://www.codeproject.com/KB/vb/N-Tier_Application_VB.aspx. Just follow this structure you will be able to reach proper end. Now in this DAL should be made first then BAL or BLL then UI. As per the sequence.
  6. I hope you have used proper coding standards! Now your application would be able to run at most of the condition. Now slowly and slowly you can enhance your application if you have used proper coding standards as I have mentioned.

Code Enhancement:

  1. When you go for a bigger application you should always make sure that you should not use stored procedure just to avoid SQL injection. Instead you can validate the same with the help of replace ' with '' and trim.
    For Eg.:

    String QueryString(String str)

    {

    Return Str.Replace("'","''").trim();

    }

    http://www.4guysfromrolla.com/webtech/061902-1.shtml as shown in this link you can make a Common.cs file (in case you are choosing C#) containing such validations in DAL.
  2. Always remember you should not mix up programming logic with database logic. Always keep them at there on place.
There are several such tips for development which I will be explaining in my coming articles.

Sunday, March 21, 2010

4G Technology Our Future....

We all are the prominent users of mobile technology. At present 2G Technology (GSM) is widely used worldwide. The problem with 2G technology is that the data rates are limited. This makes it inefficient for Data Transfer applications like video conferencing, music or video downloads, etc. To increase the speed various new technologies have come into picture. The first is 2.5G (GPRS) and second is 2.75G (EDGE) technologies that allows data transfer at a better rate than 2G and recently 3G (WCDMA/UMTS) technology has come into picture. The maximum theoretical data transfer with this 3G technology is 2Mbps (practically it could be a 384Kbps max or even less).


4G refers to the fourth generation of cellular wireless and is a successor to 3G and 2G standards. The 4G technology which is at its infancy is suppose to allow data transfer upto 100Mbps outdoor I.e while moving and 1Gbps indoor I.e while on stable position.4G is capable of providing users with streaming high-definition television, the content of a DVD-5 (for example a movie) can be downloaded within about 5 minutes for offline access. The main objective of the 4G technology is to accommodate the Quality of Service and rate requirements set by forthcoming applications like wireless broadband access, Multimedia Messaging Service (MMS), video chat, mobile TV, HDTV content, Digital Video Broadcasting (DVB), minimal services like voice and data, and other services that utilize bandwidth.




For getting Quality of Service 4G working group has set some standards such as spectrally efficient system (in bits/s/Hz and bits/s/Hz/site) , High network capacity: more simultaneous users per cell, smooth handoff across heterogeneous networks (that means there won’t be any call failure if there is change in network), Seamless connectivity and global roaming across multiple networks, High quality of service for next generation multimedia support, Interoperability with existing wireless standards (so that the old model cell phone can also be used with the new network without any changes) , An all IP packet switched network.




As described in 4G consortia including WINNER (Wireless-World-Initiative-New-Radio) and WWRF (Wireless World Research Forum), where WINNER is a consortium to enhance mobile communication systems and a key technology based approach has summarized and considered points as "Coverage, radio environment, spectrum, services, business models and deployment types, users".




The principal technologies used are :
  • Baseband techniques:
    1. OFDM: To exploit the frequency selective channel property
    2. MIMO: To attain ultra high spectral efficiency
    3. Turbo principle: To minimize the required SNR at the reception side
  • Adaptive radio interface
  • Modulation, spatial processing including multi-antenna and multi-user MIMO
  • Relaying, including fixed relay networks (FRNs), and the cooperative relaying concept, known as multi-mode protocol

Unlike 3G, which is based on two parallel infrastructures consisting of circuit switched and packet switched network nodes respectively, 4G will be based on packet switching only. This will require low-latency data transmission.

By the time that 4G is deployed, the process of IPv4 address exhaustion is expected to be in its final stages. Therefore, in the context of 4G, IPv6 support is essential in order to support a large number of wireless-enabled devices. By increasing the number of IP addresses, IPv6 removes the need for Network Address Translation (NAT), a method of sharing a limited number of addresses among a larger group of devices, although NAT will still be required to communicate with devices that are on existing IPv4 networks.

The current 4G service providers in the world are Clear, Sprint & T-Mobile and some other very few worthy to be counted on our fingers. But these services are not full fledge and it is available in only few cities across the world like Atlanta, Charlotte, Chicago, Philadelphia etc.

Where as in India current technology being used is 2G and 3G, where as 3G is only provided by only BSNL & MTNL service provider. Any how these technology has not fully flourish since MTNL is still testing its connection in Delhi. Moreover BSNL 3G service charges Rs. 1/MB for limited type connection and Rs. 3000 Monthly for Unlimited connection.

comparing 4G technology with 3G technology we can easily find that resource utilization is less hence we can expect low cost if 4G technology is implemented in India. According to a recent news item, China has decided to move to 4G networks, bypassing 3G. Since there are many problems in allocating 3G spectrum to telecom networks and in setting up 3G mobile networks at high costs and China have been examining these issues since 2003.

Some of the mobile phone that support 3G technology are like Nokia, Lure, Motorola, BlackBerry where as some of the mobile phone that support 4G technology are like HTC, iPhone, Motorola. So its not difficult adopt to changing technology with a little bit of high cost for a new Mobile Phone!!

Anyhow who does not want a 1Gbps connection...!! Everyone love’s to have the fastest technology on there hands!! so lets hope for the 4G connection to be launched in India as soon as possible like it happened in China!! Since other service providers did not launch 3G so we can still have a hope..!!


- Palakal Bridewin Durandose

B.E.(I.T)

Monday, November 2, 2009

Query Processing & Deductive Database

Case Study: Query Processing & Deductive Database

Query processing:



The retrieval of information from a database according to a set of retrieval criteria, the database itself remaining unchanged.

In the context of a specific query language, the technique of translating the retrieval criteria specified using the language into more primitive database-access software, including a selection among different methods to choose the most efficient in the particular circumstances.

We now give an overview of how a DDBMS processes and optimizes a query. We first discuss the communication costs of processing a distributed query; we then discuss a special operation, called a semijoin, that is used in optimizing some types of queries in a DDBMS.

1. Data Transfer Costs of Distributed Query Processing:

In a distributed system, several additional factors further complicate query processing. The first is the cost of transferring data over the network. This data includes intermediate files that are transferred to other sites for further processing, as well as the final result files that may have to be transferred to the site where the query result is needed. Although these costs may not be very high if the sites are connected via a high-performance local area network, they become quite significant in other types of networks. Hence, DDBMS query optimization algorithms consider the goal of reducing the amount of data transfer as an optimization criterion in choosing a distributed query execution strategy.

We illustrate this with two simple example queries. Consider the relations EMPLOYEE and DEPARTMENT.

There are three simple strategies for executing this distributed query:

1. Transfer both the EMPLOYEE and the DEPARTMENT relations to the result site, and perform the join at site 3. In this case a total of 1,000,000 + 3500 = 1,003,500 bytes must be transferred.

2. Transfer the EMPLOYEE relation to site 2, execute the join at site 2, and send the result to site 3. The size of the query result is 40 * 10,000 = 400,000 bytes, so 400,000 + 1,000,000 = 1,400,000 bytes must be transferred.

3. Transfer the DEPARTMENT relation to site 1, execute the join at site 1, and send the result to site 3. In this case 400,000 + 3500 = 403,500 bytes must be transferred. If minimizing the amount of data transfer is our optimization criterion, we should choose strategy 3.

2. Distributed Query Processing Using Semijoin:

The idea behind distributed query processing using the semijoin operation is to reduce the number of tuples in a relation before transferring it to another site. Intuitively, the idea is to send the joining column of one relation R to the site where the other relation S is located; this column is then joined with S. Following that, the join attributes, along with the attributes required in the result, are projected out and shipped back to the original site and joined with R. Hence, only the joining column of R is transferred in one direction, and a subset of S with no extraneous tuples or attributes is transferred in the other direction. If only a small fraction of the tuples in S participate in the join, this can be quite an efficient solution to minimizing data transfer.

3. Query and Update Decomposition:

In a DDBMS with no distribution transparency, the user phrases a query directly in terms of specific fragments. For example, consider another query Q: "Retrieve the names and hours per week for each employee who works on some project controlled by department 5," which is specified on the distributed database where the relations at sites 2 and 3 are shown in the figure and those at site 1 are shown in the figure as in the earlier example. A user who submits such a query must specify whether it references the PROJS5 and WORKS_ON5 relations at site 2 or the PROJECT and WORKS_ON relations at site 1. The user must also maintain consistency of replicated data items when updating a DDBMS with no replication transparency.

On the other hand, a DDBMS that supports full distribution, fragmentation, and replication transparency allows the user to specify a query or update request on the schema of the figure just as though the DBMS were centralized. For updates, the DDBMS is responsible for maintaining consistency among replicated items by using one of the distributed concurrency control algorithms. For queries, a query decomposition module must break up or decompose a query into subqueries that can be executed at the individual sites. In addition, a strategy for combining the results of the subqueries to form the query result must be generated. Whenever the DDBMS determines that an item referenced in the query is replicated, it must choose or materialize a particular replica during query execution.

To determine which replicas include the data items referenced in a query, the DDBMS refers to the fragmentation, replication, and distribution information stored in the DDBMS catalog. For vertical fragmentation, the attribute list for each fragment is kept in the catalog. For horizontal fragmentation, a condition, sometimes called a guard, is kept for each fragment. This is basically a selection condition that specifies which tuples exist in the fragment; it is called a guard because only tuples that satisfy this condition are permitted to be stored in the fragment. For mixed fragments, both the attribute list and the guard condition are kept in the catalog.

Deductive Database:

A deductive database system is a database system which can make deductions (ie: conclude additional facts) based on rules and facts stored in the (deductive) database. Datalog is the language typically used to specify facts, rules and queries in deductive databases. Deductive databases have grown out of the desire to combine logic programming with relational databases to construct systems that support a powerful formalism and are still fast and able to deal with very large datasets. Deductive databases are more expressive than relational databases but less expressive than logic programming systems. Deductive databases have not found widespread adoptions outside academia, but some of their concepts are used in today's relational databases to support the advanced features of more recent SQL standards.

Deductive databases and logic programming:

Deductive databases reuse a large number of concepts from logic programming; rules and facts specified in the deductive database language Datalog look very similar to those in Prolog. However, there are a number of important differences between deductive databases and logic programming:

· Order sensitivity and procedurality: In Prolog program execution depends on the order of rules in the program and on the order of parts of rules; these properties are used by programmers to build effective programs. In database languages (like SQL or Datalog), however, program execution is independent of the order or rules and facts.

· Special predicates: In Prolog programmers can directly influence the procedural evaluation of the program with special predicates such as the cut, this has no correspondence in deductive databases.

· Function symbols: Logic Programming languages allow function symbols to build up complex symbols. This is not allowed in deductive databases.

· Tuple oriented processing: Deductive databases use set oriented processing while logic programming languages concentrate on one tuple at a time.

Sunday, November 1, 2009

OODBMS (Object Oriented Database Management System) Basics

OODBMS System

An object database (also object-oriented database) is a database model in which information is represented in the form of objects as used in object-oriented programming.

Object databases are a niche field within the broader DBMS market dominated by relational database management systems (RDBMS). Object databases have been considered since the early 1980s and 1990s but they have made little impact on mainstream commercial data processing, though there is some usage in specialized areas.

When database capabilities are combined with object-oriented (OO) programming language capabilities, the result is an object database management system (ODBMS).

Today’s trend in programming languages is to utilize objects, thereby making OODBMS ideal for OO programmers because they can develop the product, store them as objects, and can replicate or modify existing objects to make new objects within the OODBMS. Information today includes not only data but video, audio, graphs, and photos which are considered complex data types. Relational DBMS aren’t natively capable of supporting these complex data types. By being integrated with the programming language, the programmer can maintain consistency within one environment because both the OODBMS and the programming language will use the same model of representation. Relational DBMS projects using complex data types would have to be divided into two separate tasks: the database model and the application.

As the usage of web-based technology increases with the implementation of Intranets and extranets, companies have a vested interest in OODBMS to display their complex data. Using a DBMS that has been specifically designed to store data as objects gives an advantage to those companies that are geared towards multimedia presentation or organizations that utilize computer-aided design (CAD).

Some object-oriented databases are designed to work well with object-oriented programming languages such as Python, Perl, Java, C#, Visual Basic .NET, C++, Objective-C and Smalltalk; others have their own programming languages. ODBMSs use exactly the same model as object-oriented programming languages.

Advantages:

  • The main benefit of creating a database with objects as data is speed.
  • OODBMS are faster than relational DBMS because data isn’t stored in relational rows and columns but as objects.
  • Objects have a many to many relationship and are accessed by the use of pointers.
  • Pointers are linked to objects to establish relationships.
  • Another benefit of OODBMS is that it can be programmed with small procedural differences without affecting the entire system.
  • This is most helpful for those organizations that have data relationships that aren’t entirely clear or need to change these relations to satisfy the new business requirements.
  • This ability to change relationships leads to another benefit which is that relational DBMS can’t handle complex data models while OODBMS can.

Disadvantages:

  • Slower and more difficult to formulate than relational.
  • Lack of interoperability with a great number of tools/features that are taken for granted in the SQL world, including but not limited to industry standard connectivity, reporting tools, OLAP tools, and backup and recovery standards.
  • Lack a formal mathematical foundation, unlike the relational model, and this in turn leads to weaknesses in their query support.

Applications:

Object databases based on persistent programming acquired a niche in application areas such as engineering and spatial databases, telecommunications, and scientific areas such as high energy physics and molecular biology. They have made little impact on mainstream commercial data processing, though there is some usage in specialized areas of financial services. It is also worth noting that object databases held the record for the World's largest database (being the first to hold over 1000 terabytes at Stanford Linear Accelerator Center) and the highest ingest rate ever recorded for a commercial database at over one Terabyte per hour.

Another group of object databases focuses on embedded use in devices, packaged software, and real-time systems.