VB : Probleme mit meinem gebasteltem Startmenü

  • #1
A

Alexander16

Bekanntes Mitglied
Themenersteller
Dabei seit
26.08.2002
Beiträge
473
Reaktionspunkte
0
Ich habe mir ein Startmenü gebastelt und nach Fertigstellung auf meine geplante CD gebrannt.

Aber da lief diesmal etwas schief, wenn ich auf meine Button klickte öffnete sich kein Ordner der CD, obwohl ich alles richtig verlinkt habe! ???

Hier ein ausschnitt meines Programms
Vielleicht findet ihr den Fehler :

Option Explicit

Private Declare Function ShellExecute Lib shell32.dll _
Alias ShellExecuteA (ByVal hWnd As Long, _
ByVal lOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long

Private Sub Programme_Click()

ShellExecute Me.hWnd, open, Programme\, , , 3

End Sub

Hier soll der Ordner Programme (der sich im Haupt-verzeichnis der CD befindet) geöffnet werden.
Aber als ich meine CD brannte und mein Startmenü ausführte, konnte ich soviel ich konnte auf den Button klicken, es passierte nichts ???

Vielen Dank
 
  • #2
dann stimmt der pfad nicht

device:\deinprogramm.exe
device:\programme\

is das bei dir so? sonst funzt das net....habs auch mal auf ne CD gebraten, bei mir laeufts =)
 
  • #3
Danke

Ich glaub das war der Fehler ;D

Ich hoffe dein Brennen der CD ar nicht unnötig ;D

Mfg Alexander
 
  • #4
Als ich das fehlerhafte Startmenü auf meiner Festplatte ausführte kamen keine Probleme, erst nach dem ich es auf CD brannte. ???
 
  • #5
*********
edit: der übersichtlichkeit halber entfernt
*********

Ups das war das alte, sorry. :eek:

Hier das richtige:

Option Explicit

Private Declare Function ShellExecute Lib shell32.dll _
   Alias  ByVal  As Long
   ByVal  As String
   ByVal  As String
   ByVal  As String
   ByVal  As String
   ByVal  As Long As Long
-------------------------------------------------------------------------------------------------------
Private Sub Beenden_Click()
 
 End
 
End Sub
---------------------------------------------------------------------------------------------------------
Private Sub Form_Load()

 'Hier werden alle Programme in die Liste eingetragen.
 List1.AddItem ACDsee 6.0
 List1.AddItem WinRAR 3.0
 List1.AddItem Meine Musik
 List1.AddItem Deine Musik
 
End Sub
----------------------------------------------------------------------------------------------------------
Private Sub List1_Click()

'Hier wird der Button aktiviert wenn man auf die Liste klickt und er noch nicht aktiviert ist.
 If Öffner.Enabled = False Then
   Öffner.Enabled = True
 End If
'ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
'Hier bekommen die Programme in der Liste die funktionen.
 If List1 = ACDsee 6.0 Then
   Öffner.Caption = Software installieren
   Text1 = Das ist ein gutes Bildbearbeitungsprogramm.
Else
 If List1 = WinRAR 3.0 Then
   Öffner.Caption = Ordner öffnen
   Text1 = Das ist ein sehr gutes Pack-Programm (gecrackte Version)
Else
 If List1 = Meine Musik Then
   Öffner.Caption = Ordner öffnen
   Text1 = Hier ist viel Musik die ich runtergeladen habe.
Else
 If List1 = Deine Musik Then
   Öffner.Caption = Ordner öffnen
   Text1 = Hier ist die Musik die du dir gewünscht hast.
End If
End If
End If
End If

End Sub
-------------------------------------------------------------------------------------------------
Private Sub Öffner_Click()

If List1 = ACDsee 6.0 Then
   ShellExecute Me.hWnd, open, \Programme\ACDSee 5.0.exe, , , 1
Else
If List1 = WinRAR 3.0 Then
 ShellExecute Me.hWnd, open, \Programme\Winrar 3.0 Deutsch Full\, , , 1
Else
If List1 = Meine Musik Then
 ShellExecute Me.hWnd, open, \meine Musik\, , , 1
Else
If List1 = Deine Musik Then
 ShellExecute Me.hWnd, open, \deine Musik\, , , 1
End If
End If
End If
End If

End Sub
 
  • #6
Ich denke mal (ohne dass ich es jetzt ausprobiert hätte!) es fehlt ganz einfach der Laufwerksbuchstabe.

Statt \Programme\ACDSee 5.0.exe sollte es z.B. heissen D:\Programme\ACDsee 5.0.exe !?

Obwohl ich eigentlich der Meinung bin (auch wieder ohne vorheriges Ausprobieren!), dass normalerweise das Laufwerk aktiv sein sollte, in dem das Programm gestartet wurde!?

Ein paar andere Dinge, die mir aufgefallen sind:

1. Niemals Umlaute als Funktions-, Objekt-, Subroutine-, etc. -Namen verwenden (ist aber kein Fehler, nur meine innere Überzeugung!)

2. Deine if-else-end if Anweisungen sind... naja... irgendwie komisch ;D

Mein Vorschlag:
a)
If List1 = ACDsee 6.0 Then
Öffner.Caption = Software installieren
Text1 = Das ist ein gutes
Elseif List1 = WinRAR 3.0 Then
Öffner.Caption = Ordner öffnen
Text1 = Das ist ein sehr gutes Pack-Programm
ElseIf List1 = Meine Musik Then
Öffner.Caption = Ordner öffnen
Text1 = Hier ist viel Musik die ich runtergeladen habe.
ElseIf List1 = Deine Musik Then
Öffner.Caption = Ordner öffnen
Text1 = Hier ist die Musik die du dir gewünscht hast.
End If

b)
select case List1
case ACDsee 6.0
Öffner.Caption = Software installieren
Text1 = Das ist ein gutes
case WinRAR 3.0
Öffner.Caption = Ordner öffnen
Text1 = Das ist ein sehr gutes Pack-Programm
case Meine Musik
Öffner.Caption = Ordner öffnen
Text1 = Hier ist viel Musik die ich runtergeladen habe.
case Deine Musik
Öffner.Caption = Ordner öffnen
Text1 = Hier ist die Musik die du dir gewünscht hast.
end select

3. Ist schon klar, dass die unterschiedlichen Objekte (Liste, Textbox, Button, etc.) Default-Eigenschaften haben, aber ich würde sicherheitshalber immer(!) so ausführlich wie möglich schreiben, also statt
Text1 = Das ist ein sehr gutes Pack-Programm
würde ich
Text1.Text = Das ist ein sehr gutes Pack-Programm
schreiben...

Und zu guter Letzt:
Wenn ich nochmal sowas lese, wie ...(gecrackte Version)..., dann ist es endgültig vorbei mit dem Spass und sämtliche Hilfe wird eingestellt!!!

Leute, das ist STRAFBAR und KEIN KAVALIERSDELIKT!!!!!
 
  • #7
Oh - sorry ich werde das WinRAR (gecrackte Version) entfernen, ok ;D (das meine ich im ernst glaubt mir ;))

Mfg Alexander
 
  • #8
Ich habe gedacht wenn andere hier illegale Sachen fragen dürfen darf ich auch mal ein illegales Programm in den SoureCode schreiben.
Wintotal mietet illegale Tools auch zum Download an, Resoure Hack, also dürfte ich doch ausnahmsweise auch mal in einem SoureCode auftauchen oder ???

Aber nun werde ich es in Zukunft vermeinden.

Mfg vom legallen Alexander ;D
 
  • #9
@Alexander:

Entweder bist Du noch seeeehr jung oder ganz einfach nur blauäugig!?!?

ResHack ist alles, aber kein illegales Programm! Es kommt jedoch darauf an was der betroffene User damit anstellt!
Oder ist *beliebige Automarke hier einfügen* strafbar, weil ein Bankräuber ein Auto dieser Marke als Fluchtauto benutzt hat???

*Fassungslos*

:mad:
 
  • #10
Ok Ok - ich gebe auf ;D

Noch eine Frage zum Code:

Ich habe den Laufwerksbuchstabe weg gelassen, weil man ja nicht weiß was der jenige für ein Laufwerksbuchstabe hat.
Darum habe ich den Buchstaben weg gelassen, weil ich vermutete das wenn man den Buchstaben weg läßt die CD bzw. das Startmenü auf jedem Laufwerksbuchstaben geht.

Was muss ich da machen??

P.s. Keine illegalen Fragen mehr, verstrochen ;D

Mfg Alexander
 
  • #11
Mit App.Path gekommst Du Laufwerk und Pfad, wo das Programm gestartet wurden...

Also könnte es so heissen:

Left(App.Path,2) & \Programme\ACDsee 5.0.exe

;)
 
  • #12
Hallo,
ich habe einen Monitor wo mein PC angeschlossen ist und eine Konsole.Nun möchte ich nicht immer in den AV Modus wechseln um das Bild der Konsole zu sehen. Gibt es eine möglichkeit das Konsolenbild im PC Modus wiederzugeben?
P.S: Sorry, keine Ahnung ob das die richtige Kategorie ist.
 
Thema:

VB : Probleme mit meinem gebasteltem Startmenü

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.839
Beiträge
707.962
Mitglieder
51.492
Neuestes Mitglied
Janus36
Oben