Damp Skrevet 25. februar 2007 Forfatter Del Skrevet 25. februar 2007 (endret) kanskje siste spørsmål før jeg er ferdig med den, er det mulig å endre tittelen i msgbox'en? Når jeg får den opp står det application1 Endret 25. februar 2007 av pcbygger91 Lenke til kommentar
Jonas Skrevet 25. februar 2007 Del Skrevet 25. februar 2007 Du har et par ekstra parametere, på samme måte som i VB6, tror jeg. Msgbox( Text, [buttons], [Titel] ) Msgbox("Tekst", ,"Tittel") Lenke til kommentar
Damp Skrevet 25. februar 2007 Forfatter Del Skrevet 25. februar 2007 (endret) Sitter og finpusser litt her nå, tenkte å legge til en melding i shutdownboksen som popper opp. Men visual basic godtar jo ikke en slik shell command Shell ("shutdown -s -t 16200 -c "Shutdowntool v0.1 is shutting down"") Noen som har en løsning? Endret 25. februar 2007 av pcbygger91 Lenke til kommentar
Jonas Skrevet 25. februar 2007 Del Skrevet 25. februar 2007 I VB6 man kan skrive doble tegn, igjen, jeg tror det er det samme i .net. Prøv dette. Shell ("shutdown -s -t 16200 -c ""Shutdowntool v0.1 is shutting down""") Lenke til kommentar
Damp Skrevet 25. februar 2007 Forfatter Del Skrevet 25. februar 2007 (endret) Aha! Det var løsningen. Takk for all hjelp alle sammen! Her er det endelige scriptet Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If CheckBox2.Checked = False Then ElseIf CheckBox2.Checked = False Then ElseIf CheckBox3.Checked = False Then ElseIf CheckBox4.Checked = False Then ElseIf CheckBox5.Checked = False Then ElseIf CheckBox6.Checked = False Then ElseIf CheckBox7.Checked = False Then ElseIf CheckBox8.Checked = False Then ElseIf CheckBox9.Checked = False Then ElseIf CheckBox10.Checked = False Then ElseIf CheckBox1.Checked = False Then Shell("shutdown -s -t 1800 -c ""Shutdowntool v0.1 is shutting down""") End If If CheckBox2.Checked Then MsgBox("You clicked 'Shutdown -?', your computer will now be shut down by your specified time. Please stand by...") Shell("shutdown -s -t 3600 -c ""Shutdowntool v0.1 is shutting down""") ElseIf CheckBox3.Checked Then MsgBox("You clicked 'Shutdown -?', your computer will now be shut down by your specified time. Please stand by...") Shell("shutdown -s -t 5400 -c ""Shutdowntool v0.1 is shutting down""") ElseIf CheckBox4.Checked Then MsgBox("You clicked 'Shutdown -?', your computer will now be shut down by your specified time. Please stand by...") Shell("shutdown -s -t 7200 -c ""Shutdowntool v0.1 is shutting down""") ElseIf CheckBox5.Checked Then MsgBox("You clicked 'Shutdown -?', your computer will now be shut down by your specified time. Please stand by...") Shell("shutdown -s -t 9000 -c ""Shutdowntool v0.1 is shutting down""") ElseIf CheckBox6.Checked Then MsgBox("You clicked 'Shutdown -?', your computer will now be shut down by your specified time. Please stand by...") Shell("shutdown -s -t 10800 -c ""Shutdowntool v0.1 is shutting down""") ElseIf CheckBox8.Checked Then MsgBox("You clicked 'Shutdown -?', your computer will now be shut down by your specified time. Please stand by...") Shell("shutdown -s -t 12600 -c ""Shutdowntool v0.1 is shutting down""") ElseIf CheckBox9.Checked Then MsgBox("You clicked 'Shutdown -?', your computer will now be shut down by your specified time. Please stand by...") Shell("shutdown -s -t 14400 -c ""Shutdowntool v0.1 is shutting down""") ElseIf CheckBox10.Checked Then MsgBox("You clicked 'Shutdown -?', your computer will now be shut down by your specified time. Please stand by...") Shell("shutdown -s -t 16200 -c ""Shutdowntool v0.1 is shutting down""") ElseIf CheckBox1.Checked Then MsgBox("You clicked 'Shutdown -?' when the 'Abort' checkbox was checked, the operating shutdown will now abort...") Shell("shutdown -a") End If End Sub End class Endret 25. februar 2007 av pcbygger91 Lenke til kommentar
GeirGrusom Skrevet 27. februar 2007 Del Skrevet 27. februar 2007 oi Kan du ikke heller legge in en tekstboks som sier hvor lang tid det tar for den å skru av? Dim TryParseInt As Integer = 0 If Integer.TryParse(txtTime.Text, TryParseInt) Then Shell("shutdown -s -t " & TryParseInt & " -c ""Shutdowntool v0.1 is shutting down""") Else MessageBox.Show("Invalid number format, only integer values are accepted.") End If Lenke til kommentar
ze5400 Skrevet 27. februar 2007 Del Skrevet 27. februar 2007 Aha! Det var løsningen. Takk for all hjelp alle sammen! Her er det endelige scriptet Antagelig masse FUD 8026406[/snapback] Bare en kommentar, script != program. Script kompileres ikke før distubusjon, men derimot on-the-fly. Klassisk VB kompieres til maskinkode, og .NET til mellomkode, nemlig MSIL, eller CIL etter navnebyttet, som står for "Microsoft Intermediate Language" og "Common Intermediate Language". Lenke til kommentar
aadnk Skrevet 27. februar 2007 Del Skrevet 27. februar 2007 Kan du ikke heller legge in en tekstboks som sier hvor lang tid det tar for den å skru av? Ja, det er nøyaktig hva jeg fortalte ham først. Men, han mente visst koden ble altfor avansert for hans nivå. I alle fall vil jeg på det sterkeste anbefale å unngå slike lange ramser med IF-setninger når du programmerer, og heller benytte mer effektive og dynamiske fremgangsmåter. I tilfeller som dette kan du eksempelvis omdesigne brukergrensesnittløsningen slik GeirGrusom foreslo, eller bruke kontroller som støtter visning og markering av lister (Combobox, Listbox, m.m.). Dersom det er absolutt nødvendig å anvende den nåværende løsningen, kan du også iterere (gå gjennom) alle kontrollene og sjekke hvilken som er markert. Koden kan da bli seende ut således: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim selRadio As RadioButton ' Gå gjennom alle kontroller i formen For Each Control As Object In Me.Controls ' Ser om kontrollen er en alternativknapp If TypeOf Control Is RadioButton Then ' Se deretter om kontrollen er markert If DirectCast(Control, RadioButton).Checked Then selRadio = Control Exit For ' Avslutter løkken End If End If Next ' Unngår å kjøre koden dersom ingen av knappene er markert If selRadio IsNot Nothing Then ' Bruker knappens TAG-egenskap til å definere tiden som skal brukes. Dette må gjøres ' for at koden skal fungere. La den være tom på AVBRYT-alternativknappen. If selRadio.Tag Is Nothing Then Shell("shutdown -a") Else Shell("shutdown -s -t " & selRadio.Tag & _ " -c ""Shutdowntool v0.1 is shutting down""") End If End If End Sub Lenke til kommentar
Damp Skrevet 6. mars 2007 Forfatter Del Skrevet 6. mars 2007 (endret) Takk igjen aadnk. Skal se nærmere på det ------------------------------- Et spørsmål, hvordan kan man åpne en cdrom gjennom vb? Isåfall, er det mulig å gjøre dette i batch scripting også? Endret 6. mars 2007 av pcbygger91 Lenke til kommentar
aadnk Skrevet 6. mars 2007 Del Skrevet 6. mars 2007 (endret) Et spørsmål, hvordan kan man åpne en cdrom gjennom vb? Isåfall, er det mulig å gjøre dette i batch scripting også? 8087806[/snapback] Du kan gjøre det som følger: Imports System.TextImports System.Runtime.InteropServices Public Class Form1 ' Du kan også bruke <DllImport> Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" _ (<MarshalAs(UnmanagedType.LPStr)> ByVal command As String, _ ByVal returnString As StringBuilder, ByVal cchReturnLength As Int32, _ ByVal hwndCallback As IntPtr) As Int32 Public Sub ChangeDoorState(ByVal Drive As String, ByVal Open As Boolean) ' Bruk denne CD-skuffen mciSendString(String.Format("open {0} type cdaudio alias cddrive", Drive), Nothing, 0, 0) ' Send kommando mciSendString("set cddrive door " & IIf(Open, "open", "closed"), Nothing, 0, 0) ' Rydd opp mciSendString("close cddrive", Nothing, 0, 0) End Sub Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load ' Åpne en gitt CDROM-skuff ChangeDoorState("G:", True) ' Vent i fem sekunder System.Threading.Thread.Sleep(5000) ' Lukk den igjen ChangeDoorState("G:", False) End Sub End Class For å få dette til via batch-skripting kan du jo simpelthen kalle et kommandolinjeprogram med koden ovenfor (samt litt mer). Endret 6. mars 2007 av aadnk Lenke til kommentar
Damp Skrevet 8. mars 2007 Forfatter Del Skrevet 8. mars 2007 Er det mulig å få et vb program til å droppe en fil i en angitt path? Hvis mulig, hvordan gjør man dette? Lenke til kommentar
ze5400 Skrevet 8. mars 2007 Del Skrevet 8. mars 2007 Er det mulig å få et vb program til å droppe en fil i en angitt path? Hvis mulig, hvordan gjør man dette? 8104620[/snapback] Eeeh, droppe en fil? Som i å slette en fil? Som i å lagre en fil? Lagre text fil i VB.NET Dim Writer As System.IO.TextWriter = New System.IO.StreamWriter("Filbane") Writer.Writeline("Joda") Writer.Writeline("Skrive må vi da") Writer.Flush() 'Skriver til filen Writer.Close() 'Lukker skriveobejektet Writer.Dispose() 'Avinitialiserer skriveopejektet, denne trengs egenltig ikke. Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå