Coding things..

Captain Pooka

Daemon Poster
Messages
1,108
Alright... so we're in the cycle, or always are going to be in the cycle, of replacing computers where I work. We switch out everything... including the hdd so we have to take screen shots of the desktop, mapped drives, printers, ect. We have to copy their signatures and setting files for outlook... just a full replacement.

I want to make something that will do all of this stuff for me. I can figure out how to code it, I just want to know what it would be the most efficient in. I may have a few questions about it, but I should get most of it done myself.

Visual Basic, C++.. I don't know what to use. Any suggestions?

-Q

I would need something that could take screen shots and stuff. I was going to do this in a regular .bat but I don't think you can take screen shots in CMD.

A small run down on what I want it to do.

Run>CMD> ipconfig /all - take a screen shot of that.
Open mycomputer blah blah blah take a ss of all of that.
Paste all of those SShots in M$Word or something.... and save that where I tell it, see below.

Go to C:\Documents and Settings\Their User Name (I'm going to have a problem with that part... these computers are on a domain. Here I was thinking of having it where you can enter stuff into the code... like there's a little box that, before hand, prompts you what the username,computername, is and where you want to store the copied files. It will use that information to do this stuff...) Copy the outlook folders and everything else I need it to copy and paste it where I tell it.

I need it to switch the computer to DHCP, after it copied the IP of course through ipconfig.

Now I was thinking it would have it say "Shut Down Now" .... and you have to click it to end the process.. That way if there's something else I need to do I can do it before I switch it out.

This is the trickey part. I don't know if all of the programming languages can do this.. if any.

When it does IPCONFIG /alll it shows you the name, if it's DHCP enabled, and the IP and all of the other stuff. I was wondering if this program could pull the Computer Name and IP from that list and store it. That way on the new computer it would just paste it in there.

Also if a program can map drives? Like maybe it wouldn't even have to take a SS of them... it just asks you to enter all of the mapped drives... you enter them and it stores it and adds them to the new computer. Same with the Network printers... All you have to do to add network printers is run \\server\printername and it's done.

Now for the second half of the program

It would add all of that stuff

It would run Outlook (To get the Outlook folders in their C:\Documents and Settings\Username\Application Data... whatever) And I would have it create their email... the process is just clicking next four times.

Then it would paste all of the needed files it copied into the right places (Which would be the same as the old computer... because it should still be the same path)

Well, that's all I can think of for now. Anyway... if it can do all of that, that would be awesome. I guess the only thing I don't know about is the storing of IP Addresses, Computer Name and all of that stuff. Also it should add it to the domain... ;)


Thanks so much for reading all of this :p

-Q
 
Hiya,

What you have described seems perfectly possible to me - but I don't think you're approaching it in quite the right way. Do you genuinally want the screenshots of ipconfig output and suchlike, or is it just the IP address, computer name etc. that you're interested in? If someone asked me to code an app to find the IP address and computer name for example, I could do this dead easily in Java. I'd never think about running ipconfig and capturing the output though! Yes it's possible, but it's far far more work than is necessary and it's a nasty, very platform dependant way of doing things.

It may help if you restated exactly what you need to do, but leave out the ways that you know of doing it currently (i.e. "I want an email sent to a particualr user containing x, y and z" rather than "I want to run ipconfig, capture the output from that" and so on.)
 
Alright, thanks bud.

We're ona domain, each computer has a designated computer name and IP address. I'm replacing the older computer with a newer computer. Older computer is computer 1, newer computer is computer 2.

I want to be able to walk up to the old computer and do this list of things:

-Copy some of their folders from Applications and Data/ Local Settings/
-Copy their desktop
-I need to Capture their IP Address, Computer Name, and whether they are on DHCP or not - To put it on the new computer.
-I need to capture what network drives they have:
\\server\pub P drive.... ect.
-I need to capture their pinters, local and network. I know the local I'll have to install.
\\server\OARL2 (printer)
-Then I need the computer to be renamed whatever it is TEMP... like VFACTEMP. I need the IP address to be switched to DHCP.

For Computer Two
-I need it to paste these folders
Some of these folders require programs to be started, Outlook for example. It would have to execute that program before any of this stuff. To configure their account it's just a matter of pressing next a few times, then ok.
-I need to fill in their IP Address/DHCP and Computer Name, manually or not.
-Add their drives
- Add their printers.

I was thinking maybe the executable could ... open My Computer then prompt you for their netwrk drives. Then open up Printers and prompt you for their (network) printers, thenopen up CMD with ipconfig (or whatever) and prompt you for their ip address and computer name. Then it would just fill it in when you put the new computer in.

What I usually do is just take screen shots of everything, paste them in word.. but it in their network drive, along witht he files of course. Have them log on and just paste their stuff, open up the Word document and start working from there.

Thanks

-Q
 
Seeing as this is pretty windows specific, I'd give C# a look. I haven't done a huge amount with it myself, only a couple of minor projects, but if you're doing things like grabbing potential shares and network drives then C# would be my initial language of choice. Sure it'd probably be possible with something like Java, but should be a lot easier in C# (and potentially mean far fewer libraries as well!)

If you've never programmed before, this probably isn't a task you'll want to start with - it doesn't sound horrible but it's no hello world either! You might want to have a look around for some C# people and ask about the feasibility of knocking up an application that does what you need, I doubt it'd take long for an experienced C# programmer to knock something up. My main hurdle would be knowing what libraries to use - I'd have to look most of it up, whereas someone who does the language on a daily basis should just be able to spit it out no problem.

I was thinking maybe the executable could ... open My Computer then prompt you for their netwrk drives. Then open up Printers and prompt you for their (network) printers, thenopen up CMD with ipconfig (or whatever) and prompt you for their ip address and computer name. Then it would just fill it in when you put the new computer in.
This is what you need to stop thinking ;) If such an application was written it should grab ip addresses, computer names, shares and so forth without asking the user to do anything. Whilst it might make more sense in your head to do it the above way, it's most likely a lot more effort for a less automated process!
 
Another option to consider is using Group policy to implement some of these changes. You are in a domain and as such you can "push down" many things using Group Policy. Especially installing programs, and implementing security settings. You can set a .bat file to map the drives as the user's logon script (if they are authenticating to the domain) within Active Directory. Honestly I don't believe that writing your own software to do this is a cost-effective solution.

Here are some other utilites that will help you out:
BelArc Advisor - Documents workstations (HDD space, memory slots, installed software, windows updates, license keys for installed software, user logons, and many other things).
Spiceworks - A great FREE utility for documenting your network. It uses SNMP to learn about your subnet as well as routers, print servers, domain controllers, workstations etc...

Probably one of the best starting points would be to ghost the drives.

My company has been working on a customer management system for a year now (documenting full networks: ip reservations, printer ports, shares, logons, service providers, service calls, support tickets, and automatic documenting of workstations). The reason I bring this up, is that it has been a substantial undertaking that is STILL not complete. There are just too many variables when it comes to users.

Just some random funny I.T. support stuff:
http://theoatmeal.com/comics/computers
Hilarious video maybe NSFW due to language
 
Well, we have so many network drives and not everyone in the department uses them.

We do use Group Policy, but we're trying to get rid of that. It seems to not work until you do gpupdate /force. And when someone installs one of those programs before putting the computer in place, then updates the group policy, everything messes up. Besides, I'm trying to get something passed so we can just put the programs on a RIS image... would be easier.

We have active directory map some of the drives, but there are too many people with different drives on their computer. We would have to make many different sections within every department. I'm going to check out your links ;)

Thanks for the feedback

-Q

Oh yeah, we're working on something that's sort of like ghosting a drive. We're working on creating a recovery of their current drive, then restoring it on their new computer. Of course it would be a different computer and recovering it wouldn't be a problem with drivers. We haven't toyed with it enough. If it works we'll, of course, have all of their files, but maybe we can tell it what to copy (Outlook files and their favorites, things like that).
 
Visual Basic 2010 Express Edition!
If you're going to dig up old, long gone, antiquated and out of date threads (hint: don't) at the very least provide some meaningful information rather than spouting out the name of an IDE.
 
Back
Top Bottom