Seite 1 von 2

Shell Like!

Verfasst: 21.09.2005 20:49
von Heady
Hallo Leute gibt es in PB einen Befehl mit dem man Kommandos an die Windows Eingabeaufforderung senden kann?? wie in QB der Shell Befehl??
und wenn nicht wie mach ich das möglichhab schon ewig auf dem Board gesucht aber noch nichts gefunden danke für die Hilfe!

Mfg Heady

Verfasst: 21.09.2005 20:59
von PAMKKKKK
Schau mal in die PB Hilfe unter Misc -> RunProgram
oder willst du Text in eine offene Console schreiben ?
(bei PB heisst die Shell: Console ;)

Verfasst: 21.09.2005 21:01
von MVXA
Ach menno und ich hab ein so schönes Beispiel geschrieben :(...
Wenn es noch jemand will:

Code: Alles auswählen

Global strInput.s

OpenConsole()
Repeat
    Print(">"): strInput = Input(): PrintN("")
    If strInput: RunProgram(strInput): EndIf
Until Len(strInput)=0

Verfasst: 21.09.2005 21:03
von PAMKKKKK
@MVXA
Code ist immer besser als gelabere ;)

Verfasst: 21.09.2005 21:03
von ts-soft
Vielleicht hilft dies hier ja:

Code: Alles auswählen

; English forum: http://purebasic.myforums.net/viewtopic.php?t=6067&highlight=
; Author: PB
; Date: 05. May 2003

; Get the location of the Windows folder. 
windir$=Space(255) : GetWindowsDirectory_(@windir$,255) : If Right(windir$,1)<>"\" : windir$+"\" : EndIf 

; Get the right version of the command interpreter for this PC. 
cmd$=Space(255) : GetEnvironmentVariable_("comspec",@cmd$,255) ; Returns "command.com" (9x/ME) or "cmd.exe" (NT/2K/XP). 

; Now create a text file ("c:\list.txt") using the DIR command on the Windows folder. 
ShellExecute_(0,0,cmd$,"/c dir.exe "+Chr(34)+windir$+"*.*"+Chr(34)+" > "+Chr(34)+"C:\List.txt"+Chr(34),windir$,0) 

; instead of ShellExecute is also following possible:
; RunProgram(cmd$,"/c dir.exe "+Chr(34)+windir$+"*.*"+Chr(34)+" > "+Chr(34)+"C:\List.txt"+Chr(34),windir$,0) 

Verfasst: 21.09.2005 21:23
von Heady
Also danke erstmal für die schnelle Hilfe und die vielen Posts aber irgendwie will mein Prog noch nich so, muss mich da eben noch reinfuchsen aber hier mal mein Code sicher könnt ihr mir noch einmal helfen

Code: Alles auswählen

If OpenWindow(0,Random(624),Random(568),400,200,#PB_Window_SystemMenu,"Microsoft Word")

  If CreateGadgetList(WindowID())
    ButtonGadget(1,20,20,100,20,"Send")
    ButtonGadget(2,20,80,100,20,"Quit")
    
    ListViewGadget(3,150,20,230,80)
    IPAddressGadget(4,20,120,120,20)
    StringGadget(5,20,150,360,20,"Message")
  EndIf

Repeat
    EventID = WaitWindowEvent()
      If EventID = #PB_Event_CloseWindow 
        Quit = 1
      EndIf
      If EventID = #PB_Event_Gadget
        If EventGadgetID()=1
          a.s=GetGadgetText(4)
          b.s=GetGadgetText(5)
          AddGadgetItem(3,-1,"IP Addresse:"+a.s)
          AddGadgetItem(3,-1,"Message:"+b.s)
          OpenConsole()
          ConsoleTitle("Send")
            RunProgram("c:\net","send" + a.s +b.s,"",2)
          AddGadgetItem(3,-1,"Message wurde versant !")
        EndIf
        If EventGadgetID()=2
          Quit=1
        EndIf
        If EventGadgetID()=5
          
        EndIf
      EndIf
  Until Quit=1
EndIf
End

Habe was geändert!

Verfasst: 21.09.2005 21:42
von roherter
Keine ahnung obs hilft!

Code: Alles auswählen

If OpenWindow(0,Random(624),Random(568),400,200,#PB_Window_SystemMenu,"Microsoft Word")
  
  If CreateGadgetList(WindowID())
    ButtonGadget(1,20,20,100,20,"Send")
    ButtonGadget(2,20,80,100,20,"Quit")
    
    ListViewGadget(3,150,20,230,80)
    IPAddressGadget(4,20,120,120,20)
    StringGadget(5,20,150,360,20,"Message")
  EndIf
  
  Repeat
    EventID = WaitWindowEvent()
    If EventID = #PB_Event_CloseWindow
      Quit = 1
    EndIf
    If EventID = #PB_Event_Gadget
      If EventGadgetID()=1
        a.s=GetGadgetText(4)
        b.s=GetGadgetText(5)
        AddGadgetItem(3,-1,"IP Addresse:"+a.s)
        AddGadgetItem(3,-1,"Message:"+b.s)
        OpenConsole()
        ConsoleTitle("Send")
        RunProgram("c:\windows\system32\net.exe","send" + a.s +b.s,"",2);Hier wurde was geändert!
        AddGadgetItem(3,-1,"Message wurde versand !")
      EndIf
      If EventGadgetID()=2
        Quit=1
      EndIf
      If EventGadgetID()=5
        
      EndIf
    EndIf
  Until Quit=1
EndIf
End 

Verfasst: 21.09.2005 21:52
von Heady
srry hab schon probiert den kompletten pfad anzugeben ach und sorry für den unübersichtlich nicht vollständigen code openconsole wird dafür auch garnich gebraucht aber Jede kleinigkeit hilft danke noch mal :)

Verfasst: 21.09.2005 21:54
von PAMKKKKK
Net send funktioniert unter Windows Xp SP2 nicht mehr....
Einschalten siehe hier:
http://support.microsoft.com/?scid=kb;d ... 52&sid=237

Firewalls und Router lassen den auch nicht durch....

Verfasst: 21.09.2005 22:06
von Heady
hmmm SP2 hab ich nich drauf hab nur SP1 mein nachbar der is mit mir über meinen wlan router verbunden aber wenn ich die nachricht an mich selber schicke müsste es doch gehen in der cmd gehts auch. Erstmal ne nacht drüber schlafen cu leutz bis morgen :allright: :mrgreen: