12. august 2002 - 12:17Der er
7 kommentarer og 3 løsninger
Et simpelt script...
Jeg har brug for et script, som gør følgende:
Der kommer en dialog-boks med et tekst-felt og tre knapper. Tekst-feltet er til et kodeord, så det man skriver skal meget gerne være skjult. Tastatur-cursoren skal være i tekst-feltet.
Skriver man det det korrekte kodeord og trykker på knap1, så skal der udføres en doskommando. Trykker man i stedet på knap2, skal en anden kommando køres, her er kodeord unødvendigt. Knap3 afslutter bare programmet.
Jeg aner ikke hvordan jeg skal brygge dialogboksen op, og om det overhovedet kan lade sig gøre. Jeg ved heller ikke hvordan man kører dos-kommandoer fra et vb-script.
Får jeg først løsningen på de to ting, vil jeg tro jeg kan resten selv. Jeg har altså ikke behov for et færdigt script, selv om det ville være herligt. ;-)
Prøv med dette: Private Sub Form_Load() strLogin = InputBox("Indtast dit kodeord her:", "Kodeord tjek") If strLogin = "test" Then MsgBox ("Kodeordet var rigtigt!") Else MsgBox ("Kodeordet var forkert!") End If End Sub
Lav en form, hvorpå du laver 3 knapper (command1, command2 og command3) og et text-felt (Text1)
Smid følgende kode ind:
Private Sub Form_Load() 'Følgende afvikles, når formen loades 'Disse 3 linier kunne slettes, hvis du i stedet 'sætter værdierne i properties-vinduet for Text1.
Text1.TabIndex = 0 Text1.Text = "" Text1.PasswordChar = "*" End Sub
Private Sub Command1_Click() 'Tjekker password. Er det OK, Køres kommando med "Shell kommando" If Text1.Text = "test" Then Shell "explorer", vbMaximizedFocus Else MsgBox ("Kodeordet var forkert!") End If End Sub
Private Sub Command2_Click() 'Kører kommando med "Shell kommando" Shell "explorer", vbMaximizedFocus End Sub
Private Sub Command3_Click() 'Afslutter program End End Sub
I stedet for Shell "explorer", vbMaximizedFocus skal du skrive Shell efterfulgt af dit kommandonavn - at starte stifinderen er blot et eksempel ;o)
Ovenstående skal forstås på den måde, at du tilføjer en ekstra form til dit project (Project -> Add form)
Lad os sige, at dit program har en form der hedder form1. Du tilføjer en ny form, der hedder form2. På form2 smider du komponenter og kode som vist i mit svar overfor.
På form1 kalder du form2 frem ved at skrive
Form2.Show 1
Ettallet betyder, at focus er låst på form2 indtil den lukkes. Mvh. martin
Indtil videre, mange tak for hjælpen. :) Jeg kan dog ikke komme en byte videre, da i tilsyneladende forudsætter at jeg har et program til at udvikle det i. Jeg kunne også have skrevet det tydeligere, men ...
Jeg skal bare lave et script, og jeg laver det i notepad. :)
Kan det stadig lade sig gøre at lave en form, eller er jeg så begrænset til MsgBox og InputBox?
Som jeg startede med at skrive så er du henlagt til msgbox eller inputbox. Dog har du selvfølgelig mulighed for at få nogle til at lave et com komponent til dig, hvor der er en formular i, men det er squ nok lige at gå over stregen :-)
Jeg kan komme uden om det med at lave en form, ved at splitte det op i flere scripts. Så må jeg bare lave to menu-punkter.
Men man kan se kodeordet, og det er ikke så godt. Jeg må faktisk ændre beskrivelsen, det er et krav. Jeg prøvede at slå op på msdn.microsoft.com, for at se om der var en parameter til InputBox eller sådan noget, men jeg kunne ikke finde noget som helst.
Og så virker "shell" vist ikke i vbs? Den siger bare "typerne passer ikke sammen", hvilket vist ikke giver den store mening. Selvfølgelig skal "shell" have en streng... Jeg prøvede msdn.microsoft.com, men fandt igen ikke noget som helst.
Jeg kan fornemme at jeg skal ofre flere hundrede kroner (tusinde?) på et eller andet udviklingsværktøj. Hvis det er tilfællet, så må jeg finde på noget andet.
Hvis du ikke føler at du har løst til at bidrage til Bill Gates formue, er der jo andre muligheder. Og her skal jeg naturligvis ikke opfordrer til ulovligheder ;o)
Well, jeg finder på noget helt andet. En bekendt har været så flink at tilbyde at lave et program til det. Det vil sikkert virke fint nu og her, men når der så skal laves om på det senere, så er det bare ærgeligt. Et script ville være nemt at redigere, selv for en semi-nørd.
Vi får at se, enten bruger jeg det program, eller også finder jeg et helt andet script-sprog.
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.