Ergebnis 1 bis 10 von 10
Danke Übersicht10Danke
  • 2 Post By areiland
  • 1 Post By areiland
  • 1 Post By areiland
  • 1 Post By .Bernd
  • 1 Post By areiland
  • 4 Post By areiland
Thema: Assoc-Befehl in cmd Hallo, ich wollte in cmd mit dem assoc Befehl einstellen, dass .pdf Datein mit dem Editor geöffnet werden. Dazu gab ...
  1. #1
    agent876
    Herzlich willkommen

    Assoc-Befehl in cmd

    Hallo,
    ich wollte in cmd mit dem assoc Befehl einstellen, dass .pdf Datein mit dem Editor geöffnet werden.
    Dazu gab ich fogendes ein: assoc .pdf=txtfile
    Sollte das nicht so funktionieren?
    Ich bekam den Fehler:
    Zugriff verweigert
    Folgender Fehler trat auf: .pdf.

    Könnt ihr mir bitte sagen, was ich falsch gemacht habe?

  2. #2
    areiland
    Computer Legastheniker Avatar von areiland

    AW: Assoc-Befehl in cmd

    Du musst die Eingabeaufforderung mit Adminrechten starten - das sagt die Fehlermeldung auch aus.
    agent876 und Terrier! bedanken sich.

  3. #3
    agent876
    Herzlich willkommen

    AW: Assoc-Befehl in cmd

    Vielen Dank für deine Antwort!
    Es funktioniert jetzt!
    Eine Frage habe ich aber noch: Gibt es eine Möglichkeit, das so in einer bat-Datei zu schreiben, dass man diese nicht mit Administratorrechten ausführen muss um den Befehl ausführen zu können?

  4. #4
    areiland
    Computer Legastheniker Avatar von areiland

    AW: Assoc-Befehl in cmd

    Nein, denn das System verweigert Dir ja die Schreibrechte, weil Du da nicht mit Adminrechten agierst. Du kannst das aber in einer Batchdatei ablegen, zu der eine Verknüpfung erstellen und in der einstellen, dass sie immer mit Adminrechten ausgeführt werden soll.

    Wenn Du das richtig ausgestaltest, dann kannst Du Dich dabei auch fragen lassen, welche Endung mit welchem Dateityp verknüpft werden soll.

    Das geht etwa so:

    Set /p =
    Set /p =
    Assoc %1 = %2


    Wenn Du das als Batchdatei ablegst, wird zuerst die Dateiendung erfragt, dann wird der Dateityp erfragt und daraus wird der Befehl dann erstellt und ausgeführt.
    Geändert von areiland (11.03.2017 um 10:00 Uhr) Grund: Korrektur!
    agent876 bedankt sich.

  5. #5
    agent876
    Herzlich willkommen

    AW: Assoc-Befehl in cmd

    Vielen Dank!
    Werde ich gleich ausprobieren!

  6. #6
    areiland
    Computer Legastheniker Avatar von areiland

    AW: Assoc-Befehl in cmd

    Lies nochmal meinen obigen Post, ich hab ihn korrigiert, bei "Set /p =" muss die Zeile ab dem Gleichheitszeichen leer bleiben.
    agent876 bedankt sich.

  7. #7
    .Bernd
    gehört zum Inventar Avatar von .Bernd

    AW: Assoc-Befehl in cmd

    Batch, auf einem modernen Windows System

    https://blogs.technet.microsoft.com/...rshell-script/
    https://gallery.technet.microsoft.co...-file-3898f323
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Assoc-Befehl in cmd-are-you-too-busy-to-improve2.png  
    agent876 bedankt sich.

  8. #8
    areiland
    Computer Legastheniker Avatar von areiland

    AW: Assoc-Befehl in cmd

    @.Bernd
    Naja, die Powershell ist für sowas dann doch etwas überzogen.
    agent876 bedankt sich.

  9. #9
    .Bernd
    gehört zum Inventar Avatar von .Bernd

    AW: Assoc-Befehl in cmd

    Es ist leider die einzige Zukunft, mit der man vernünftig arbeiten kann. Natürlich erfordert es mehr Einarbeitung, aber es bietet auch erheblich mehr. Und bei komplexeren Batch-Strukturen wesentlich leichter umzusetzen.

    Mir ist das im Prinzip schleierhaft, warum MS selbst an diesem überholten Quark festhält, nur um Alt-Admins zu hofieren. Es gibt reichlich Befehle, die schon auf 32 oder 64 Bit gehoben worden sind - ohne Eingabeaufforderumg und comspec, da fehlt die letzte Konsequenz. Es wäre schon gut, wenn man NET nicht mehr nutzen könnte auf dieser Ebene, im Bereich Netzwerk und Zugriffe. Statische Zuweisen via net use sind überholt. Allerdings kann NET noch mehr. Genauso wie ipconfig und ähnliche, ob das auch mit PS umsetzbar ist kann ich nicht sagen, bei ipconfig wird blanko die Registry ausgelesen, ist mit jedem anderen Script auch möglich und zwar auf einer Ebene, die schneller und direkter arbeitet.

    Negativbeispiel ist REG, welches direkt mit der Registry hantiert und auch für "schlechte" (zB versteckte) Einträge nutzbar ist. Als Admin kann man vieles abschalten, aber sowas hätte ich ganz rausgekickt.

    Ich arbeite bei komplexen Probleme gerne mit AutoIt, entweder mit den Scripten oder als Kompilation.

    In Bezug auf assoc würde ich eher auf eine Reg-Datei zurückgreifen. Natürlich ist deine Lösung mit Batch-Parametern variabler. Es gäbe auch die Option "OpenWithList", zB

    HKEY_CLASSES_ROOT\.htm\OpenWithList

    Bsip: HKEY_CLASSES_ROOT\.htm\OpenWithList\notepad.exe
    keine weiteren Werte, die Angabe notepad.exe reicht schon, notepad.exe muss sich dann auch unter den eingetragenen Apps befinden:
    HKEY_CLASSES_ROOT\Applications\notepad.exe


    oder

    HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\filetype\OpenWi thList
    https://technet.microsoft.com/de-de/.../ee851670.aspx


    Unter Windows Home sind diese Möglichkeiten begrenzt, ab der Pro könnte man auch die GPO für Programmzuordnungen zu ändern.

  10. #10
    areiland
    Computer Legastheniker Avatar von areiland

    AW: Assoc-Befehl in cmd

    @.Bernd
    Natürlich ist die Powershell die Zukunft. Ich nutze sie ja auch am liebsten, schon weil sie mir Möglichkeiten bietet, die per Batch gar nicht mehr umsetzbar sind.

    Aber für kleinere Dinge ist ein einfacher Batch oft praktikabler als ein Powershellscript. Das fängt schon damit an, dass Powershellskripte per se nicht mit einem Doppelklick ausgeführt werden können. Und über den Rechtsklick läufts dann auch nur mit Benutzerrechten, weil "Als Administrator ausführen" dort nicht zur Verfügung steht.

    Was Ipconfig und Co angeht, man kann in der Powershell ja alles mit gwmi auslesen. Da ist der Vorteil ja, dass man erstens schön filtern kann und die Ergebnisse bei Bedarf in html, xml, csv oder eben rein als Text speichern kann. Kann man zwar auch mit Wmic, aber per Powershell ist es wesentlich schöner zu lösen und man hat Zugriff auf .NET Funktionen um die Scripte direkt mit Win32 Dialogen zu verbinden.

    Da ist eine meiner liebsten Beispielzeilen immer noch die hier: powershell.exe -WindowStyle hidden -noexit "Get-EventLog System -newest 200 -EntryType Error, Warning | select En*, Ev*, Source, TimeWritten, Mess* | ogv -title Systemlog". Die als Verknüpfung angelegt, schon bekommt man auf Doppelklick aus den letzten 200 Einträgen des Systemlog die Fehler und Warnungen in einem Windowsdialog präsentiert, in dem man dann nach Herzenslust filtern kann.
    Ralfjohannes, Henry E., .Bernd und 1 weitere bedanken sich.

Lesezeichen


  • An Google übertragen Google
  • -->

    Berechtigungen

    • Neue Themen erstellen: Nein
    • Themen beantworten: Nein
    • Anhänge hochladen: Nein
    • Beiträge bearbeiten: Nein
    •  

    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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163