Gå til innhold

forandre window navn b att løst


Anbefalte innlegg

Videoannonse
Annonse

jeg lagde mulighet for farger en gang...

 

altså at du kan ha farge på 1 og 1 rute...

men hvis du tenkte på ett annet program istedet for cmd, så er jeg usikker på om det lar seg gjøre, men det burde ikke være så vanskelig, alt den gjør er jo å hente saker fra andre filer og printe det på skjermen...

Lenke til kommentar
***tenke***...nei :w00t:

 

Post for å hjelpe, eller komme med gode ideer. Drit i sånne pissposter som du kommer med. tar jo bare noen år å lære seg C...gud....

8515119[/snapback]

 

Det finnes mellomting. F.eks. VB. Eller enda enklere HTA med VBS. Faktisk er det ENKLERE enn batch hvis man skal gjøre mer avanserte ting enn bare "echo hei"...

Lenke til kommentar
enkelt og enkelt.. :ermm:

8519011[/snapback]

 

I VB kan du tegne vinduet. Og så kan du kjøre alle vanlige batch kommandoer med Shell("kommando").

 

Så det blir å lære seg å skrive "Shell()" så har du så og si like mye funksjonalitet som du har i batch + MYE ekstra som ikke er mulig i batch.

 

Hvis det fortsatt hørtes for avansert ut så gir jeg opp.... :-P

Lenke til kommentar
Tja, jeg lette dette selv en stund - jeg endte opp med denne. Det er begrenset hva man kan gjøre, men man kan legge til egne bakgrunner, gjøre vinduet transparent og litt diverse andre småting.

8515221[/snapback]

 

Dette fungerer kun på min egen PC? Virket ikke som noen form for "saving" var tilstede ;)

Lenke til kommentar
Tja, jeg lette dette selv en stund - jeg endte opp med denne. Det er begrenset hva man kan gjøre, men man kan legge til egne bakgrunner, gjøre vinduet transparent og litt diverse andre småting.

8515221[/snapback]

Dette fungerer kun på min egen PC? Virket ikke som noen form for "saving" var tilstede ;)

8536625[/snapback]

Dette kan brukes på andre pcer også, sålenge du kopierer over programmet og medhørende filer. Programmet fungerer slik at du setter de instillingene du vil ha på consolet i console.xml, deretter lager du en .batch fil som starter programmet med instillingene du har satt i console.xml.

 

Jeg har lagt ved et eksempel, her har jeg endret konfigurasjons-filen til conf.cxe, så har jeg jeg satt et eget ikon vha. konfigurasjons-filen. Disse instillingene vil bare vise consolet med transparent bakgrunn, dvs. dersom du har et bakgrunnsbilde så vil du se dette i console.

 

Når du starter console.bat, så vil også det vanlige cmd -vinduet sprette opp, dette kan du skjule ved å lage en .exe -fil av console.bat med f.eks. Quick Batch File Compiler, der kan du sette en instilling som gjør at vinduet kjøres i bakgrunnen.

 

 

Det er også mulig å lage forhåndsdefinerte batch -script som kjøres med egendefinert utseende, gi beskjed dersom du trenger hjelp til dette. Det er ikke mye mer som skal til.

 

 

Dette er som nevnt, en ganske kronglete løsning - men hvis en er like sta som meg, så ender man fort opp med slike løsninger ;)

Lenke til kommentar

Det er mange her som prøver å dra Batch Script ganske mye lenger en det det var i utgangspunktet laget for å gjøre (kjøre programmer og OS instruksjoner i rekkefølge)

De burde prøve seg på et programmeringsspråk istedet.

 

Husker jeg drev med sånn batch scripting i 1995 eller noe, husker batmnu fulgte med Giga 95 som menyen til CD-en, som jeg synes var kjempegøy å tulle med.

 

Men nå har jeg vokst fra det, det er ingen fremtid i det.

 

Dere kan evt prøve PowerShell fra Microsoft, hvis dere på død og liv ikke tørr å engang se på et programmeringsspråk som VB (VB Script funker glimrende til å konfigurere Windows) eller Python, selvom det er mye å tjene på det, og lite å tape.

Hverken VB Script eller Python har datatyper, så da slipper man å tenke på det i det minste.

Lenke til kommentar

det jeg syns var så greit med batch var man kan få hjelp med alle kommandoene i cmd med "kommando"/? veldig greit. ;)

 

har i det siste begynt å skjønne at man får ikke til allverden med batch og tenkte kanskje prøve litt med vbs, dette vet jeg fint lite om og skulle gjerne hatt noe lignende hjelp og kommando/? for å komme i gang. noen tips? :hmm:

 

hvis dette blir for OT skal jeg pelle meg ut og lage min egen tråd. ;)

Lenke til kommentar

Les noen VB tutorials.

VB Script er ikke så fryktelig vanskelig å lære seg.

 

Jeg kan vise noen grunn prinsipper:

 

Variabler

Samme idé som %VARIABELNAVN% i Batch script, men i VB Script er dette veldig mye bedre utviklet.

En variabel i VB Script har uansett datatypen Variant, denne tar 20 Byte minne.

Den kan lagre:

Objekter (retur verdien fra CreateObject funksjonen)

Integer (byte, integer(16-bit), long(32-bit))

Flyttall (single(32-bit), double(64-bit) og currency(128-bit...litt rart i og med at FPU-en er 80-bit))

Strukturer (typer) (samme som struct i C)

Tekststrenger (vær obs på at det blir én byte per bokstav, selvom Windows NT er natively Unicode)

Arrays (liste)

 

Man trenger ikke deklarer variabler først, men det er en god vane.

Man deklarer slik.

Dim [variabelnavn]

(hvis dette er et array, Dim [Variabelnavn]()

Samme som SET [Variabelnavn]=

MEN: en ting som er litt tåpelig i VB Script, er at her er det en forskjell om dette er et objekt, eller en primitiv verdi:

SET MittObjekt = [Verdi]

f.eks. SET MittObjekt = CreateObject("Object.SomeType")

 

Deretter setter man verdier til dem på en ganske standard måte.

[Variabelnavn] = [verdi]

for å konvertere mellom verdier, bruker man CInt, CLng, CSng, CDbl, CObj, CStr

som konverterer til sine typer.

f.eks.

i = CInt(1.3) ' Dette blir da 1, den runder alltid ned hvis jeg ikke husker feil)

 

Man kan osgå skrive

X = Y + Z * (PI / 180)

Samme som SET /A X=%Y + %Z * (%PI% / 180) i Batch Script

For å øke med 1, gjør man slik

X = X + 1

 

Operatører:

+

-

*

/

^ (Opphøyd i, her er det en forvirringssak, fordi dette tegnet brukes til noe HELT annet i andre språk, nemlig Exclusive Or)

& (Legge sammen strings, istedet for å addere verdien)

Mod (modulus, altså rest etter en divisjon, f.eks. 3 Mod 4 = 3

 

Funksjoner:

 

En funksjon kan deklareres enten som en Sub eller Function, forskjellen er at Sub ikke returnerer en verdi.

 

For å deklarere sn Sub:

Sub MinFunksjon([ParameterNavn1], [ParameterNavn2], ...)

 

End Sub

 

Det finnes ingenting som har samme funksjonen helt i Batch Script, men man kan få det til med Goto.

 

En Function deklareres nesten likt:

Function MinFunksjon(...)

 

End Function

 

For å returnere en verdi i en funksjon, skriver du

 

Function GiMegPIPlx(...)

GiMegPiPlx = 3.14

End Function

 

Når man nå vet om variabler, datatyper og funksjoner:

 

' tegnet har samme funksjon som REM i Batch Script

 

'Regn ut volumet av en sirkel
Dim PI
PI = 3.14
Dim inp
MsgBox("Hello World!")

Inp = InputBox("Hvor mange grader vil du omregner?")

MsgBox(Inp & " grader er det samme som " & DegreesToRadians(Inp) & " radianer.")
MsgBox("PI=" & PI)

Function CalcRadius(Radius)
 CalcRadius = PI * (Radius ^ 2) 'πR²
End Function
Function RadiansToDegrees(Radians)
 RadiansToDegrees = Radians / (PI / 180)
End Function
Function DegreesToRadians(Degrees)
 DegreesToRadians = Degrees * (PI / 180)
End Function

 

Det vanskeligste er å finne dokumentasjon for de forskjellige tingene man trenger.

Microsoft Developer Network er en bra kilde.

 

Nyttige funksjoner:

MsgBox

InputBox

CreateObject

Windows Management Instrumentation er veldig nyttig for å finne ut info om datamaskinen.

 

og selvsagt

Sin

Cos

Tan

Atn

Acos

Asin

Merk at disse tar imot Radianer! ikke grader. hvis dere husker skolematten nå, så er 2PI = 360 grader.

 

Mange fler er listet på MSDN.

 

Det finnes også logiske operasjoner:

= kan brukes i sammenligning, da blir dette på en måte en "funksjon" som returnerer bool (true eller false)

<> (ulik)

>

>=

<

<=

Is (Sammenligner to objekter)

And (Logisk, eller bit Og sammenligning)

Or (Eller)

Xor (exclusive or, En må være sann, men ikke begge to)

Not (Samme som ! i andre språk)

Imp

 

Conditional:

 

If [X] Then

 

End If

 

Ganske enkel egentlig, litt mer brukelig i VB Script en i Batch Script

If JegHeterGrusom And JegKanVbScript Then

MsgBox("Jeg Kan VBScript!")

Else

MsgBox("Jeg kan ikke VBScript, og heter ikke Grusom...")

End If

Case X

Case Else

Select Case

 

End Select

Denne finnes ikke i Batch Script

 

Kan f.eks. brukes til

Dim Farge
Farge = "blå"
Select Case Farge
 Case "blå"
    farge = &H0000ff
 Case "gul"
    farge = &H00ffff
 Case "grønn"
    farge = &H00ff00
 Case "rød"
    farge = &Hff0000
 Case Else
   MsgBox("Ukjent farge")
End Select

 

Gjentatt utføring

 

For løkke

 

Syntaks:

For [Variabel] = [start] To [stop]

Next

 

Denne versjonen teller fra Start til Stop, med et steg på +1

 

For [Variabel] = [start] To [stop] Step [steg]

Next

 

Denne teller fra Start til Stop med Steg = Steg (hvis Step er -1, går den nedover)

 

For Each [Variabel] In [samling]

Next

 

Denne versjonen går igjennom en samling med objekter (f.eks. en array med integer) og setter Variabel lik det aktive objektet

 

Dim s() 
s = { "1", "2", "3", "4" }

Dim output

For Each item In s
 output = output & item
Next
MsgBox.Show(output)

 

Loop:

 

Finnes heller ikke i Batch Script

 

Do

Loop

 

Dette er en evig loop, som man kun kan hoppe ut av med Exit Loop

 

Do While [Argument]

Loop

 

Do Until [Argument]

Loop

 

Do

Loop While [Argument]

 

Do

Loop Until [Argument]

 

While [Argument]

Wend

 

Disse kjører koden om og om igjen til Argument blir False

 

altså:

Dim Running
Dim X
X = 0
Running = True
Do While Running
 X = X + 1
 If X = 5 Then Running = False
 MsgBox("Hei på deg")
Loop

 

Kanskje dette hjelper litt... :S

Endret av GeirGrusom
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å
×
×
  • Opprett ny...