Solved

How can you create a list from a folders contents that is auto updated?

Posted on 2009-07-07
6
184 Views
Last Modified: 2012-05-07
I need to have a list of the contents of a directory  automatically updated in an Access database  is there anyway to do this?

If not, does anyone have any other suggestions on how I may be able to accomplish that

0
Comment
Question by:PCoulter
  • 3
  • 2
6 Comments
 
LVL 5

Assisted Solution

by:mredfelix
mredfelix earned 50 total points
ID: 24799493
i would read the files output them to a csv file and run it as a schedule task.

or you can create a script to monior the change in the folder
/* Create the FileSystemObject */

fso = new ActiveXObject("Scripting.FileSystemObject");
 

/* Point the Object to a specific folder */

fsofolder = fso.GetFolder("C:\\temp");
 

/* get a collection of the files contained in that folder */

colFiles  = fsofolder.Files;
 

/* Create an Enumerator so that we can move through the collection */

fc = new Enumerator( colFiles );
 

/* Create a variable to store an output message in */

var msg = "";
 

/* Loop through the Enumerator and add each item to our variable */

for (; !fc.atEnd(); fc.moveNext() ){

 msg += fc.item() + "\n";

}
 

/* Show the user the results */

WScript.Echo( msg );

Open in new window

0
 
LVL 5

Accepted Solution

by:
Adam Ray earned 450 total points
ID: 24809961
mredfelix, what language is that in?  I.E.  I don't do any scripting in Access, so I don't know if that will run or not, but I do know it's won't work as a stand-alone vbscript (.vbs) file.

The code below (with a bit of modification) is from http://www.go4expert.com/forums/showthread.php?t=927
You can just drop it in a .vbs and it will create a .txt file with all of the files in the directory, one entry per line.

There are lots of options on things you can include in the listing.  Listing files in subdirectories is quite possible, but it does get more complicated.  Modifing the script on this page to output to a file rather than to console will do the trick: http://www.microsoft.com/technet/scriptcenter/resources/qanda/oct04/hey1020.mspx

Once you have the file you can then import it into Access.

But if you want something that is completely automated you can use and ODBC connection from the VBscript and write the information directly to the Access database.  There should be plenty of examples of that out there if you search for it.  


On Error Resume Next

  Dim fso, folder, files, NewsFile,sFolder

 

  Set fso = CreateObject("Scripting.FileSystemObject")

  sFolder = "C:\temp"

  Set NewFile = fso.CreateTextFile(sFolder&"\FileList.txt", True)

  Set folder = fso.GetFolder(sFolder)

  Set files = folder.Files

 

  For each folderIdx In files

    NewFile.WriteLine(folderIdx.Name)

  Next

  NewFile.Close

Open in new window

0
 
LVL 5

Expert Comment

by:mredfelix
ID: 24811255
it is a vbs script and its not a complete script...
0
Superior storage. Superior surveillance.

WD Purple drives are built for 24/7, always-on, high-definition security systems. With support for up to 8 hard drives and 32 cameras, WD Purple drives are optimized for surveillance.

 

Author Comment

by:PCoulter
ID: 24813341
I heard somewhere that I may be able to create a file from DOS to place in the folder that would automatically update any changes made within the folder.... anyone know anything about this?

I am unfamiliar with the where I should place the scripts mentioned above...
0
 
LVL 5

Expert Comment

by:mredfelix
ID: 24818015
you can run it as a schedual task anywhere

its the  sFolder  which is the key as that says what folder it is

0
 
LVL 5

Assisted Solution

by:Adam Ray
Adam Ray earned 450 total points
ID: 24818473
The Windows file system does not have the ability to send out any type of alert when a folder changes.  However, you can make a script (or use an existing application someone else wrote) that runs in the background all the time and monitors to folder for changes every X seconds.  There are examples of this on Microsoft's Script Center, try searching for "Hey Scripting Guy"  This solution is almost certainly the type of thing that you were thinking about as a "file from DOS," since many of these solutions run from the command prompt (i.e. DOS window.)

If you want something like that, as opposed the above scripts possibilities are more intended to be run via a scheduled task from every X _minutes_ to every other week (or however long.)  But just to be sure you don't get over lapping results I wouldn't run the scheduled task flavor more than frequently than ever 10 minutes.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A brief overview to explain gateways, default gateways and static routes OR NO - you CANNOT have two default gateways on the same server, PC or other Windows-based network device. In simple terms a gateway is formed when a computer such as a serv…
Sometimes you might need to configure routing based not only on destination IP address, but also on a combination of destination IP address (or hostname) and destination port number. I will describe a method how to accomplish this with free tools. …
I designed this idea while studying technology in the classroom.  This is a semester long project.  Students are asked to take photographs on a specific topic which they find meaningful, it can be a place or situation such as travel or homelessness.…
Concerto provides fully managed cloud services and the expertise to provide an easy and reliable route to the cloud. Our best-in-class solutions help you address the toughest IT challenges, find new efficiencies and deliver the best application expe…

919 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now