Skip to content

Daniels Tagesmeldungen

Kleine IT-Episoden, der Diabetes & das wahre Leben

  • Startseite
  • About me…
    • Lebenslauf
    • Weiterbildung
  • Diabetes melitus
    • Diabetes melitus – Definition/Typen
    • Diabetes melitus – Podcasts
    • Diabetes Typ-2 – Erläuterung
    • Medikament – Metformin
    • IVOM – Präzise Medikamentengabe ins Auge
      • Medikament – Eylea (Aflibercept)
      • Medikament – Lucentis (Ranibizumab )
      • Medikament – Vabysmo (Faricimab)
    • Medikament – Forxiga (Dapagliflozin)
  • Disclaimer
  • Toggle search form

Kategorie: Programmierung

Sprachausgabe per VBS

Posted on 26. März 201425. März 2014 By Daniel Lensing 1 Kommentar zu Sprachausgabe per VBS

Manchmal sitzt man einfach so herum und hat Langeweile. Dabei bin ich auf die Idee gekommen, dass man doch einfach mal fröhlicheren Anwender schaffen kann mit kleinen Nettigkeiten, die kein Aufwand sind.

Zum Beispiel kann man den Mitarbeitern Geburtstagsgrüße beim Start des Rechners akustisch zukommen lassen. Hier ein kleines Beispiel:

Set objNetwork = CreateObject("Wscript.Network")
Set sprache = CreateObject("SAPI.SpVoice")
sprache.Volume = 100
sprache.speak "Herzlichen Glückwunsch zum Geburtstag!"

Die Lautstärke wird auf 100 Prozent für die Programmart Windows Scripting Host gestellt. Mute wird nicht aufgehoben.

Vielleicht hat der eine oder andere auch interessante Ideen für Umsetzungen. Eine Erweiterung mit dem Anwendernamen wäre natürlich auch denkbar.

VBS

Powershell: Datei suchen und Parameter ausgeben

Posted on 5. Februar 20145. Februar 2014 By Daniel Lensing Keine Kommentare zu Powershell: Datei suchen und Parameter ausgeben

Für eine Analyse musste ich in mehreren Pfaden Access-Datenbanken ermitteln und deren Rahmenparameter.
 Dieses habe ich über folgenden Codeaufruf durchgeführt.

 Function Format-FileSize() {
    Param ([int]$size)
    If     ($size -gt 1TB) {[string]::Format("{0:0.00} TB", $size / 1TB)}
    ElseIf ($size -gt 1GB) {[string]::Format("{0:0.00} GB", $size / 1GB)}
    ElseIf ($size -gt 1MB) {[string]::Format("{0:0.00} MB", $size / 1MB)}
    ElseIf ($size -gt 1KB) {[string]::Format("{0:0.00} kB", $size / 1KB)}
    ElseIf ($size -gt 0)   {[string]::Format("{0:0.00} B", $size)}
    Else                   {""}
}
 
$Path = $args[0]
 
Get-ChildItem $Path -Include *.accdb -Recurse | Select-Object fullname, @{Name="Size";Expression={Format-FileSize($_.Length)}}, CreationTime, Lastwritetime, lastaccesstime | Format-Table -AutoSize

Der Pfad wird einfach hinter den Dateiaufruf gesetzt und entsprechend vom Skript verarbeitet.

Die Funktion habe ich hier gefunden: Link

Powershell

Umrechnung von Bytes in größere Einheiten

Posted on 2. November 20132. November 2013 By Daniel Lensing Keine Kommentare zu Umrechnung von Bytes in größere Einheiten

Bei einigen Auswertungen oder Abfragen per Visual Basic oder anderen Skriptsprachen erhält man Datengrößen in Bytes.
Nun werden diese Zahlen zuweilen sehr lang, so dass man diese zur vernünftigen Darstellung umrechnen sollte.
Dabei soll folgende Umrechnungstabelle unterstützen:

  • 1 KiloByte sind 1024 Bytes
  • 1 MegaByte sind 1048576 Bytes
  • 1 GigaByte sind 1073741824 Bytes
  • 1 TerraByte sind 10995116277776 Bytes

Entsprechend mit diesen Angaben können die Werte in die erforderlichen Größeneinheiten umgerechnet werden.

Powershell, VB.NET, VBA, VBS

Dateien gleichen Namens mit Struktur kopieren

Posted on 7. Oktober 20135. Oktober 2013 By Daniel Lensing Keine Kommentare zu Dateien gleichen Namens mit Struktur kopieren

Aufgrund einer Fehleranalyse sollte eine Datei einer Software aus einer Ordnerstruktur kopiert werden. Leider kam bei der Suche nach der Datei heraus, dass sich in jedem Projektordner, welches diese Software anlegt, eine entsprechende Datei erzeugt wird.

Nun mussten alle Dateien kopiert werden, was mit dem selben Dateinamen leider nicht einfach möglich ist. Somit kam ich zu dem Schluss die Dateien mit der vorhandenen Ordnerstruktur kopieren zu wollen.

Da es sich um einige Projektordner handelte, wurde von mir das folgende Powershell-Skript entwickelt, welches die Datei mit der Ordnerstruktur zur Verfügung stellt

# Verzeichnis, ab dem Rekursiv nach der Datei gesucht wird
$Suchverzeichnis = "C:\Program files\Database\Log\Projects\"
 
# Datei, welche gesucht wird
$Datei = "start.act"
 
# Verzeichnis, wo die Daten erzeugt und kopiert werden soll
$Zielverzeichnis = "C:\analyse\"
 
#Dateiermittlung
$dat = Get-ChildItem -Path $Suchverzeichnis -Recurse -Include $Datei 
 
# Array erstellen
foreach ($file in $dat) {
 
     # Ermittelter Pfad & Dateiname in Kleinbuchstabeln wandeln
     $Objekt = ($file.Fullname).toLower()
 
     # Suchverzeichnis in Kleinbuchstaben wandeln
     $Startverzeichnis =$Suchverzeichnis.toLower()
 
     # Entfernung des Suchverzeichnis aus dem Array
     $Struktur = $Objekt.Replace($Startverzeichnis,"$null")
 
     # Entfernung des Dateinamens aus dem Array
     $Ordner = $Struktur.Replace($Datei,"$null")
 
     #Zusammensatzung für Skriptnutzung
     $Zielpfad = $Zielverzeichnis+$Ordner
 
     # Erstellung der Verzeichnisstruktur    
     New-Item $Zielpfad -itemtype directory -force  
 
     # Kopieren der Datei in die entsprechende Struktur
     Copy-Item ($file.fullname) -destination ($Zielpfad) -force
}

Mit dem Skript werden die benötigten Ordner angelegt und die ermittelten Dateien entsprechend kopiert, um das laufende System nicht zu stören.

Powershell

PHP: SQL-Datum in d.m.Y umwandeln

Posted on 9. September 201329. Dezember 2015 By Daniel Lensing Keine Kommentare zu PHP: SQL-Datum in d.m.Y umwandeln

In einem kleinen Nebenprojekt sollte auf eine bestehende Datenbank zugegriffen werden, um eine Geburtstagsliste darzustellen.

Die Darstellung in einer Tabelle ist recht schnell erstellt:

<?php
include("database.php");
 
$ergebnis = mysql_query("SELECT * FROM Tabelle ORDER BY Geburtstag");
 
echo '<table border="1; style="text-align: center">';
  echo "<tr>";
  echo "<td><b>Nachname</b></td>";
  echo "<td><b>Vorname</b></td>";
  echo "<td><b>Geburtstag</b></td>";
  echo "</tr>";
 
     while($row = mysql_fetch_object($ergebnis))
 
{
  echo "<tr>";
  echo "<td>". $row->Nachname . "</td>";
  echo "<td>". $row->Vorname . "</td>";
  echo "<td>". $row->Geburtstag . "</td>";
  echo "</tr>";
}
echo "</table>";
?>

Nun wird auch das Datum angezeigt bzw. falls kein Datum eingetragen ist ein leeres Feld. Allerdings wird das Datum im SQL-Format wie 1995-11-29 angezeigt. Eigentlich sollte das Format wie folgt angezeigt werden: 29.11.1995.

Dieses ist mit dem folgenden Austausch des Befehlssatzes möglich:

echo "<td>". date("d.m.Y ", strToTime($row->Geburtstag)) . "</td>";

Jetzt gibt es leider ein neues Problem, da ein NULL-Wert ebenfalls umgewandelt wird und nun dadurch ein Datum angezeigt wird: 01.01.1970

Auch das kann abgefangen werden, damit wieder ein Leerfeld erscheint:

if (!empty($row->Geburtstag)) { echo "<td>". date("d.m.Y ", strToTime($row->Geburtstag)) . "</td>"; } else {echo "<td></td>"; }

Nun wird das Datum wie angefordert angezeigt und falls es einen NULL-Wert gibt entsprechend ein leeres Feld auszugeben.

Tipp: Der Eintrag „include(„database.php“);“ stammt aus dem vorherigen Artikel.

PHP

PHP: SQL-Verbindung herstellen

Posted on 8. September 20138. September 2013 By Daniel Lensing Keine Kommentare zu PHP: SQL-Verbindung herstellen

Bei einigen Web-Projekten arbeitet man mit 2 verschiedenen Bereichen:

  • Test-Umgebung
  • Produktiv-Umgebung

Vieles wird erst in der Test-Umgebung mit einer Test-Datenbank erstellt und geprüft. Irgendwann kommt aber auch der Zeitpunkt, wo man es in die Release-Phase bringen und es in der Live-Umgebung zu mindestens prüfen möchte.

Man kann unter PHP die SQL-Verbindung der Datenbank in eine separate Datei (in diesem Beispiel mit dem Namen „database.php“) auslagern, die dann wie folgt aussieht:

<?php
mysql_connect("localhost", "Benutzer","Passwort") or die ("Keine Verbindung möglich");
mysql_select_db("Datenbankname") or die ("Die Datenbank existiert nicht.");
?>

Die Werte „Benutzer“, „Passwort“ und „Datenbankname“ müssen natürlich durch die eigenen Zugangsdaten ersetzt werden. Auch der Eintrag „localhost“ kann in einen Servernamen angepasst werden.

In die Standard-PHP-Datei, z.B. index.php, muss nun nur die folgende Zeile eingefügt werden:

include("database.php");

Entsprechend werden die Daten zum Verbindungsaufbau genutzt. Durch einen Austausch der Datei kann zum Beispiel auch zwischen Test- und Produktiv-Umgebung gewechselt werden, ohne immer am Code zu arbeiten.

Natürlich kann die Verbindung auch in die eigentliche Datei mit dem selben Aufruf eingearbeitet werden.

PHP

VBS: IMEI der WWAN-Karte ermitteln

Posted on 13. August 201312. August 2013 By Daniel Lensing Keine Kommentare zu VBS: IMEI der WWAN-Karte ermitteln

In einem Projekt gab es die Aufgabe die IMEI-Nummer der verbauten UMTS-Karte zu ermitteln. Dieses ist per NETSH-Befehl möglich, was allerdings automatisiert durchgeführt werden sollte.

Anbei das Skript, was die IMEI-Nummer als Messagebox ausgibt:

    Option Explicit
 
    Dim IMEI, IMEIID
    Dim cmdquery
    Dim oShell
    Dim Result, strLine
    Dim Flag
 
    Set oShell = CreateObject("WSCript.Shell")
 
    cmdquery = "netsh mbn sh int"
 
    Flag = False
 
    Set Result = oShell.Exec(cmdquery)
 
    Set IMEI = Result.StdOut
 
    While Not IMEI.AtEndOfStream
       strLine = IMEI.ReadLine
       If InStr(strLine, "Mobile Breitbandverbindung") Then
        Flag = True
       End If
       If Flag = True Then
         If InStr(strLine, "Ger„te-ID          :") Then
          IMEIID = Trim(strLine)
          IMEIID = Right(IMEIID, Len(IMEIID)-21)
        Msgbox(IMEIID)
	Flag = False
         End If
       End If
    Wend

Statt der MessageBox kann der Wert auch weitergenutzt oder an andere Programme weitergegeben werden. Dieses ist derzeit nur unter Windows 7 (deutsch) getestet. Für andere Sprachen sind Anpassungen erforderlich

VBS, Windows 7, Windows 8

Seitennummerierung der Beiträge

Vorherige 1 … 10 11 12 … 14 Nächste

Daniel Lensing

Ich betreibe diesen Blog, bei dem ich meine Erfahrungen aus der IT & dem Berufsalltag sowie dem Wahnsinn des Lebens mit Höhen und Tiefen. Darunter meine „Erlebnisreise“ zum Planeten „Diabetes mellitus Typ-2“.

Translate:

Follow us

Kategorien

  • Allgemein (1)
  • Client (245)
    • Android (8)
    • Fedora (Linux) (5)
    • iOS (6)
    • Mac OS X (6)
    • Peripherie (5)
    • Ubuntu (Linux) (9)
    • Windows 10 (63)
    • Windows 11 (31)
    • Windows 7 (100)
    • Windows 8 (36)
    • Windows 8.1 (28)
    • Windows Mobile (2)
    • Windows Vista (65)
    • Windows XP (21)
  • Cloud (15)
    • Amazon AWS (1)
    • Microsoft Azure (7)
    • Office 365 (9)
  • Fortbewegung (59)
    • Auto (19)
    • Bahn (19)
    • Beinarbeit (6)
    • Flugzeug (4)
    • Zweirad (15)
  • IT-Nachrichten (37)
  • Leben Beruf und Gesundheit (219)
    • #t2dhero (60)
    • Arbeitszimmer (39)
    • Audio (22)
    • Film / Kino (7)
    • Gedanken (81)
    • Gesundheit (39)
    • Internet (7)
    • Lebensmittel & Essen (23)
    • Lesestoff (21)
    • Sport (11)
    • Veranstaltung (3)
  • Lehren & Lernen (50)
    • Forschung (2)
    • Konferenzen (3)
    • Lehre (1)
    • Präsentation (4)
    • Zertifizierung (42)
  • Programme (334)
    • Android-Apps (28)
    • Eigene Tools (13)
    • iOS-Apps (7)
    • Office (89)
    • Patchday+Updates (77)
    • Software (155)
    • Spiele (3)
    • Windows Phone-Apps (2)
  • Programmierung (97)
    • AutoIT (2)
    • KiXtart (2)
    • PHP (3)
    • Power Automate (1)
    • Powershell (66)
    • VB.NET (11)
    • VBA (10)
    • VBS (10)
  • Server (165)
    • Citrix XenServer (2)
    • Exchange Server (27)
    • Lync Server (1)
    • System Center (4)
    • Ubuntu Server (2)
    • Windows Home Server (2)
    • Windows Server (92)
    • Windows Server 2012 (45)
    • Windows Server 2016 (15)
    • Windows Server 2019 (22)
    • Windows Server 2022 (21)
    • Windows Server 2025 (14)
  • Telekommunikation (38)
    • Festnetz (3)
    • Internet (13)
    • Mobilfunk (23)
  • Verkauf & Verlosung (1)
  • Web-Installationen (37)
    • Joomla (4)
    • Mastodon (1)
    • MediaWiki (10)
    • phpMyAdmin (2)
    • Piwik (4)
    • Wordpress (20)
Mastodon

Copyright © 2026 Daniels Tagesmeldungen.

Powered by PressBook WordPress theme