[Webinar] Streamline your web hosting managementRegister Today

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 283
  • Last Modified:

How to Distrubut files to users.

System - NT Server 4.0 / NT Workstation 4.0
I want to distribute several files to all domain users, I would like recommendation on the best methods of doing this.
1 Solution
The simplest way to do this is to use login scripts. Each time someone logs in the script should be run. Simple batch files will do.  Each user must have the login script selected in theoir profile and the scripts must be in the following directory of each Domain controller  (c:\%winroot%\system32\repl\import\scripts) The profile is modified with user manager for domains under the profile button (typically "script name".bat)
Please enter any further help you may need.
There are other ways to do this but this is prossibly the simplest.
jav33Author Commented:
Thanks Tedsenn,
I had considered this to be my first choice but not the only one. I would like to wait on other ideas.
There is also a batch file run from a system that uses net use command to map a drive of the selected system, then pushes the file to the PC.  If your network changes at all this becomes a pain to keep the PC names updated.
Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

If login scripts of all users is only one and the same, then just put files in a folder, share it with

Everyone (All)(All)

and add a line to login script file to map the folder to say Z:. On each users machine, upon logon, the user will get files in Z:

IF each users' login script is different, it is a painful job to modify each script. But there is no alternative to that ..

Handy HolderSaggar maker's bottom knockerCommented:
no better way than login scripts, after all, this is how M$ do it with SMS.
be careful to use "if exist" to avoid copying the file twice.
Keep in mind BUB that if you're trying to distribute a pile of files or a really large file, login scripts are usually run by the entire company between 8-9AM so you could cause quite the traffic jam if you try to send it to everyone then.

Then again you could use your $600000 HP DTA system!  Or is that just a dust collector now?

har har har ho ho ho hee hee hee

I tend to use SMS and set the expiry date to the same day as you are sending the files.
The SMS invokes a package installer that prompts the user upon logon to install a selected package given to them by the system administrator via SMS. They have two options, install or don't unless you force them to by selecting an expiry date then they have no choice.
Check out the SMS help on the server or BackOffice CD's.
Could do something as follows (untested)

For push deployments:

two batch Files
deploy.bat and copyfiles.bat

@echo off
if /I "%1"=="/D" goto domain
if /I "%1"=="/T" goto textfile

if "%2"=="" goto currentdomain
for /f "tokens=1 eol=_" %%a in ('net view /DOMAIN:%2') do if NOT "%%a"=="The" if NOT "%%a"
=="Server" call copyfiles.bat %%a %3

goto end
for /f "tokens=1 eol=_" %%a in ('net view') do if NOT "%%a"=="The" if NOT "%%a"
=="Server" call copyfiles.bat %%a

if "%2"=="" goto error
for /f "tokens=1" %%a in (%2) do call copyfiles.bat %%a %3

goto end

echo "Syntax:"
echo "Deploy.bat [/D [domainname]] [/T textfile] [/V versionNumber]
echo "Where textfile contains list of computer names"
echo "SourceFiles should be placed in C:\Source"
echo "Version Number is a number that placed onto Target Machines as versionNum.ver .   If this file exists on target then no copying will occur to machine"



@echo off
for /f "tokens=2" %%a in ('net use * %1\c$') do if NOT "%%a"=="command" set drv=%%a
if NOT "%2"=="" if NOT EXIST %drv%\%2.ver xcopy /s /C /E /H /R c:\Sources\. %drv%
net use %drv% /delete

for a login script you coudl just do so,mething similar to copyfiles.bat but mappiong drive to Netlogon ie

for /f "tokens=2" %%a in ('net use * %LOGONSERVER%\Netlogon') do if NOT "%%a"=="command" set drv=%%a

etc, etc

If you are worried about bandwidth use for simultaneous downloads, and permissions issues, then a batch file allong the lines of

net start Scheduler
set time=now+rand(4800)
at %time% call copyfiles.bat

Where rand is a little prog to generate a random number.

Hope this helps

go with ajoconnor's advice if you can get the company to use SMS 2.0.  The install program with that thing is very powerful, you won't need to do anything but run an exe and all company standard settings will be in place.  You can even do those tough oracle legacy apps with it.
jav33Author Commented:
pete perry, ajoconnor
Keep in mind guys that I asked this question because we do not have a functional desktop administration package.
Thanks for you input.
jav33Author Commented:
After doing some brain storming I decided to give you the points for a detailed answer and a great idea.
I will be using DEPLOY.BAT to do the initial file copy to the majority of the users at a convenient time of the day and I will then add the command to the logon script to let the server handle the rest of the users that I may miss.
(canadiense)This will decrease the logon traffic considerably.
I have the same problem may be more difficult, because I want to install a program to more than 900 clients which my program developed by Visual basic and serves SQL server and Oracle databases and in any part of this program it uses Crystal Report for reporting so I have to install visual basic and SQL ,Oracle client components and crystal on these computers and every time that the program changes I have to repeat this installation roll please help me if there is a good way to install this program and its components to these computers.
Thanks a lot

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now