Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

dynamische Links

Frage Entwicklung VB for Applications

Mitglied: zaturo

zaturo (Level 1) - Jetzt verbinden

11.12.2008, aktualisiert 22:22 Uhr, 3846 Aufrufe, 5 Kommentare

Hallo liebe Community,

ich habe eine Frage bezüglich dynamischen Links in VB. Ich habe mich noch gar nicht mit VB beschäftigt und bin ein totaler Neuling.
Zur Erläuterung meines Problems. Ich habe auf meinem USB-Stick Xampp installiert und habe dies dann in PortableApps integriert. Damit ich nicht alle *.exe Dateien sehe, habe ich mir eine Batch Datei geschrieben die den Apache und MySQL Server als Dienst startet. Dies funktioniert auch soweit. Nun wollte ich die command windows nicht dauerhaft angezeigt haben und bin da wohl an die Grenzen der Kommandozeile unter Windows gestoßen. Mir wurde mitgeteilt, dass ich dies mit VB lösen kann und habe mich an die Arbeit gemacht und habe folgenden Code geschrieben:

set WshShell = WScript.CreateObject("WScript.Shell")
Laufwerkspfad = WshShell.ExpandEnvironmentStrings("%systemdrive%")
Wscript.Echo Laufwerkspfad

Dieses Script gibt nun den SystemRoot wieder, ich würde dort aber gern den Pfad meines USB sticks haben. Unter der Kommandozeile ist dies relativ leicht mit %CD% zu lösen. So erhält man den Pfad des Laufwerks auf dem die Datei liegt. Gibt es eine ähnlich leichte Methode für VB den Pfad der Datei herauszubekommen und danach auch zu verwenden?

Mein momentanes Scripts ist:
MySQL_apache_start.bat --> konvertiert zu .exe
start %CD%PortableApps\Xampp\xampplite\mysql_start.bat
start %CD%PortableApps\Xampp\xampplite\apache_start.bat

Danke schon einmal im voraus für die Hilfe.
Mitglied: bastla
11.12.2008 um 21:09 Uhr
Hallo zaturo und willkommen im Forum!
Gibt es eine ähnlich leichte Methode für VB
01.
Set WshShell = WScript.CreateObject("WScript.Shell") 
02.
Laufwerkspfad = WshShell.CurrentDirectory 
03.
WScript.Echo Laufwerkspfad
Wenn Du nur das Laufwerk benötigst:
01.
Set WshShell = WScript.CreateObject("WScript.Shell") 
02.
Set fso = CreateObject("Scripting.FileSystemObject") 
03.
Laufwerk = fso.GetDriveName(WshShell.CurrentDirectory) 
04.
WScript.Echo Laufwerk
Alternativ-Variante (verwendet den Pfad des Scripts anstelle des aktiven Verzeichnisses - analog zu "%~d0" in einem Batch):
01.
Set fso = CreateObject("Scripting.FileSystemObject") 
02.
Laufwerk = fso.GetDriveName(WScript.ScriptFullName)
Um einen Pfad zusammenzusetzen:
01.
mysql = Laufwerk & "\PortableApps\Xampp\xampplite\mysql_start.bat"
Schließlich zum Starten:
01.
Set WshShell = WScript.CreateObject("WScript.Shell") 
02.
WshShell.Run mysql, 0
Das "WshShell"-Objekt muss im Script nur einmal erzeugt werden (ist hier also nur bei der Alternativ-Variante erforderlich).

Grüße
bastla

[Edit] Obwohl für einen USB-Stick nicht unbedingt nötig: Laufwerksermittlung auf "GetDriveName"-Methode umgestellt [/Edit]
Bitte warten ..
Mitglied: zaturo
11.12.2008 um 21:56 Uhr
Hi bastla,

danke für die schnelle Antwort. Die Laufwerksaufschlüssung funktioniert einwandfrei =), kann die Dateien somit starten. Kann ich nun die geöffneten Shells auch versteckt halten? Weil momentan sind diese ja geöffnet auf meinem Desktop sichtbar. Danke schön schon mal im voraus =).
Bitte warten ..
Mitglied: bastla
11.12.2008 um 22:10 Uhr
Hallo zaturo!

Das gesamte Script könnte so aussehen:
01.
Set fso = CreateObject("Scripting.FileSystemObject") 
02.
Set WshShell = WScript.CreateObject("WScript.Shell") 
03.
 
04.
Laufwerk = fso.GetDriveName(WScript.ScriptFullName) 
05.
mysql = Laufwerk & "\PortableApps\Xampp\xampplite\mysql_start.bat" 
06.
apache = Laufwerk & "\PortableApps\Xampp\xampplite\apache_start.bat" 
07.
 
08.
WshShell.Run mysql, 0 
09.
WshShell.Run apache, 0
Grüße
bastla
Bitte warten ..
Mitglied: zaturo
11.12.2008 um 22:17 Uhr
Hi nochmal,

wer lesen kann ist klar im Vorteil ^^". Ich habe die , 0 völlig ausser Acht gelassen und somit konnte es ja auch nicht versteckt laufen.

Ich danke für die wirklich schnellen Antworten! Weiter so =).

LG zaturo
Bitte warten ..
Mitglied: bastla
11.12.2008 um 22:22 Uhr
Hallo zaturo!
Weiter so =).
Ich dachte, das war's schon ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Exchange Server
gelöst Exchange 2013 dynamische Verteilergruppe anlegen per Powershell (6)

Frage von blackhawk17 zum Thema Exchange Server ...

LAN, WAN, Wireless
gelöst Dynamische IPv6 (ISP) und Statische IPv6-Adressen (LAN) unter einen Hut bringen (5)

Frage von ketanest112 zum Thema LAN, WAN, Wireless ...

Exchange Server
gelöst Dynamische Verteilerliste nach Domain filtern (2)

Frage von blackhawk17 zum Thema Exchange Server ...

Microsoft Office
gelöst Dynamische tabellen erstellen und in einanderes arbeitsblatt kopieren (18)

Frage von hugothemagpie zum Thema Microsoft Office ...

Neue Wissensbeiträge
Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
VPN Tunnel aufbauen (15)

Frage von Hajo2006 zum Thema LAN, WAN, Wireless ...

Microsoft Office
Saubere HTML aus Word-Dokument (13)

Frage von peterpa zum Thema Microsoft Office ...

E-Mail
gelöst Probleme beim E-Mail Empfang (12)

Frage von TommyB83 zum Thema E-Mail ...

Microsoft
gelöst Subnetting: In welchem Subnetz befindet sich die IP? (12)

Frage von winler zum Thema Microsoft ...