[W2000] Een Disk Management environment variable maken

Pagina: 1
Acties:

  • Mystery
  • Registratie: Mei 2000
  • Laatst online: 26-09-2025
Op mijn werk gaan ze voor buitendienst medewerkers externe USB hd's kopen.
Ik heb er nu een voor me om te testen. Deze Maxtor 5000LE (80Gb USB2.0 externe hd) heeft een handige one touch backup knop maar mijn baas wil dit via een batch job doen. Vraag me niet waarom :)

Hij begint zelf even een job te schrijven en zegt daarna: " ... maak er maar wat moois van. succes.". Op de computer waar ik nu zit staat deze externe hd genoteerd als g: schijf aangezien er op d:, e: en f: een jaz drive, cd speler en cd brander staan.
In de job heeft mij baas neergezet: set BckDrive=G:
Ik weet al dat dit bij de buitendienst medewerkers niet gaat werken omdat die (uitzonderingen daargelaten) na het plaatsen van deze externe hd hem zullen terugvinden onder e: (ze hebben alleen een cd speler). Nu kan ik wel heel makkelijk in de bovengenoemde regel de G: veranderen naar E: maar ik wil iets meer speling hebbben. En problemen met de uitzonderingen buitensluiten. Daarom dacht ik aan een environment variable.

Het probleem: de enige plek waar ik de drive letter terug kan vinden is in Disk Management maar dan weet ik weer niet hoe ik hier een environment variable van kan maken.
Iemand een tip? OF een betere manier om in een batch job een variabele drive letter aan te duiden? Mijn baas het zelf laten doen gaat niet werken :)

[ Voor 3% gewijzigd door Mystery op 17-07-2003 14:32 ]

Battle.net tag


Verwijderd

je zou iets kunnen proberen met het label van de schijf (label usbdrive ofzo) en voordat je de bckdrive set aan de hand van het label de schijfletter van de usbdrive probeert te achterhalen. maar ik heb ff geen idee hoe dat te doen :)

ik zal het vanavond wel ff testen.

  • Mystery
  • Registratie: Mei 2000
  • Laatst online: 26-09-2025
Ik zat al aan zoiets te denken. Het label wat deze externe hd krijgt is hetzelfde als wat de interne hd heeft. Namelijk: Local Disk. Dat maakt het ietsjes moeilijker. :)

Of bedoel je soms de label bij de Device Manager?

Ben wel benieuwd of je iets kan vinden, uiteraard alvast bedankt voor de moeite die je neemt. Sta zelf nu even met de handen in het haar en zon groot vraagteken boven me hoofd :)

Battle.net tag


Verwijderd

Hoi,

Ik las dit bericht en ben zelf maar 's wat gaan proberen en mischien heb je hier wat aan. Dit stukje script werkt op basis van het disklabel, je moet er dus voor zorgen dat je de backupdisks allemaal een (hetzelfde) label geeft. Verder heb je de command line utility find.exe nodig, maar dat is nog altijd standaard aanwezig in 2000/XP.

Op alle letters die in de for regel staan word een actie uitgevoerd. Wat gebeurd er, er word eerst een dir commando uitgevoerd, hier staat namelijk ook het disklabel in, over deze dir word find losgelaten die zoekt naar de string BckDrive. Mbv een errorlevel kun je controleren of een actie gelukt is of niet. Bij een geslaagde find word de variabele BckDrive gevuld.

Helaas ging het niet helemaal lekker met cdrom drives waar geen cd in zit, je krijgt dan een popup "there is no disk....".

Suc6 drmee,

Michel


-------------------------------
@echo off

:LetsGo
for %%a in (C D E F G H) do if exist %%a:\ call :process %%a
goto end

:process
dir %1: /w | find /i "BckDrive">nul
If %errorlevel%==0 set BckDrive=%1:
goto :eof

:end
echo %bckdrive%
----------------------------------

Verwijderd

Mystery schreef op 17 July 2003 @ 15:31:
Ik zat al aan zoiets te denken. Het label wat deze externe hd krijgt is hetzelfde als wat de interne hd heeft. Namelijk: Local Disk. Dat maakt het ietsjes moeilijker. :)

Of bedoel je soms de label bij de Device Manager?

Ben wel benieuwd of je iets kan vinden, uiteraard alvast bedankt voor de moeite die je neemt. Sta zelf nu even met de handen in het haar en zon groot vraagteken boven me hoofd :)
zoals hier boven al staat je zal elke disk van een label moeten voorzien.

local disk = no label :)

het probleem met een lege cd is simpel op te lossen door eerst er
"if exist %1:\" ervoor te zetten.

edit: lol dat stond er al... ik krijg iig geen popup :)
overigens find zat volgens mij al in dos :)

[ Voor 10% gewijzigd door Verwijderd op 17-07-2003 19:43 ]


  • Mystery
  • Registratie: Mei 2000
  • Laatst online: 26-09-2025
Maar dan moet ik elke drive van te voren configgen en dat is extra werk :)
In W2000 wordt dat ding direct geinstalleerd.
edit:
Ik ga zo testen of dat ook werkt met een account zonder administrator rechten. Doh. :)

Dus zou ik willen dat ik niet eerst iets op de schijf moet zetten of iets dergelijks maar meteen de hd met de medewerker meegeven.

Battle.net tag


Verwijderd

Het backup proggie - als het klaar is - kopieer je dat dan naar alle werkstations van de buitendienst medewerkers? Of geef je dat op diskette mee? Of stuur je dat toe per e-mail met een handleiding erbij?

Waarom zet je dat backup proggie niet voor uitlevering op de USB harddisk? Daardoor zou je gebruik kunnen maken van de huidige directory vanwaar de batch file gestart wordt, dan ben je van dat zoek probleem af (je hoeft ook geen label te wijzigen).

En waarom zou het zoveel werk kosten om elke hd eerst te initialiseren op je eigen PC? Reken eens uit hoeveel werk het kost om dit probleem uit te zoeken en hoe weinig tijd het kost om 1 voor 1 elke hd even aan je USB te pluggen en er een eenvoudige batchfile naartoe te kopiëren.

  • Mystery
  • Registratie: Mei 2000
  • Laatst online: 26-09-2025
Als het via een pakketje zou kunnen (automated) en ik fysiek niets hoef te doen behalve de hd uitleveren dan ben ik tevreden. Het kan ook op de manier die jij voorstelt alleen daar was ik bij mijn topicstart al achter :)

Ik ga nog wel even wat proberen en anders kom ik terug op G: vervangen door E: en de uitzonderingen binnen laten komen.

Battle.net tag


Verwijderd

zoals hier boven al staat je zal elke disk van een label moeten voorzien.

local disk = no label

Dat is niet waar bovendien reageert het script alleen maar op de string "BckDrive", als find hierop een errorlevel=0 teruggeeft. Het maakt niet uit wat andere disks voor label hebben. Dus alleen het labelen van de BckDrive moet genoeg zijn.

Verwijderd

Verwijderd schreef op 18 July 2003 @ 10:01:
zoals hier boven al staat je zal elke disk van een label moeten voorzien.

local disk = no label

Dat is niet waar bovendien reageert het script alleen maar op de string "BckDrive", als find hierop een errorlevel=0 teruggeeft. Het maakt niet uit wat andere disks voor label hebben. Dus alleen het labelen van de BckDrive moet genoeg zijn.
dat is wel waar... tik maar eens chkdsk / dir of label op een drive met die naam...

maar idd, je zal neem ik aan dat batchje moeten kopieren naar de usbdrive... dat kan je ook met een batch doen die gelijk het label van de usbdrive zet :)

btw het batchje zou wel fout gaan als je een tweede usb drive aankoppelt... de laatste usbdrive wordt dan geset als bckdrive :)

[ Voor 10% gewijzigd door Verwijderd op 18-07-2003 10:26 ]


  • Eric
  • Registratie: December 2000
  • Laatst online: 11-05 14:24
Je kan het natuurlijk ook uit de registry halen, type maar eens:
code:
1
reg query HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices

En dan daar wat uit filteren...

Verwijderd

hmm, dan weet je nog steeds niet welke schijf de backupdisk is....

  • Eric
  • Registratie: December 2000
  • Laatst online: 11-05 14:24
Maar goed, op wat voor manieren kan je anders een schijf herkennen?
Grootte? Label? Typenummer?
Al deze dingen zullen vast wel ergens anders in de registry staan, het is alleen een kwestie van zoeken...
Ik bedoel, je kunt vast wel aan de hand van de gegevens die je zo krijgt verder zoeken

  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Ga anders eens met WMI aan de slag, en bekijk de properties van de Win32_LogicalDisk eens - misschien dat je hiermee het onderscheid kan maken.

Google eventejs voor "scriptomatic" om een begin te krijgen.
Pagina: 1