Avatar billede ttopholm Nybegynder
22. august 2003 - 00:19 Der er 27 kommentarer og
1 løsning

lave en bat fil der kan + 1 på et tal

Jeg har brug for en bat-fil der åbner en fil og lægger 1 til det tal der står der i forvejen.. altså ligesom en counter. og så skal den bagefter lukke igen...
Avatar billede bertelbrander Novice
22. august 2003 - 00:47 #1
Du laver en fil (f.ex count.txt) og skriver et tal (og intet andet) i denne, filen må kun have 1 line.

Så putter du følgende i en fil (f.ex counter.cmd)

<script>
@echo off
if [%1]==[] echo "You must specuify an file"& goto :eof
if not exist %1 echo "The File Does NOT exist"& goto :eof
setlocal
for /F %%I in (%1) do call :do_it %%I %1
endlocal
goto :eof

:do_it
set /A xxx=%1 + 1
echo %xxx% >%2
</script>

Så kører du scriptet med filen med tallet som argumet, f.ex conter.cmd count.txt

Hvis du kører Win9x, går du ned til den lokale PC forhandler og køber Windows 2000 eller XP.
Avatar billede ttopholm Nybegynder
22. august 2003 - 00:52 #2
oki.. de der xxx er det hvor mange tal der må være eller hva
Avatar billede bertelbrander Novice
22. august 2003 - 01:32 #3
Nej, xxx er blot en variabel, det kunne lige så godt være x eller MinEgenPrivateInterneVariabelMedEtMegetLangtOgFjolletNavn.
Tælleren vil lave overflow (til -2147483648) når den når til 2147483647.
Avatar billede ttopholm Nybegynder
22. august 2003 - 01:38 #4
okay.. ved du om count.cmd skal have en tilladelse til at køre.. hvis man har et andet program til at starten den...... Altså at den har rettigheder til det... Det er min mailserver der skal sætte den igang hver gang noget specielt bliver sendt....
Avatar billede bertelbrander Novice
22. august 2003 - 01:46 #5
Nej, det ved jeg ikke. Filer har normalt ikke et "execute permision" flag i windows, men hvordan det er med mailservere ved jeg ikke noget om.
Avatar billede ttopholm Nybegynder
22. august 2003 - 02:21 #6
hvordan giver jeg en fil execute permision
Avatar billede bertelbrander Novice
22. august 2003 - 20:53 #7
Hvorfor tror du at der er nødvendigt at give en fil execute permision, scripet burde kunne køre som det er.
Avatar billede ttopholm Nybegynder
22. august 2003 - 23:57 #8
hmmm... ja det burde det... men skulle lave det om til en .exe fil og se om den kan det...
Avatar billede bertelbrander Novice
22. august 2003 - 23:59 #9
Jeg ikke forstå. Du kan ikke lave scriptet om til en exe fil. Hvad sker der når du kører bat-filen.
Avatar billede ttopholm Nybegynder
23. august 2003 - 00:01 #10
den kan sagtens køre .exe prøvet om den kunne åbne notepad og det gjorde den :-).. kan du lave det ovenstående til en .exe-fil
Avatar billede ttopholm Nybegynder
23. august 2003 - 00:02 #11
Når jeg selv kører den virker den kanon.. tak for det :-) men når programmet skal køre den vil den ikke :-(
Avatar billede ttopholm Nybegynder
23. august 2003 - 00:03 #12
jeg prøvede også bare at lave en bat-fil hvor den oprettede en mappe og det ville den heller ikke
Avatar billede bertelbrander Novice
23. august 2003 - 00:17 #13
Avatar billede ttopholm Nybegynder
23. august 2003 - 00:47 #14
kanon ... skal den skal køres ligesom før.. count.exe count.txt eller hvad
Avatar billede ttopholm Nybegynder
23. august 2003 - 00:47 #15
Øh.. glem det er lidt langsom.. det er jo morgen i nz ligenu...
Avatar billede ttopholm Nybegynder
23. august 2003 - 00:48 #16
smid et svar....
Avatar billede bertelbrander Novice
23. august 2003 - 01:00 #17
Du behøver ikke at angive count.txt som parameter, counter.exe bruger altid count.txt som fil.
Spørgsmål fra nz er gratis.
Avatar billede ttopholm Nybegynder
23. august 2003 - 01:35 #18
takker :-)
Avatar billede ttopholm Nybegynder
23. august 2003 - 02:45 #19
så er jeg tilbage.. Det virker perfekt, altså programmet.. men det andet vil ikke køre den, men hvis jeg sætter programmet til at starte notepad op.. så gør den det.. ved du hvorfor
Avatar billede bertelbrander Novice
23. august 2003 - 02:57 #20
Nej, jeg ved ikke hvorfor. Jeg ved ikke hvad det er du bruger til at køre counter.exe som ikke vil køre counter.exe men godt notepad. Jeg ved ikke noget om servere. Det eneste jeg kan forestille mig er at counter.exe ikke bliver kørt i den mappe hvor count.txt ligger eller at counter.exe bliver kørt i en mappe hvor det ikke har lov til at skrive til count.txt.
Hvad sker der når du forsøger at køre counter.exe?
Kan du fange output fra counter.exe når det bliver kørt? Så kan jeg prøve at udskrive nogle debug beskeder fra counter.exe.
Avatar billede ttopholm Nybegynder
24. august 2003 - 12:26 #21
Har fejlen er det muligt at du kan specificere hvor præcist counter.txt er det er nemlig fejlen. Den skal ligesom specificers til stien.. altså f.eks. c:\counter\counter.txt  programmet kan ikke  finde ud af det.. når det ikke er præcist specificeret
Avatar billede ttopholm Nybegynder
24. august 2003 - 13:37 #22
jeg har rettet i den.. kan du se om jeg har gjort det rigtigt.. kan hentes her
http://www.ttopholm.dk/counter.rar
Avatar billede bertelbrander Novice
24. august 2003 - 13:55 #23
Jeg kan ikke åbne din rar fil.
Du skal blot ændre "count.txt" til hele stien til filen i linien:
fopen("count.txt", "r+t");
Husk at hvis filen ligger i c:\whatever skal du skrive "C:\\whatever\\count.txt"
Har du selv en kompiler? Ellers må du fortælle hvor du vil have count.txt til at
ligge. Eller jeg kan lave en version hvor du angiver stien til filen som parameter.
Avatar billede ttopholm Nybegynder
24. august 2003 - 14:04 #24
Avatar billede bertelbrander Novice
24. august 2003 - 15:03 #25
Der ligger en kompileret version her:
http://home20.inet.tele.dk/midgaard/c2.zip

(Du burde anskaffe dig en C-compiler, der findes en del gode der er gratis.)
Avatar billede ttopholm Nybegynder
27. august 2004 - 20:05 #26
smid et svar
Avatar billede bertelbrander Novice
27. august 2004 - 20:38 #27
Jeg vil stadig ikke have point, accepter dit eget svar.
Avatar billede ttopholm Nybegynder
27. august 2004 - 20:46 #28
takker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester