Sie sind vermutlich noch nicht im Forum angemeldet - Klicken Sie hier um sich kostenlos anzumelden Impressum 
Sie können sich hier anmelden
Dieses Thema hat 4 Antworten
und wurde 61 mal aufgerufen
 Skripte und Zusatzprogramme
R.Wilke Offline



Beiträge: 6.119

22.12.2014 00:58
RE: Diktierquellen löschen - per Skript Thread geschlossen

A. Wagner hat neulich eine interessante und wichtige Frage aufgeworfen:

Zitat von "a.wagner"
In der neuen Version gibt es jetzt einen Extrapunkt „Diktierquellen verwalten“. Dort kann man aber nur vorhandene Diktierquellen auswählen und neue Diktierquellen hinzufügen.

Bei meiner Spielerei mit der Ablage des Benutzerprofils auf einem „OneDrive“ sind mehr oder weniger versehentlich viele Diktierquellen entstanden und ich möchte nun die eine oder andere löschen. Jetzt habe ich gesucht und keinen Menüpunkt gefunden. Hat jemand eine Idee oder einen Hinweis? Oder warte ich einfach bis 13.5?



http://dragon-spracherkennung.forumprofi...944.html#p13944

Damals habe ich u.a. geantwortet, dass ich vielleicht mal ein Programm dafür schreiben würde. Durch das Thema angeregt, ist mir aufgefallen, dass sich in einem meiner Profile im Laufe der Zeit zu der Hauptquelle noch vier weitere Quellen angesammelt hatten, durch Versuche mit unterschiedlichen Geräten, oder auch nach "Spielereien" verschiedener Art, wobei für jedes Gerät nun eigens Ordner mit umfangreichen Daten angelegt wird. Das Profil war dadurch immerhin auf ca. 2,5 GB angewachsen.

Also habe ich mir vorgenommen, mein Vorhaben umzusetzen, und habe in der Dragon SDK (die auch über Advanced Scripting ausgeführt werden kann) die dafür benötigten Methoden gefunden und ein Skript zum programmatischen Entfernen von Diktierquellen aus dem aktuell geladenen Profil entwickelt, welches ich den hier registrierten Mitgliedern zur Verfügung stellen möchte.

Das Skript führt einen Benutzer-Dialog aus, der für sich selbst sprechen sollte, weswegen ich auf die Funktionsweise nicht näher eingehen möchte. Hinweisen sollte ich nur darauf, dass das Entfernen von Quellen nicht mehr rückgängig gemacht werden kann, so dass man achtsam damit umgehen muss. Deshalb, oder auch generell, sollte man vorher sicherheitshalber ein Backup vom Profil anlegen. Ansonsten habe ich das Skript inzwischen so ca. 30 Mal getestet und keine Fehlfunktionen festgestellt.

Der Code ist - in aller Bescheidenheit - von mittlerem Schwierigkeitsgrad, aber durchgehend kommentiert, zum Nachvollzug, was darin geschieht. Vielleicht dient er auch als Anreiz zum Studium, und wer dazu Fragen hat, möge sich nicht scheuen, sie zu stellen.

Er geht so:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 

' ***************************************
'
' (C) R. Wilke 2014
' Diktierquellen programmatisch löschen
'
' ***************************************
 
' wird benötigt, um INI-Dateien auszulesen
Private Declare Function GetPrivateProfileString Lib "kernel32" _
Alias "GetPrivateProfileStringA" ( _
ByVal lpAppName As String, _
ByVal lpKeyName As String, _
ByVal lpDefault As String, _
ByVal lpReturnedString As String, _
ByVal nSize As Long, _
ByVal lpFileName As String) As Long
 
' global verwendete Deklarationen
Dim eng As New DgnEngineControl
Dim ListArray$() ' die Listeneinträge
Dim ListIndex() As Integer ' die Listenindices
Dim nListHeight As Integer ' die Höhe der Listbox
Dim strTitle As String ' Titel der Nachrichtenfenster
Dim strRetLoaded As String ' der Name der aktuellen Quelle
'
' stelle die Listeneinträge zusammen
' für jede zusätzliche (= nicht geladene) Quelle ein Listenlement
' der Name der Quelle wird in der Liste angezeigt, der Index gespeichert
 

...
 

 



... alles weitere im angehängten Skript. Viel Spaß damit!

_______________________________________

DPG 15.6 (15.60.200.015) auf Windows 10 Pro (64-bit)
SpeechMike Premium (LFH3500) + SpeechMike II
HP ZBook 17 G2 (Refurbished) - i7-4910qm - 8MB SmartCache - 32 GB RAM - 512 GB SSD - 1 TB HSSD - 2 TB HDD

P.Roch Offline



Beiträge: 1.125

22.12.2014 09:00
#2 RE: Diktierquellen löschen - per Skript Thread geschlossen

Gratuliere, Rüdiger, da ist Dir mal wieder ein großer Wurf gelungen!
Zu ergänzen wäre noch, dass das Skript nur in Version 13 funktioniert (vorherige Versionen kennen die UnpackDictationSourceConstant-Methode nicht), und selbstverständlich braucht es Editionen ab Professional aufwärts.
Gruß, Pascal

P.S. Kleine Frage am Rande: Nach der aoptions.ini wird gesucht. Wenn diese nicht gefunden wird, wird angezeigt, dass die options.ini nicht gefunden wurde. Fehlt da ein "a"?

a.wagner Offline



Beiträge: 420

22.12.2014 12:18
#3 RE: Diktierquellen löschen - per Skript Thread geschlossen

Hallo,

Der Import des Skripte funktionierte prima und es führt die gewünschte Funktion wohl auch aus. Eine Verringerung des Speicherplatzes habe ich noch nicht beobachten können, ich werde aber mal eine Genauigkeitsoptimierung durchführen und danach vielleicht eine Veränderung feststellen.

Gruß

A. Wagner

DNS 15.3 Individual mit SpeechMike LFH 3510, Intel(R) Core(TM)I7-7500 CPU, 16 GB RAM, Windows 10 Pro. 64 Bit

Dioskur Offline



Beiträge: 511

22.12.2014 12:40
#4 RE: Diktierquellen löschen - per Skript Thread geschlossen

lieber Rüdiger,

ich schließe mich der Gratulation von Pascal an. Das Skript funktioniert bei mir tadellos. Hast der Community ein schönes Weihnachtsgeschenk gemacht!

Frohe Weihnachten und ein gutes neues Jahr für Dich und das Forum!

Hans

DPI 15 auf Windows 10 Professional (64-bit)
SpeechMike Premium. Intel i7 Core 4x2.67 GHz, 6 GB RAM

R.Wilke Offline



Beiträge: 6.119

22.12.2014 23:41
#5 RE: Diktierquellen löschen - per Skript Thread geschlossen

Vielen Dank für die freundlichen Rückmeldungen allerseits. Da sind noch ein paar Fragen zu beantworten.

Zitat von "Pascal"
Zu ergänzen wäre noch, dass das Skript nur in Version 13 funktioniert



Ja, deswegen wird als erstes (in Sub Main) die Version geprüft, und abgebrochen, wenn es nicht 13 ist.

Zitat
Nach der aoptions.ini wird gesucht. Wenn diese nicht gefunden wird, wird angezeigt, dass die options.ini nicht gefunden wurde. Fehlt da ein "a"?



Wahrscheinlich ein Schreibfehler. Danke für den Hinweis. In Deiner Mail hast Du noch weitere Fragen gestellt. Upgrade-Profile werden verworfen, weil deren Ordner-Struktur von der in einem "Vollversion"-Profil ganz verschieden ist. Und dann gelingt die Suche nach "aoptions.ini" nicht - und vielleicht ist auch die Codierung der Geräte ID verschieden, da sie sich in der Ordner-Struktur wieder findet.

Die Suche nach aoptions.ini hat nur den Zweck, den Klarnamen des Gerätes heraus zu finden, um ihn anzeigen zu können. Du hast mir berichtet, dass bei Dir nicht vollständig angelegte Quellen vorhanden waren, wo keine aoptions.ini enthalten war. Interessant, auch ich hatte halb angelegte Quellen im Profil, aber immer mit aoptions.ini. Es liegt wohl daran, wann die Anlage der Quelle abgebrochen wird. Wenn es sich aber so darstellt, wie Du berichtest, werde ich den Abbruch des Skripts an der Stelle einfach herausnehmen, so dass es dann auch ohne aoptions.ini weiter läuft. (Das bekommst Du bestimmt auch selbst hin.)

Zitat
Eine Verringerung des Speicherplatzes habe ich noch nicht beobachten können



Merkwürdig, bei mir macht das Entfernen von vier nicht benötigten Quellen einen Unterschied von ca. 500 MB im current Ordner aus. Wenn sich das dann noch bis in den backup Ordner durchsetzt, ist es das Doppelte.

Zitat
Hast der Community ein schönes Weihnachtsgeschenk gemacht!

Frohe Weihnachten und ein gutes neues Jahr für Dich und das Forum!

Hans



Das war das Ziel dabei. Danke dafür und alles Gute auch meinerseits!

Rüdiger

_______________________________________

DPG 15.6 (15.60.200.015) auf Windows 10 Pro (64-bit)
SpeechMike Premium (LFH3500) + SpeechMike II
HP ZBook 17 G2 (Refurbished) - i7-4910qm - 8MB SmartCache - 32 GB RAM - 512 GB SSD - 1 TB HSSD - 2 TB HDD

Ähnliche Themen Antworten/Neu Letzter Beitrag⁄Zugriffe
Fehlende Diktierquellen
Erstellt im Forum Fragen zur Anwendung von
9 23.12.2017 17:52
von stb.schuenke • Zugriffe: 37
Diktierquellen werden nicht mehr geladen
Erstellt im Forum Fragen zur Anwendung von
11 02.04.2017 11:30
von R.Wilke • Zugriffe: 234
Benutzerprofile und Diktierquellen
Erstellt im Forum Fragen zur Anwendung von
4 18.05.2016 14:42
von P.Roch • Zugriffe: 49
Diktierquellen in DNS 13 löschen
Erstellt im Forum Fragen zur Anwendung von
11 21.05.2018 13:28
von R.Wilke • Zugriffe: 186
Diktierquellen löschen
Erstellt im Forum Fragen zur Anwendung von
7 28.01.2020 09:49
von P.Roch • Zugriffe: 149
Bibliothek mit Dutzenden von Skripten für DNS. Stand: 27.06.2013
Erstellt im Forum Skripte und Zusatzprogramme von
27 22.11.2016 11:53
von leluno • Zugriffe: 119
Zwei Diktierquellen gleichen Typs
Erstellt im Forum Fragen zur Anwendung von
1 09.04.2013 21:22
von R.Wilke • Zugriffe: 33
Skripte zur komfortablen sprachgesteuerten Nutzung von Firefox
Erstellt im Forum Skripte und Zusatzprogramme von
14 29.07.2016 16:30
von Sandra.H.H • Zugriffe: 53
Was sind Skripte und wofür kann ich sie verwenden (Beispiel)?
Erstellt im Forum FAQ & Troubleshoot: von
0 19.02.2010 00:29
von R.Wilke • Zugriffe: 90
 Sprung  
Xobor Ein Kostenloses Forum | Einfach ein Forum erstellen
Datenschutz