Pages

Wednesday, May 16, 2012

Tweak Windows Explorer to make the command window always available

The default behavior for Windows Explorer in Windows 7 and Vista is to display a context menu when you right-click a folder (Figure A). If you hold the Shift key down and right-click a folder, you will get more menu options on the list (Figure B).

Figure A



Context Menu

Figure B



Shifted Context Menu

This behavior is all well and good, but what if you want to have access to the Open Command Window Here command with just a right-click versus the Shift-right-click it requires by default? The answer involves a Windows Registry file edit.

Registry edit


Standard disclaimer: The Windows Registry File is vitally important to the proper operation of the Windows operating system. Please back up the file before you make any registry edits.

In Windows 7, click on the Start button and type regedit in the search box. Click on the regedit.exe file in the list of items and answer the UAC prompt. Once in the registry editor (Figure C), navigate to this key:

HKEY_CLASSES_ROOT\Drive\shell\cmd

Figure C



Registry editor

In the right-hand pane, right-click the Extended key to rename it to anything besides Extended (Figure D). Or you can simply delete the key, but doing so will make it more difficult to return to the default settings. This change adds the feature to drive icons in Windows Explorer.

Figure D



The Extended key

To add the Open Command Window Here feature to folders displayed in Windows Explorer, navigate to this key in the registry editor:

HKEY_CLASSES_ROOT\Directory\shell\cmd

Once again, in the right-hand pane, right-click the Extended key (Figure E) and change the name or delete it completely if you are so inclined.

Figure E



An alternate access to the Extended key

Close the registry editor, and from now on, when you right-click a drive or a folder from within Windows Explorer you will see Open Command Window Here as one of your available options (Figure G).

Figure G



The now-available Open Command Window Here option


Sunday, March 25, 2012

PYTHON APPLICATION ..PART 2

part 2 deals with the server part ie the system..we need a system installed with python and sendkey attribute (make sure both of them are of same version)of python to do it

http://dl.dropbox.com/u/30579529/Bluecon/python/python-2.5.4.msi

http://dl.dropbox.com/u/30579529/Bluecon/python/SendKeys-0.3.win32-py2.5.exe

http://dl.dropbox.com/u/30579529/Bluecon/python/PyBluez-0.15.win32-py2.5.exe

in server side we broadcast a service and wait for client to connect .

after connecting  the server receives the ascii values from the client and server uses the sendkey attribute to make virtual keyboard and mouse movements with respect to received ascii values

/***********code*****************/
from ctypes import *
from bluetooth import *
import string
from SendKeys import *
user32=windll.user32
from ctypes.wintypes import *
import time

LEFTDOWN   = 0x00000002
LEFTUP     = 0x00000004
#  MIDDLEDOWN = 0x00000020
#  MIDDLEUP   = 0x00000040
#  MOVE       = 0x00000001
#  ABSOLUTE   = 0x00008000
RIGHTDOWN  = 0x00000008
RIGHTUP    = 0x00000010

class POINT(Structure):
_fields_ = [("x", c_ulong),
("y", c_ulong)]

def getpos():
global pt
pt = POINT()
windll.user32.GetCursorPos(byref(pt))
return pt.x, pt.y

def move(x,y):
windll.user32.SetCursorPos(x,y)

def up():
x = getpos()[0]
y = getpos()[1]
move(x,y-10)
def down():
x = getpos()[0]
y = getpos()[1]
move(x,y+10)
def left():
x = getpos()[0]
y = getpos()[1]
move(x-10,y)
def rigth():
x = getpos()[0]
y = getpos()[1]
move(x+10,y)

def rightclick():
windll.user32.mouse_event(RIGHTDOWN,0,0,0,0)
windll.user32.mouse_event(RIGHTUP,0,0,0,0)

def leftclick():
windll.user32.mouse_event(LEFTDOWN,0,0,0,0)
windll.user32.mouse_event(LEFTUP,0,0,0,0)

def send(data):
if(data==97):
SendKeys('a')
elif(data==98):
SendKeys('b')
elif(data==99):
SendKeys('c')
elif(data==100):
SendKeys('d')
elif(data==101):
SendKeys('e')
elif(data==102):
SendKeys('f')
elif(data==103):
SendKeys('g')
elif(data==104):
SendKeys('h')
elif(data==105):
SendKeys('i')
elif(data==106):
SendKeys('j')
elif(data==107):
SendKeys('k')
elif(data==108):
SendKeys('l')
elif(data==109):
SendKeys('m')
elif(data==110):
SendKeys('n')
elif(data==111):
SendKeys('o')
elif(data==112):
SendKeys('p')
elif(data==113):
SendKeys('q')
elif(data==114):
SendKeys('r')
elif(data==115):
SendKeys('s')
elif(data==116):
SendKeys('t')
elif(data==117):
SendKeys('u')
elif(data==118):
SendKeys('v')
elif(data==119):
SendKeys('w')
elif(data==120):
SendKeys('x')
elif(data==121):
SendKeys('y')
elif(data==122):
SendKeys('z')
elif(data==65):
SendKeys('A')
elif(data==66):
SendKeys('B')
elif(data==67):
SendKeys('C')
elif(data==68):
SendKeys('D')
elif(data==69):
SendKeys('E')
elif(data==70):
SendKeys('F')
elif(data==71):
SendKeys('G')
elif(data==72):
SendKeys('H')
elif(data==73):
SendKeys('I')
elif(data==74):
SendKeys('J')
elif(data==75):
SendKeys('K')
elif(data==76):
SendKeys('L')
elif(data==77):
SendKeys('M')
elif(data==78):
SendKeys('N')
elif(data==79):
SendKeys('O')
elif(data==80):
SendKeys('P')
elif(data==81):
SendKeys('Q')
elif(data==82):
SendKeys('R')
elif(data==83):
SendKeys('S')
elif(data==84):
SendKeys('T')
elif(data==85):
SendKeys('U')
elif(data==86):
SendKeys('V')
elif(data==87):
SendKeys('W')
elif(data==88):
SendKeys('X')
elif(data==89):
SendKeys('Y')
elif(data==90):
SendKeys('Z')
elif(data==48):
SendKeys('0')
elif(data==49):
SendKeys('1')
elif(data==50):
SendKeys('2')
elif(data==51):
SendKeys('3')
elif(data==52):
SendKeys('4')
elif(data==53):
SendKeys('5')
elif(data==54):
SendKeys('6')
elif(data==55):
SendKeys('7')
elif(data==56):
SendKeys('8')
elif(data==57):
SendKeys('9')
elif(data==43):
SendKeys('+')
elif(data==45):
SendKeys('-')
elif(data==42):
SendKeys('*')
elif(data==47):
SendKeys('/')
elif(data==61):
SendKeys('=')
elif(data==35):
SendKeys('#')
elif(data==44):
SendKeys(',')
elif(data==46):
SendKeys('.')
elif(data==59):
SendKeys(';')
elif(data==58):
SendKeys(':')
elif(data==64):
SendKeys('@')
elif(data==63):
SendKeys('?')
elif(data==32):
SendKeys(' ')
elif(data==13):
SendKeys("{ENTER}")
leftclick()
elif(data==8):
SendKeys("{BACKSPACE}")
elif(data==40):
SendKeys('(')
elif(data==41):
SendKeys(')')
elif(data==38):
SendKeys('&')
elif(data==33):
SendKeys('!')
elif(data==63497):
up()
elif(data==63498):
down()
elif(data==63495):
left()
elif(data==63496):
rigth()
elif(data==63557):
leftclick()
elif(data==63586):
rightclick()

parseStr = lambda x: x.isalpha() and x or x.isdigit() and int(x) or x.isalnum() and x or len(set(string.punctuation).intersection(x)) == 1 and x.count('.') == 1 and float(x) or x
server_sock=BluetoothSocket( RFCOMM )
server_sock.bind(("",PORT_ANY))
server_sock.listen(1)

port = server_sock.getsockname()[1]

uuid = "94f39d29-7d6d-437d-973b-fba39e49d4ee"

advertise_service( server_sock, "BLUECONTROL",
service_id = uuid,
service_classes = [ uuid, SERIAL_PORT_CLASS ],
profiles = [ SERIAL_PORT_PROFILE ],
#                   protocols = [ OBEX_UUID ]
)

print "Waiting for connection on RFCOMM channel %d" % port

client_sock, client_info = server_sock.accept()
print "Accepted connection from ", client_info

try:
while True:
data = client_sock.recv(1024)
if len(data) == 0: break
da=parseStr(data)
send(da)
except IOError:
pass

print "disconnected"

client_sock.close()
server_sock.close()
print "all done"

--------------

here i use a function parseStr to get the integer value form the received string .

later u can use pytoexe attribute in python to convert the server into a python independent running program

Thursday, March 1, 2012

Manually Remove Viruses from Your Windows

Most viruses launch when you log into Windows — they typically call an executable from the registry. In fact, that call will tell you exactly where the virus resides.

Start in the registry.

  • Click Start. Click Run and type: regedit.exe

  • Registry Editor opens. Expand HKEY_CURRENT_USER

  • Then expand Software. Next expand Microsoft.

  • Now expand Windows.

  • Then expand CurrentVersion.

  • Click on the Run folder.


Here you’ll find some of the programs that launch on startup. A rule of thumb: a virus is a randomly generated string that makes no sense.

The real giveaway that this is a virus is the location of the application it’s calling. It’s in the Application Data folder. It launches every time you log in. So no matter how many times you reboot, it comes right back.

Write down where the virus resides. In this case, it’s in the All Users Application Data folder. Then simply right-click the registry key and delete it. Now you haven’t actually deleted the virus, you’ve only deleted the call that launches it, which is doing the minimum. A virus is just a program, after all, so if the virus doesn’t launch it does no harm. But delete the file system anyway.

Now it’s time to go to the Application Data Folder. There is more than one — follow the path exactly as you wrote it down.

if its a VIRUS try the step in SAFEMODE