ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/ns_dev/Python/NinoCode/learning/IntranetCOM.py
Revision: 8
Committed: Sat May 5 04:21:19 2012 UTC (13 years, 10 months ago) by ninoborges
Content type: text/x-python
File size: 2391 byte(s)
Log Message:
Initial Import

File Contents

# Content
1 ## This program will be a com server to the McGuireWoods intranet Firm Dir.
2 ## It will allow for basic IO manipulation. E.i. Setting network shares, Assigning
3 ## network printers...
4 #Eaborges
5 #06.15.02
6
7 import os
8 from win32net import NetUseGetInfo, NetUseAdd, NetUseDel, NetUseEnum
9
10 class ShareControll:
11 #_public_methods_ = ['QueryDrive','MapDrive','DeleteDrive','SplitString']
12 _public_methods_ = ['SplitString']
13 _reg_progid_ = "PythonDemos.MW_COM"
14 _reg_clsid_ = "{1CBECF27-89E4-4E5A-928B-92E11B11B0A9}"
15 def MapDrive(self, letter, share):
16 try:
17 share = u'%s'%share
18 letter = u'%s'%letter
19 NetUseAdd(None,1,{'remote': share, 'local': letter})
20 status = "sucess"
21 except:
22 status = "fail"
23 return status
24
25 def DeleteDrive(self, letter):
26 try:
27 NetUseDel(None,letter)
28 status = "sucess"
29 except:
30 status = "fail"
31 return status
32
33 def QueryDrive(self, letter):
34 try:
35 query = NetUseGetInfo(None,letter)
36 except:
37 query = "Drive not in use"
38 return query
39
40 def SplitString(self, val, item=None):
41 import string
42 if item != None: item = str(item)
43 return string.split(str(val), item)
44
45 if __name__ == "__main__":
46 #os.system('cls')
47 #print "What would you like to do?"
48 #print "1. Query a drive mapping."
49 #print "2. Delete a drive mapping."
50 #print "3. Add a new drive mapping."
51 #print "4. Add a printer mapping."
52 #print
53 #menuSelect = raw_input(">>? ")
54 #if menuSelect == "1":
55 # test = raw_input("give me a letter: ")
56 # print ShareControll.QueryDrive(test)['remote']
57 #if menuSelect == "2":
58 # remove = raw_input("What drive would you like to remove? ")
59 # print ShareControll.DeleteDrive(remove)
60 # print remove,"has now been deleted."
61 #if menuSelect == "3":
62 # drive = raw_input("give me a letter: ")
63 # share = raw_input("Now what share would you like to give it? ")
64 # print ShareControll.MapDrive(drive,share)
65 #else:
66 # print "Sorry that option is not yet avalible..."
67 print "Registering COM server..."
68 import win32com.server.register
69 win32com.server.register.UseCommandLine(ShareControll)