Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

Metadaten bzw. Schriftname aus einer TTF-Datei (Schrift-Datei) auslesen per VBSCRIPT

Frage Entwicklung VB for Applications

Mitglied: mayho33

mayho33 (Level 2) - Jetzt verbinden

11.07.2012, aktualisiert 12:45 Uhr, 6177 Aufrufe, 2 Kommentare

Hallo @ All!

Ich habe wieder mal ein Problem und beiße mir seit Tagen die Zähne aus damit.

Mein Problem:

Es ist fast allen bekannt, dass ene Schrift über den Namespace (FONTS) problemlos installiert werden kann

Const FONTS = &H14&
Set objShell = CreateObject("Shell.Application")
Set SysFonts = objShell.Namespace(FONTS)
objshell.CopyHere <Name>

(Copy & Paste reicht unter W7 meißtens nicht).

Es passiert aber oft, dass eine Schriftart bereits installiert (dateiname != Schriftname) ist und Windows fragt nach ob die Schrift nochmal installiert werden soll.
Da wir Verteilung in großen Stil machen (Silent auf 1000e PC) eher der worst case.

Auch die regstrierte Schrift über die Registry auszulesen + dazugehörige Datei arbeitet nicht zuverlässig (leider)

Meine letzte Idee dazu wäre noch die TTF-Datei selbst auszulesen, jedoch habe ich keien Ahnung wie ich das bewerkstelligen soll. Die Funktion die ich verwende (objfso.OpentextFile(datei, 1)) funkt nicht. Es werden nur ein paar Zeichen ausgelesen dann nichts mehr.

Hat hier jemand eine Idee wie ich aus einer TTF-Datei den Schriftname auslesen kann per VBSCRIPT? ich komme da einfach nicht mehr weiter.

Danke für die Hilfe!

lg

Mayho
Mitglied: rubberman
12.07.2012 um 00:17 Uhr
Hallo mayho33.

Übergib mal den vollen Dateiname an dieses Script (oder Drag/Drop):
01.
WScript.Echo GetFontName(WScript.Arguments(0)) 
02.
 
03.
Function GetFontName(sAbsPath) 
04.
  Dim oFSO, oShellApp, oFolder, oFolderItem 
05.
  Set oFSO        = CreateObject("Scripting.FileSystemObject") 
06.
  Set oShellApp   = CreateObject("Shell.Application") 
07.
  Set oFolder     = oShellApp.NameSpace(oFSO.GetParentFolderName(sAbsPath)) 
08.
  Set oFolderItem = oFolder.ParseName(oFSO.GetFileName(sAbsPath)) 
09.
  GetFontName     = oFolderItem.ExtendedProperty("DocTitle") 
10.
  Set oFolderItem = Nothing 
11.
  Set oFolder     = Nothing 
12.
  Set oShellApp   = Nothing 
13.
  Set oFSO        = Nothing 
14.
End Function
Grüße
rubberman
Bitte warten ..
Mitglied: mayho33
16.07.2012 um 14:55 Uhr
Hallo Rubberman!

und Danke für die Anwort. Ich habe das Problem mittlerweile anders gelöst. Habe die Freeversion von Installshield Spring 2012 geladen, die Schrift dort packetiert, anschließend das Setup gestartet und die extrahierte MSi kopiert (so wird der Trialschutz umgangen)
Die Isntallation schreibt zwar unter Add remove Programs ihre Einträge, das stört nich aber nicht. Hauptsache die Schrift ist sauber drinnen und doppelte Eintragungen werden ignoriert.

Danke nochmals und lG

mayho
Bitte warten ..
Ähnliche Inhalte
Windows 7
gelöst Schriften in Schriftdateien (otf, ttf) identifizieren (1)

Frage von rudeboy zum Thema Windows 7 ...

Batch & Shell
gelöst Datei zeilenweise auslesen - es passiert aber nichts (3)

Frage von Nagus zum Thema Batch & Shell ...

VB for Applications
gelöst Vbscript zum Anfügen von Text in scenery.cfg Datei (27)

Frage von aletri zum Thema VB for Applications ...

XML
gelöst Vbs - simple XML Datei auslesen (4)

Frage von DeeJayBee zum Thema XML ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows 10
Seekrank bei Windows 10 (18)

Frage von zauberer123 zum Thema Windows 10 ...

Windows 10
Windows 10 Fall Creators Update Fehler (14)

Frage von ZeroCool23 zum Thema Windows 10 ...

Router & Routing
gelöst Getrenntes Routing bei VoIP und Daten (12)

Frage von Hobbystern zum Thema Router & Routing ...