Español
Foro

Hecho: Edición de Konsolen-Programa einbinden

 

E.T.
Moin,
sieht alguien una Möglichkeit, el Ausgaben uno Konsolen-Programmes (welche sí en el cmd-Ventana son), en el eigenen Programa-Ventana einzubinden ??
Mi jetzige Umsetzung, el cmd-Ventana einzufangen, el Größe anzupassen y dieses entonces unterhalb meines Programa-Fensters anzudocken gefällt me überhaupt no:
Yo muß siempre el Fremdfenster con überwachen (Größenänderung, mover, minimieren, wiederherstellen etc.), y como el Konsolen-Programa bastante Hardware- y Speicher-Lastig es, kommt irgendwie alles no así bastante hinterher . Und el cmd-Ventana son auch en cada Win-Versión todavía unterschiedlich groß...
 

Also irgendwie el cmd-Ventana en mein Programa-Ventana integrieren, va algo como ???
Hab a ahora no idea brillante...

Das Konsolen-Proggi macht auch no Ausgaben en un .log-Expediente más o menos, welche Yo anzapfen podría (Das Prog es no de me, Yo voluntad sólo ne Oberfläche dazu, como el Bedienung komplett por Start-Parámetro funzt y el Ansprechen el Laufwerke como en SCSI (1:0:0, 0:1:0 etc.) doch arg a el Nerven va, a al richtige LW ha...).
 
Grüße aus Sachsen... Mario
WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte...
11.04.2009  
 




Andreas
Miethe


So algo ?
KompilierenMarcaSeparación
 $H Windows.ph
 $H Structs.ph
Struct PROCESS_INFORMATION = ~PROCESS_INFORMATION
Struct SECURITY_ATTRIBUTES = ~SECURITY_ATTRIBUTES
Struct STARTUPINFO = ~STARTUPINFO
DEF &NORMAL_PRIORITY_CLASS  $20
DEF &STARTF_USESTDHANDLES  $100
DEF &STARTF_USESHOWWINDOW  $1
CLS ~GetSysColor(~COLOR_BTNFACE)
SetDialogFont ~GetStockObject(~ANSI_VAR_FONT)
Var Ende& = 0
Var Multi& = Create(MultiEdit,%hwnd,,1,10,500,400)
Var Button& = Create(Button,%hwnd,Start,540,10,80,24)
Var Button1& = Create(Button,%hwnd,Ende,540,40,80,24)

Whilenot Ende&

    Waitinput

    If Clicked(Button1&)

        Ende& = 1

    ElseIf Clicked(Button&)

        SetText Multi&,
        Beispiel mit Ping
        DirektDosOutputToMultiedit(, ping localhost,255,Multi&)

    Endif

EndWhile

End

Proc DirektDosOutputToMultiedit

    Parameters Progname$,Command$,MemBuffer&,Multiedit&
    Declare hRPipe&,hWPipe&,pRBytes&,Result&
    Declare PI#,SI#,SA#
    Dim PI#,PROCESS_INFORMATION
    Dim SI#,STARTUPINFO
    Dim SA#,SECURITY_ATTRIBUTES
    Declare StringBuffer$
    StringBuffer$ = Space$(MemBuffer&)
    SA#.nLength& =SizeOf(SA#)
    SA#.bInheritHandle& = 1
    SA#.lpSecurityDescriptor& = 0
    Result& = ~CreatePipe(Addr(hRPipe&), Addr(hWPipe&), SA#, 0)

    If Result& = 0

        MessageBox(Pipe konnte nicht gestartet werden,,0)
        End

    Endif

    If Progname$ <>

        Command$ =   + Command$

    Endif

    SI#.cb& = SizeOf(SI#)
    SI#.dwFlags& = &STARTF_USESHOWWINDOW | &STARTF_USESTDHANDLES
    SI#.hStdOutput& = hWPipe&
    SI#.hStdError& = hWPipe&

    If Progname$ =

        Result& = ~CreateProcess(0, Addr(Command$), SA#, SA#, 1, &NORMAL_PRIORITY_CLASS, 0, 0, SI#,PI#)

    Else

        Result& = ~CreateProcess(Addr(Progname$), Addr(Command$),SA#,SA#,1,&NORMAL_PRIORITY_CLASS, 0, 0,SI#,PI#)

    Endif

    If Result& <> 1

        MessageBox(Datei nicht gefunden,,0)
        End

    Else

    Endif

    Result& = ~CloseHandle(hWPipe&)
    Var out$ =

    While Result& <> 0

        Result& = ~ReadFile(hRPipe&,Addr(StringBuffer$),MemBuffer&,Addr(pRBytes&), 0)

        If pRBytes& > 0

            Out$ = Left$(StringBuffer$,pRBytes&)
            ~OemToChar(Addr(Out$),Addr(Out$))
            Settext Multiedit&,GetText$(Multiedit&)+Out$

            If Instr(RUNNING,Out$)

                Messagebox(läuft,läuft,0)

            endif

        Endif

    Endwhile

    ~CloseHandle(PI#.hProcess&)
    ~CloseHandle(PI#.hThread&)
    ~CloseHandle(hRPipe&)
    Disponer PI#,SI#,SA#

ENDPROC

 
Gruss
Andreas
________ ________ ________ ________ _
Profan 3.3 - XProfanX2
Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit
ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher
Homepage :  [...] 
11.04.2009  
 




Paul
Glatz
@E.T. Zeig veces como du lo ahora machst.
 
11.04.2009  
 




Paul
Glatz
@E.T. Wenn lo reicht después de el final des Programmes el ausgabe a haben kannst du
KompilierenMarcaSeparación Helfen. El ausgabe liegt en el Angegebenen Textdatei!
 
11.04.2009  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

842 Views

Untitledvor 0 min.
E.T.09.12.2022
Sven Bader24.03.2021
ByteAttack11.10.2015
Uwe Lang03.09.2014
Más...

Themeninformationen

Dieses Thema ha 3 subscriber:

Paul Glatz (2x)
Andreas Miethe (1x)
E.T. (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie