A new breed to OS – WebSoft
May be you have read the following article of mine in which i have given an idea about what could be the possible future of Operating Systems and Web. At that time the web was not that much mature compared to today and now that concept has moved one step forward with number of online softwares other that OS so that you don’t need to install things on your system. Here are few
A nice collection of online Office suite – Word processor, SpreadSheet, Calendar, Notebook.
One of the best contender to Google’s online office product and i believe some are really better than what google have developed. Besides those, it is providing online project management and other such features as well.
One of the awesome online web application. If i’d have to rename it i’ll rename it as “Online Photoshop” – yes and i hope you got it what does this application do.
A nice online free tool to build websites without any cumbersome coding. A replacement of early versions of FrontPage and DreamWeaver.
I’ll updating this post regularly with new applications – and don’t forget to share with me
.
Unable to connect remotely to Microsoft SQL Server 2005
I am working on “database synchronization” between Sql Server 2005 (running on windows server 2003) and MySql (running on *nix). Before starting developing my own component i thought to digg around and find some already made tool instead of “re-inventing” the wheel. So by then i found this tool.
It’s nice tool but while configuring it according to the documents i faced an error message
"[Microsoft][SQL Server 2000 Driver for JDBC]End of stream was detected on a read."
Man, i was so stuck in this error and was not able to get any work around then somehow i got to know that may be SQL Server 2005 does not allow REMOTE CONNECTION. When i tested and it was true. SQL Server 2005 does not allow remote access through TCP or NAMED PIPES. You have to allow these connection and you can do this by following this tutorial
How to configure SQL Server 2005 to allow remote connections
Windows Live Messenger – Sign in problem
I got this error today when i was trying to sign in using WLM (Windows Live Messenger)
You cannot sign in to Messenger. Additionally, you may receive the following error message: We were unable to sign you in to the Messenger at this time. Please try again later.
To let us try and troubleshoot the problem, click the Troubleshoot button.
Error code: 80048820
Extended error code: 80048412
while digging around, i found the solution which is quite simple. Just make sure that you have properly set your system date accurately.
Who is a hacker
First of all, I’d like to clear all those people who have opened this topic to read something about “how to break into others computer”. This article isn’t any way intended towards breaking into others computer. So if you are here to read something un-ethical then let me tell you that you are at wrong place.
The focus of this article is just to provide the *real meanings* of *hacking*, which is mostly miss interpreted by Pakistani people or more precisely every that person who is new to computer field.
Hacking isn’t anyway means that you break into other’s computer or you break some security rules or you steal some private information. Hacking is something the most passionate and the most attractive word for *Programmers*. It’s really hard for me to explain what really hacking means, the best way I can make you familiar with this words is by this quote
Hackers are just programmer except that they know a lot more than normal programmers.
So if I rank a programmer from grade 1 – 10 (10 being highest) then a normal programmer can be of grade 3-4 and a programmer with knowledge of 8-9 will surely fall into this category which I call *Hacker*.
I guess now you know the meaning what really Hacking means. But I guess you’ll be now confuse with the thinking that if it is the definition of a hacker then why all people say that *hacking means to break into someone computers*. Let me explain it to you.
The person who will be competent enough to break into someone others computer is intelligent enough to know all those security holes of an operating system and know the *CORE PROGRAMMING* concepts to exploit those holes; ultimately gaining access of others computer or breaking some security rules. So he is basically someone who has extra knowledge of OS and Programming.
Similarly, there can be a person who may have extra knowledge of networking (Protocols, Internet) other than programming – then he can surely do those un-ethical things which are referred here as *Hacking*.
So every person, having extra knowledge of some particular domain with programming and who can use the that in depth knowledge to do something which is not *Directly* allowed in that domain is a hacker
There are several books available in the market like *Hacking Unix* or *Hacking Ubuntu*. Does any of this book means that you’ll be taught to break into a *NIX (Unix) OS? No, the real purpose of these books is to teach you the *IN DEPTH* knowledge of these OS. Which means you’ll be just at the higher grading rank than a simple OS user.
I hope this article have cleared the wrong meaning attached with the word *Hacking*
Hibernate Dialect Error – Hibernate 3.x
If you are using hibernate 3.x and you are getting Dialect error for using this mySql Dialect
net.sf.hibernate.dialect.MySQLDialect
Then change the above line to
org.hibernate.dialect.MySQLDialect
to solve the problem. Actually, with the release of Hibernate 3.x the package net.sf is no longer exist and you have to use the Dialect which has been shifted to the new package.
If you are using Hibernate 3.x with spring then remember to use Hibernate3 package for hibernate objects. The package “hibernate” is for 2.x which use the old package hierarchy.
Download Google Video’s
Hi,
Just today while wandering on the internet and by request of one of my friend, i realized that the method i told about to download google videos is no longer working. eew! .. We need something else to work out, so googled around and found 2 things.
Tutorial 1
- First of all make sure that there is bookmark Toolbar is shown on Firefox, if not then click anywhere near the address bar and select Bookmark Toolbar.
- Now, click on the bookmark toolbar and click on “New Bookmark”
- In the “Name” specify anything you want, i use “Google Video DL”
- in the location bar .. paste this
javascript:if(frames[0].document.getElementById('macdownloadlink')!=null){window.location.href=frames[0].document.getElementById('macdownloadlink')}else{alert('You are not visiting Google Video or the current video can\'t be downloaded.')}; - Press OK
- now open any video on google page and just when it starts buffering, click on the bookmark link, you’ll get the option to download the file as avi
Here is the other one, relatively simple.
- Go to google videos and open any video link.
- on your right side, you can see “Download Video Manually” link. Click on it and you’ll get GVP file to download, relatively of small size, i.e in some KB.
- When the GVP file has been downloaded, use any TEXT EDITOR which support ANSI (Notepad will work fine) to open it.
- in the file you’ll see
url:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx… text, copy this and paste in your broswer. The browser will prompt you for download the AVI file
- Working na!!
Have FUN!!!!
Let’s get Familiar with Delphi Files
Before starting writing something in the code window, it’ll be great to get some familiarity with Delphi file types. If you create a delphi project you’ll see files with different extensions. Here are their explanations.
-
.PAS – These are the main files in which you’ll write most of your code. The extension comes from the first three letters of the name of Delphi Ancestor "Pascal".
-
.DFM – These are the files in which your GUI based information is saved i.e; any form that you’ll create will have 2 files, 1 .dfm and other one .pas. the .dfm file will contain the information about controls, where those has been placed, their link and the .pas file will contain the code, you’ll wrote.
-
.DCU – Some sort of compiler specific files for debugging etc. Will be created each time you compile your project.
Why Choose Delphi
That was the very first thing that came in my mind when i started working on delphi. We have VB6, .NET, Java to make Desktop GUI then why Delphi?
I guess this will be the same question (if you are new to Delphi) thinking; why delphi?
The application that we were creating is for "all" users. So we can expect that a user may be having very good system or may be he is still on P-II or P-III. So, deploying an application which needs some extra SDK (.NET, Java) of some XXMB to run an application of size not more than 5MB is a hassle.
So, why we should not we choose VB6. Well, Microsoft is no longer providing support to it’s VB6 and descendant languages. The only focus of MS is now .NET platform. So choosing VB6 for a professional environment will be quite risky. Though i admit that there are enough things available on internet that can provide us enough support, but still the risk factor is there.
Hence, came the option to choose for Delphi. A language that was design to compete the increasing market of VB 6 for Windows platform and then continue its success towards Desktop application (Windows and *NIX). The language was initially designed/architect by Anders Hejlsberg. One of the architect of C# language.
Delphi, besides having all the necessary things required by a good programming language, is also full of enormous support of Windows Platform by using it’s ShellAPI. In simple words, if there is anything on your windows system accessible or usable by Visual C, it is achievable in Delphi as well. Your system level message, events, dlls, ActiveX, whatever that you can ever use in Visual C to make a good application is available here.
Lock/Hide your folders – Fool windowsXP
Hi,
Here is the trick to lock a folder. Suppose there is folder name Games in drive D. (D:\Games). Make a batch file on Drive D: and write the following code in it
CODE
ren games games.{21EC2020-3AEA-1069-A2DD-08002B30309D}
save it as “loc.bat” or what ever you name like. Now, run it (double click it) and you’ll see the folder Games has been changed to “Control Panel” icon. Now if you double click on it, it will open control panel for you, won’t open the actual folder’s contents.
Nice na. Now you want to convert your folder back to games. Make another batch file named “key.bat” and write the following code in it
CODE
ren games.{21EC2020-3AEA-1069-A2DD-08002B30309D} games
Your “control panel” iconed games folder will be renamed to “games” and you’ll be able to access it.
Cool!
I guess you people have enough idea what trick is used. Here is some more KEYS that you can use to fool around our loveable WINXP
CODE
My Computer.{20D04FE0-3AEA-1069-A2D8-08002B30309D}
Fonts.{BD84B380-8CA2-1069-AB1D-08000948F534}
Inbox.{00020D75-0000-0000-C000-000000000046}
URL History.{FF393560-C2A7-11CF-BFF4-444553540000}
Printers.{2227A280-3AEA-1069-A2DE-08002B30309D}
Network Neighborhood.{208D2C60-3AEA-1069-A2D7-08002B30309D}
Recycle Bin.{645FF040-5081-101B-9F08-00AA002F954E}
Internet Cache.{7BD29E00-76C1-11CF-9DD0-00A0C9034933}
Dial-Up Networking.{992CFFA0-F557-101A-88EC-00DD010CCC48}
Desktop.{00021400-0000-0000-C000-000000000046}
Briefcase.{85BBD920-42A0-1069-A2E4-08002B30309D}
Fonts.{BD84B380-8CA2-1069-AB1D-08000948F534}
My Documents.{ECF03A32-103D-11d2-854D-006008059367}
Avoiding cursors in store procedures
I recently has joined a new company in which i have been assigned the task of converting Ms-SQL store procedures to MySql Store Procedures. There has been a number of things irritating in MySQL out of those one is that, you only have on SQLSTATE handler for cursor.
If you have nested cursors then you can’t loop thoroughly. At least that was the case with me. So the problem was that how can i avoid creating nested cursors?
I searched the net and came up with a nice technique.
Suppose, here was the thing that i was using in my cursor and wanted to convert it in non cursor technique.
CREATE virtual CURSOR FOR SELECT * FROM someTable;
Then we make a HANDLER and loop through it.
Now to remove this cursor i made a Temporaray Table, Inserted all the values that i am getting through the above query and then traverse it …
CREATE TEMPORARY TABLE `tempTable` (
`rowId` int(11) NOT NULL auto_increment,
`col1` varchar(8000) default NULL,
`col2` bigint default NULL,
`col3` int(11) default NULL,
`col4` varchar(8000) default NULL,
`col5` varchar (2000) default NULL,
PRIMARY KEY (`rowId`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;INSERT INTO tempTable (col1, col2, col3, col4, col5) (
select * from someTable
);
The actuall thing was pretty complex, i am posting a dumy query just to explain. Now all the data that has been collected using select statement will be inserted in this temporary Table.
Now you have to apply your own logic to traverse through it. Here is mine.
First get the total rows inserted in the temporary column.
SELECT COUNT(*) AS RowCount INTO TotalTableRows FROM tempTable;
You remember that i have used a rowID as primary key and it is autoincremented, this will help us a lot. We will get the min of rowID and increment it, then we will get the record for that incremented value, if the record exist, we will use our logic to utilise the record and increment in the tempRowCount. This loop will continue until we have tempRowCount <= TotalTableRows.
SELECT MIN(rowId) INTO tempRowId FROM tempTable;
WHILE (tempRowCount < TotalTableRows) DO
SELECT col1 INTO tempCol1 FROM tempTable where rowId = tempRowId;
/*Explamation Reference 2*/
IF ISNULL(col1) = 0 THEN
SET tempRowCount = tempRowCount + 1;
-- your business logic
END IF;
SET tempRowId = tempRowId + 1;
END WHILE;
Now you may be wandering what i am doing with ISNULL IF. Well, we are selecting the table with a query having a where clause at RowID (which is autoincremented). Suppose, we don’t have a value against the value 1 but have a value against value 2. In the first case, there will be not data will be selected so the ISNULL IF condition will not execute. I then incremented in temoRowID to make it 2. The select statement execute with some data and the IF ISNULL condition will eventually become true causing it to execute the block.
I may not be good in explanation. But I have tried to give you a good idea.
I’ll try to re-write this topic with more elaboration. Right now, it is enough to give an idea. Thanks.
