Gå til innhold

kopiere favoritter fra flere brukere


Anbefalte innlegg

hei

 

hadde tenkt meg å laget et VB program som kopierer favoritter fra alle brukerne på pc'en til f.eks c:\backup\<Brukernavn>\favoritter

 

altså trenger programmet å finne ut hvilke brukere som er på pc'en, finne ut hvilke som i det heletatt har favoritter, og så kopiere det til en enklere mappe, med brukerns navn.

 

den må også kunne hente alle brukernes favoritter ved kun å være logget inn på 1 av dem.

 

jeg har egentlig ikke noe utgangs punk her, ettersom jeg ikke vet hvordan man finner info om brukere eller hvordan man bruker VBA til å kopiere filer.

 

det er jo egentlig ikke favoritter som er det mest intresange for meg her, men jeg tar en del backup av forskellige ting som ligger under brukerne, som vanligvis tar alt for lang tid.. hadde vært supert om jeg kunne automatisert prosessen.

Lenke til kommentar
Videoannonse
Annonse

Det enkleste er bare å loope gjennom Documents And Settings for å finne brukerene, deretter å gå inn i Documents And Settings\Brukernavn\Favorites\ og kopiere alt innholdet derfra.

 

Dette burde være greit å gjøre som et lite vbscript, liten vits å bruke Visual Basic for en så enkel oppgave.

Lenke til kommentar

hva mener du med å loope igjennom dokuments and settings?

 

scriptet på jo finne ut hvilke mapper som ligger der, altså hvilke brukere som finnes.

og derreter få inn i den mappen får å hente det jeg trenger

 

(er jeg som er post starter, postet på en pc på jobben uten å legge merke til hvem som var logget inn)

Lenke til kommentar
hva mener du med å loope igjennom dokuments and settings?

 

scriptet på jo finne ut hvilke mapper som ligger der, altså hvilke brukere som finnes.

og derreter få inn i den mappen får å hente det jeg trenger

 

(er jeg som er post starter, postet på en pc på jobben uten å legge merke til hvem som var logget inn)

7923870[/snapback]

 

Ja, loope gjennom mappene som er der...

 

Dim fso, SubFolders, x
Set fso = CreateObject("Scripting.FileSystemObject")

set mainfolder = fso.GetFolder("C:\Documents And Settings\")

Set SubFolders = mainfolder.SubFolders

for each x in SubFolders
'gjør det du skal gjøre.... gå inn i favorites katalogen feks.
wscript.echo x.name
next

 

Noe slikt kan du prøve deg på for å ha litt begynner-hjelp

Endret av tZar
Lenke til kommentar

Her er et vbs-script som looper igjennom documents and settings, sjekker etter mappene "Favoritter" (norsk winXP), skriver til Notepad alle filer som er der og fortsatt der, søker rekursivt i under-mapper og under-under-mapper etc. for å skrive til Notepad alle filer som er der. Fra Notepad kan man så lagre resultatet hvor man vil. NB! Utskriften til Notepad er det ikke lagt mye arbeid i. Den kan sikkert forbedres!

 

strFolder = "C:\Documents and Settings"

Set objFSO = CreateObject("Scripting.FileSystemObject")

Set objFolder = objFSO.GetFolder(strFolder)

Dim c

Set colFolders = objFolder.SubFolders

For Each Folder In colFolders

c = C & folder.name & vbCrLf

Set colFolders1 = Folder.subfolders

For Each colfolder1 In colFolders1

If colfolder1.name = "Favoritter" Then 'XP norsk: Favoritter, Engelsk: Favorites

Set files = colfolder1.files

For Each file In files

c = c & " " & file.path & vbcrlf

next

ShowSubFolders(colfolder1)

End If

next

next

Sub ShowSubFolders(objFolder)

Set colFolders = objFolder.SubFolders

For Each objSubFolder In colFolders

c = c & " " & objsubfolder.name & vbcrlf

Set colFiles = objSubFolder.Files

For Each objFile In colFiles

c = c & " " & objfile.path & vbcrlf

Next

Next

End Sub

Set oShell = WScript.CreateObject ("WSCript.shell")

oShell.run "Notepad.exe"

wscript.sleep 1000

oshell.SendKeys c

Lenke til kommentar
Ja, loope gjennom mappene som er der...

 

Dim fso, SubFolders, x
Set fso = CreateObject("Scripting.FileSystemObject")

set mainfolder = fso.GetFolder("C:\Documents And Settings\")

Set SubFolders = mainfolder.SubFolders

for each x in SubFolders
'gjør det du skal gjøre.... gå inn i favorites katalogen feks.
wscript.echo x.name
next

 

Noe slikt kan du prøve deg på for å ha litt begynner-hjelp

7924591[/snapback]

 

 

takker, veldig enkel å forstå.. men hvordan kan jeg kopiere hele mappen favoritter nå? ved å bruke variabelen x.name som mappe navn til hver loop?

Lenke til kommentar
takker for ditt svar også backup, den fungerer fint, men en smule vanskelig å få oversikten over scriptet og se hva som blir gjort  :)

7931100[/snapback]

 

Hvis du søker litt på nettet på filesystemobject eller fso sammen med vbscript så tenker jeg du får mange treff.

 

Windows Script V5.6 Documentation som kan lastes ned hos MS kan også være kjekk å ha i bakhånd

Lenke til kommentar

Et lite klipp fra dokumentasjonen fra MS

The following example creates a text file in the root directory of drive C, writes some information to it, moves it to a directory called \tmp, makes a copy of it in a directory called \temp, then deletes the copies from both directories.

 

To run the following example, create directories named \tmp and \temp in the root directory of drive C:

 

Sub ManipFiles
  Dim fso, f1, f2, s
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set f1 = fso.CreateTextFile("c:\testfile.txt", True)
  Response.Write "Writing file <br>"
  ' Write a line.
  f1.Write ("This is a test.")
  ' Close the file to writing.
  f1.Close
  Response.Write "Moving file to c:\tmp <br>"
  ' Get a handle to the file in root of C:\.
  Set f2 = fso.GetFile("c:\testfile.txt")
  ' Move the file to \tmp directory.
  f2.Move ("c:\tmp\testfile.txt")
  Response.Write "Copying file to c:\temp <br>"
  ' Copy the file to \temp.
  f2.Copy ("c:\temp\testfile.txt")
  Response.Write "Deleting files <br>"
  ' Get handles to files' current location.
  Set f2 = fso.GetFile("c:\tmp\testfile.txt")
  Set f3 = fso.GetFile("c:\temp\testfile.txt")
  ' Delete the files.
  f2.Delete
  f3.Delete
  Response.Write "All done!"
End Sub

Lenke til kommentar
takker for ditt svar også backup, den fungerer fint, men en smule vanskelig å få oversikten over scriptet og se hva som blir gjort  :)

7931100[/snapback]

En kort oversikt: Det kan lette oversikten om man tar opp mappestrukturen til documents and settings samtidig som man går gjennom scriptet top-down. Da bør man kunne se at i colFolders leggges inn alle mappene i documents and settings. I hver av disse mapper sjekkes så om det finnes en undermappe som heter "Favoritter". Hvis ja, da blir først alle filenes fil-path i disse mapper lagt over i variabelen c. Derpå blir alle filenes fil-path til undermappene i hver "Favoritter"-mappe lagt over i variabelen c i tillegg til det som er der fra før.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...