I did this one for Andy from the Evolt list.
It is a basic WSH script that allows the user to
drag multple files onto an icon and the files will be
transferred directly to the server.

Download

It requires the free ASPInet Com object from ServerObjects.
You can download it from them here, or directly from me here.
Before you can use this script you need to register ASPINet.
Put the dll file in the zip in a safe directory, like c:\winnt\system32 and type:
regsvr32 ASPINET.DLL
then hit enter. It will tell you it was successfully registered.
Then run the MARKINET.EXE file from the zip and you are ready to go.

Just put the dragftp.js on your desktop and drag a file onto it.


Here is the code: with some comments:
// email me at jon@nospam.ozline.net. (remove nopam) Feel free to use this sell it, or whatever. 

var args = WScript.Arguments;
var ftpObj = new ActiveXObject('AspInet.FTP');
var transferASCII = 1;
var transferBINARY = 2;
var ftpsite = "Put IP or hostname here"; //Example: www.oztek.net or 127.0.0.1
var remoteDirectory = "/"; // If you need the file to go in a subdir, put it here. For instance "/jon" would put it in my dir
var username = "username"; // ftp username
var password = "password"; // ftp password


function alert(text) {
	WScript.Echo(text);
}

function getFileName(filePath) {
	fileNamePos = filePath.lastIndexOf("\\");
	fileName = filePath.slice(fileNamePos + 1);
	return fileName;
}

function sendFile(lFile, rFile) {
	var remoteFile = remoteDirectory + rFile;
	var localFile = lFile;
	var transferType = transferBINARY;

	if (ftpObj.FTPPutFile(ftpsite, username, password, remoteFile, localFile , transferType)) {
		alert('FTP upload of ' + remoteFile + ' successful');
	}
	else {
	    alert('FTP upload of ' + remoteFile + ' failed. Last Error was: ' + ftpObj.LastError);
	}
}

// Start script
if (args.count() > 0) {
	for (i = 0; i < args.count(); i++) {
		localFile = args(i);
		remoteFile = getFileName(args(i));
		sendFile(localFile, remoteFile);
	}
}
else {
	alert('No files to send!');
}

var ftpObj = '';