AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein CreateProcess wirft Kernelbase Error
Thema durchsuchen
Ansicht
Themen-Optionen

CreateProcess wirft Kernelbase Error

Ein Thema von venice2 · begonnen am 2. Apr 2021 · letzter Beitrag vom 4. Apr 2021
Antwort Antwort
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: CreateProcess wirft Kernelbase Error

  Alt 3. Apr 2021, 23:13
folderyoutube + ' -U'
Ich dachte da eher an ein "Lade irgendwas irgendwo hin" ding aber gut, "-U" soll es werden. (-U erzeugt keinen progress-indikator, ich dachte darum geht es Dir)
Delphi-Quellcode:
        if not GenerateConsoleCtrlEvent(CTRL_BREAK_EVENT, Stophandle{PI.dwProcessId}) then
        begin
So weit bin ich noch nicht, aber schon mal GenerateConsoleCtrlEvent(CTRL_BREAK_EVENT, 0) probiert?

Wenn die Sterne gut stehen habe ich morgen auch ein paar Demos startklar.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#2

AW: CreateProcess wirft Kernelbase Error

  Alt 4. Apr 2021, 09:51
Zitat:
So weit bin ich noch nicht, aber schon mal GenerateConsoleCtrlEvent(CTRL_BREAK_EVENT, 0) probiert?
StopHandle ist 0 und PI.dwProcessId > 0 beides erzeugt 'Das Handle ist ungültig'
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#3

AW: CreateProcess wirft Kernelbase Error

  Alt 4. Apr 2021, 11:51
Zitat:
Ich dachte da eher an ein "Lade irgendwas irgendwo hin" ding
Interessiert mich persönlich eigentlich nicht weil ich nur die EXE Aktualisieren will, aber gut.

Öffne cmd.exe mit Adminrechten und Paste das da rein.
Zitat:
Video!
youtube-dl.exe -f mp4 --ignore-errors --continue -o "C:\DownLoad\%(title)s-%(id)s.%(ext)s" https://www.youtube.com/watch?v=EChjIHaBjf8
Danach sollte sich die Datei "Top 10 Unforgettable Golden Buzzers on America's Got Talent _ Got Talent Global-EChjIHaBjf8.mp4" unter C:\DownLoad befinden.
Das geht flott aber die Aktualisierung der EXE selber leider nicht.

Zitat:
Nur Audio!
youtube-dl.exe --extract-audio --audio-format mp3 -o "C:\DownLoad\%(title)s-%(id)s.%(ext)s" https://www.youtube.com/watch?v=EChjIHaBjf8
Ohne ID!
youtube-dl.exe --extract-audio --audio-format mp3 -o "C:\DownLoad\%(title)s.%(ext)s" https://www.youtube.com/watch?v=EChjIHaBjf8
Du kannst auch anstelle von mp3 -> m4a verwenden.

Fortschrittanzeige kannst du so verwirklichen.
Aber wie ich schon sagte ich benötige es nicht.
Delphi-Quellcode:
function ExtractTextBetween(const Input, Delim1, Delim2: string): string;
var
  aPos, bPos: Integer;
begin
  result := '';

  aPos := Pos(Delim1, Input);
  if aPos > 0 then
  begin
    bPos := PosEx(Delim2, Input, aPos + Length(Delim1));
    if bPos > 0 then
      result := Copy(Input, aPos + Length(Delim1), bPos - (aPos + Length(Delim1)));
  end;
end;
Delphi-Quellcode:
function GetPercentofVideo(str: String; lastpercent: integer): Integer;
var
  temp:String;
  itemp:integer;
  test:integer;
begin

  temp := ExtractTextBetween(str,'[download]','% of');
  try
    temp := trim(temp);
    Val(temp,itemp,test);
    Result := round(itemp);
  except
    Result := lastpercent;
  end;
end;
Delphi-Quellcode:
aForm.RichEdit1.Text := Output + aForm.RichEdit1.Text;
tmpPercent := GetPercentofVideo(aForm.RichEdit1.Text, percent);
percent := tmpPercent;
aForm.ProgressBar1.Position := percent;
Du kannst mein Projekt damit aktualisieren zum testen.

Geändert von venice2 ( 4. Apr 2021 um 13:47 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: CreateProcess wirft Kernelbase Error

  Alt 4. Apr 2021, 13:37
Interessiert mich persönlich eigentlich nicht weil ich nur die EXE Aktualisieren will, aber gut.
Boah, so kann man sich Irren, das tut mir voll leid.
Danke für Deine Erklärung wie man es aufruft um was zu erhalten, hatte ich eigentlich nur für Dich benötigt, hat sich ja von selbst erledigt.
(auf cmd ebene nutz ich was für mich besseres, yaydl (hier findet man eine .exe davon), das hat zwar hier und da ein paar macken, aber läuft ordentlich)
auf browser ebene macht es ein plugin, auf Programm ebene nutze ich einen download manager.)

Mein Gedanke war halt, weil Du was von einer progress anzeige meintest, das Du tatsächlich was laden wolltest.
So krass vertan hab ich mich ja schon lange nicht mehr.

Coole Methode ExtractTextBetween(), ich hätte wahrscheinlich den Ansipuffer von der Konsole verwendet um da per Laufzeit was zu regeln, wieder dazu gelernt!

Die Zeit den Update zu beschleunigen, da fällt mir nichts ein, ich habe es zwar schon minimal beschleunigt da ich die Python Skripte direkt nutze, nicht die .exe, aber Python reinladen und das ausführen zu lassen dauert seine Zeit.
(Die Update Prozedur schlingelt sich leider durch fast alle Skripte durch)

Für mich war halt die Herausforderung sehr Interessant mal wieder was Sinnvolles mit Pipes anzustellen.
Wenn es nur ums Update geht würde ich gar nichts darstellen lassen, ein freundliches label "background update in progress" und den im Hintergrund-Thread machen lassen, ob es eine Sekunde oder Stunde dauert kann Dir doch dann egal sein, es liegt ja nicht an Dir.
(Man kann ja eine Kopie starten falls während des updates noch ein Aufruf erfolgt.)
Aber da Du nicht ich bist, hast Du ja eh vollkommen andere Pläne, die ich respektiere.

Nächste Woche lese ich mir alles nochmal durch, update alles so wie Du beschrieben hast.
Danke für die mehr-Arbeit mit der progress anzeige.

2 1/2 verschiedene Wege mit Pipes zu arbeiten habe ich bereits erarbeitet, leider nichts was mehr speed beim ausführen bringt, nur verschiedene Wege um ans Ziel zu kommen.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#5

AW: CreateProcess wirft Kernelbase Error

  Alt 4. Apr 2021, 13:44
Zitat:
2 1/2 verschiedene Wege mit Pipes zu arbeiten habe ich bereits erarbeitet, leider nichts was mehr speed beim ausführen bringt, nur verschiedene Wege um ans Ziel zu kommen.
Nun ja wenn der Server dabei einschläft kann man selbst nicht viel machen.
Wie Ich schon sagte da hilft auch keine Batch ohne Code. Warum man da keine Fortschrittanzeige implementiert hat beim OutPut ist mir auch ein Rätzel.
Aber solange die Animation läuft sehe ich wenigstens das sich überhaupt was tut.
Zitat:
Coole Methode ExtractTextBetween()
Nicht aus meinem Mist gewachsen

Geändert von venice2 ( 5. Apr 2021 um 02:54 Uhr)
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#6

AW: CreateProcess wirft Kernelbase Error

  Alt 4. Apr 2021, 15:25
Hier ist ein Update mit oben genannten Änderungen.
Url kopieren mit linker Maustaste ins Edit klicken der Rest erklärt sich von selbst.
Sorry mehr mache ich nicht. In meinen Player übernimmt das der Wrapper für Youtube 3DYDYoutube von daher benötige ich es nicht.

Geändert von venice2 ( 7. Apr 2021 um 21:44 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: CreateProcess wirft Kernelbase Error

  Alt 4. Apr 2021, 15:56
Geiles Ding das Du das komplette Projekt nochmal bereit stellst *sag brav danke dafür*
Aber ich frage mich ob da was falsch lief, der Inhalt vom letzten Archiv entspricht dem vom vorletzten (gleicher archivname)?
(mein fehler, downloader hat datei mehrmals geladen...)

Beim nochmal drüber nachdenken, Geschwindigkeit der Ausführung von youzube-dl.exe, vielleicht gibt es da doch was.
Ich wage mich jetzt auf extrem dünnes Eis da ich das Produkt nicht kenne, nur nebenbei mal was von gehört habe.

Es gibt ein Projekt was sich "PythonForPascal" oder "Phyton4Pascal" oder ähnlich nennt.
Wenn das Projekt Python-Skripte ausführen kann, könntest du vielleicht doch noch bisschen zeit einkaufen indem du beim start schonmal python im Hintergrund hochfährst.
Das ist es was bei der youtube-dl.exe Datei am längsten dauert, interpreter bereitstellen.
Wenn das Projekt wiederum eher ein Konverter ist (python <-> pascal) dann denk ich mal vergiss diese Zeilen ganz schnell wieder. (Idee ab in Keller, Schloss zu, Schlüssel putt machen)

Ich habe gerade leider keinen Link dazu parat, sonst hätte ich schonmal selbst was gelesen.
Gruß vom KodeZwerg

Geändert von KodeZwerg ( 4. Apr 2021 um 16:00 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz