Seite 1 von 4

[ERLEDIGT] RunProgram url und einen String hinzufügen?

Verfasst: 06.04.2016 20:51
von udg
Ich habe global festgelegt, dass es eine URL aufrufen soll.
diese ist unvollständig und soll vervollständigt werden indem aus einem InputFeld eine Seiten-Kennungsnummer an die Globale URL angehangen werden soll.

Mein Code ist folgender:

Code: Alles auswählen

Global Url.s="http://store.steampowered.com/api/appdetails?appids="
das Input Feld wo ich dei APP ID eingeben können soll, dazu:

Code: Alles auswählen

StringGadget(#Input_Api_Number, 230, 50, 250, 28, " ", #PB_Text_Center|#SS_CENTERIMAGE|#PB_String_BorderLess)
Mein Ansatz ?

Code: Alles auswählen

Global Url.s="http://store.steampowered.com/api/appdetails?appids=",+ GetGadgetText(#Input_Api_Number)

Code: Alles auswählen

RunProgram("iexplore.exe",+ GetGadgetText(#Input_Api_Number)+ " "+, "")



die Nummer aus dem StringGadget ist eine APP ID Nummer im SteamShop

Diese App ID Nummer soll aus den StringGadget gelesen werden und an die Globale URL angehangen, sodass dies hier dann zb. rauskommt und im InternetExplorer aufgerufen wird:

Code: Alles auswählen

http://store.steampowered.com/api/appdetails?appids=374320
das ist die Globale URL:

Code: Alles auswählen

http://store.steampowered.com/api/appdetails?appids=
und das die eingegebene Nummer: 374320

Danke für eine Hilfe

Re: RunProgram Iexplore.exe url und einen String hinzufügen?

Verfasst: 06.04.2016 21:03
von ts-soft
udg hat geschrieben:Mein Ansatz ?

Code: Alles auswählen

Global Url.s="http://store.steampowered.com/api/appdetails?appids=",+ GetGadgetText(#Input_Api_Number)
Ich denke mal, da ist ein Komma zu viel :wink:

Re: ERLEDIGT RunProgram url und einen String hinzufügen?

Verfasst: 06.04.2016 21:05
von udg
Danke ich habs:

Code: Alles auswählen

RunProgram("http://store.steampowered.com/api/appdetails?appids="+GetGadgetText(#Input_Api_Number))
Funktioniert :allright:

besten Dank

Re: ERLEDIGT RunProgram url und einen String hinzufügen?

Verfasst: 06.04.2016 21:10
von udg
wenn ich das Komma rausnehme funktioniert die Globale URL Einstellung, jedoch wird nun nicht der Inhalt des Stringgadgets übernommen.

Code: Alles auswählen

Global Url.s="http://store.steampowered.com/api/appdetails?appids="+ GetGadgetText(#Input_Api_Number)
das StringGadget befindet sich in einer anderen Prozedur als das WebGadget. dieses wird per Button aufgerufen.

übernimmt es aus diesem Grund die Werte nicht?

Re: ERLEDIGT RunProgram url und einen String hinzufügen?

Verfasst: 06.04.2016 21:13
von RSBasic
Du kannst die Variable auch später setzen. Lass die Variable, die definiert wird, leer und setze die Variable erst im Event-Bereich, sobald der Button gedrückt wurde.

Re: ERLEDIGT RunProgram url und einen String hinzufügen?

Verfasst: 06.04.2016 21:27
von udg
Meinst du es so:

Code: Alles auswählen

(...)
Global Url.s="http://store.steampowered.com/api/appdetails?appids="
(...)

;Schleife
;-BTN AUSLESEN DES STEAM KEY
          Case #Btn_SteamApi
            Start() ; öffne WebGadget
            Url.s="http://store.steampowered.com/api/appdetails?appids="+GetGadgetText(#Input_Api_Number)
nope, geht nit

Re: ERLEDIGT RunProgram url und einen String hinzufügen?

Verfasst: 06.04.2016 21:35
von RSBasic
Da ich deinen Quellcode leider nicht kenne, weiß ich auch nicht, wo der Fehler ist.
Hier mal ein Beispielcode, den du mit deinem vergleichen kannst. Vielleicht findest du beim Vergleichen den Fehler:

Code: Alles auswählen

EnableExplicit

Global Url.s

Enumeration
  #Input_Api_Number
  #Btn_SteamApi
  #Web_Steam
EndEnumeration

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  StringGadget(#Input_Api_Number, 230, 50, 250, 28, " ", #PB_Text_Center|#SS_CENTERIMAGE|#PB_String_BorderLess)
  ButtonGadget(#Btn_SteamApi, 230, 90, 250, 28, "Auslesen", 0)
  WebGadget(#Web_Steam, 10, 10, 210, 118, "")
  Repeat
    Select WaitWindowEvent()
      Case #PB_Event_Gadget
        Select EventGadget()
          Case #Btn_SteamApi
            Url.s="http://store.steampowered.com/api/appdetails?appids="+GetGadgetText(#Input_Api_Number)
            Debug Url
            SetGadgetText(#Web_Steam, Url)
        EndSelect
      Case #PB_Event_CloseWindow
        End
    EndSelect
  ForEver
EndIf

Re: ERLEDIGT RunProgram url und einen String hinzufügen?

Verfasst: 06.04.2016 21:36
von Kiffi
udg hat geschrieben:

Code: Alles auswählen

            Start() ; öffne WebGadget
            Url.s="http://store.steampowered.com/api/appdetails?appids="+GetGadgetText(#Input_Api_Number)
ohne jetzt Deinen Code genauer zu kennen: Das sieht mir nach der falschen Reihenfolge aus. Willst Du nicht zuerst den URL zuweisen und dann das WebGadget öffnen?

Grüße ... Peter

Re: ERLEDIGT RunProgram url und einen String hinzufügen?

Verfasst: 06.04.2016 21:50
von udg
hier mal mein Code ( noch nciht geordnet da ich gerade am probieren bin):

EDIT:
aufgeräumt -> läuft

Code: Alles auswählen

InitNetwork()
Global WebObject.IWebBrowser2


;{ Gadgets
Enumeration
  ;Main Window
    #Window_0
  ; Main Gadgets
    #Btn_Exit
    #Image_Exit_Normal
    #Image_Exit_Red
    #Editor_Nfo
    #MausArea
    #Font_MausArea
    #Btn_Save
    #Font_Btn_Save
    #Font_Editor_Gadget
    #Btn_SteamApi
    #Input_Api_Number
    #SteamApi_Text
    #SteamApi_font
    #container
    #clear_editorfield_back
    #clear_editorfield
    #Font_Btn_clear_editorfield
    #ProgressBar
EndEnumeration
;}

;{ Included Images
DataSection
  Image_Exit_Normal:
  ;{ exit_normal.png, Size = 328 bytes
  Data.l $474E5089,$0A1A0A0D,$0D000000,$52444849,$22000000,$17000000,$00000208,$3A959601,$0000001D,$59487009,$0E000073,$0E0000C3
  Data.l $6FC701C3,$000064A8,$4449FA00,$9C785441,$FFFFF963,$6012033F,$19B75081,$F9915418,$647970AA,$74582CF5,$06865162,$1DF61450
  Data.l $C0722860,$812C8721,$AC164CCF,$071228A2,$BD9F12FA,$9CEA8864,$50E12E8F,$7E589554,$519B0A3A,$E13BF3AA,$0763C6DE,$76129F1E
  Data.l $2CF41517,$ED344F2B,$4D8AAF9C,$781EA70A,$07A09040,$CF4B200F,$5D1B8740,$2F9624F4,$5A69DF9B,$33A18CBE,$610C4B0A,$00D403D7
  Data.l $3BF3924C,$62CAB0A3,$BCACB3D7,$EEA7BE6D,$4A8CA46D,$11240F58,$5380D560,$A8307E0F,$DE9190F5,$0E86B1C8,$6B708C76,$76F96580
  Data.l $17CF2A89,$E2190B6D,$11D5A3E7,$C1C6B454,$1B7B75D7,$D7310ED0,$20EC122A,$D9601ACD,$7E3C5BBD,$46507CFE,$912B7A04,$60910F14
  Data.l $C3A7300D,$A287130B,$40DAC4F9,$809435AA,$000D65E1,$754D2247,$528F5DE3,$00000000,$444E4549,$826042AE
  Image_Exit_Normal_End:
  ;}
  Image_Exit_Red:
  ;{ exit_red.png, Size = 326 bytes
  Data.l $474E5089,$0A1A0A0D,$0D000000,$52444849,$22000000,$17000000,$00000208,$3A959601,$0000001D,$59487009,$0E000073,$0E0000C3
  Data.l $6FC701C3,$000064A8,$4449F800,$9C785441,$AEC33963,$580480CE,$03371420,$FE6457C3,$B23CB857,$3A2C167A,$034328B1,$92550A28
  Data.l $C5CCEE19,$812C8721,$AC164CCF,$221228A2,$28706F1B,$D1D13C33,$E3789740,$C57C691F,$A33609E3,$39D59FCE,$781D844F,$5DD84A7C
  Data.l $7323D054,$1D7BC6E5,$A4D8AF8D,$0781EA70,$F07A0904,$0CF4B200,$45D1B874,$CA95F18F,$B43B3AB3,$96AE187B,$C594C79C,$01A807AE
  Data.l $EACF2498,$8F6093B4,$67E595CC,$23710FFB,$7AC25465,$AB008920,$F07A9C06,$87AD4183,$8E46F48C,$63B07435,$2C035B84,$476FC5CB
  Data.l $2E5D54BE,$D67750CF,$ACAD157F,$50BED379,$8ED000FC,$481D2F87,$6B3483B0,$F8B76580,$1CB3BADD,$F4088CA0,$1E293196,$601AC122
  Data.l $70D7874E,$DE35FC6F,$9073AF10,$6EC18126,$B735000D,$24470847,$00009783,$45490000,$42AE444E
  Data.b $60,$82
  Image_Exit_Red_End:
  ;}
EndDataSection
;}

;Image Plugins
  UsePNGImageDecoder()
 
 Global Url.s
 
; Kontextmenu for EditorGgadget and Mouse Event move Window
Procedure WinCallback(hWnd, uMsg, wParam, lParam)
  Protected result = #PB_ProcessPureBasicEvents
  Select uMsg
    Case #WM_CONTEXTMENU
      If GadgetID(#Editor_Nfo) = wParam
        DisplayPopupMenu(#Editor_Nfo, WindowID(#Window_0))
      EndIf
     
    ;Fenster mit Maus verschieben   
      Case #WM_LBUTTONDOWN
        SendMessage_(hWnd, #WM_NCLBUTTONDOWN, #HTCAPTION, 0)
  EndSelect 
  ProcedureReturn result
EndProcedure

hwnd = OpenWindow(#Window_0, 298, 150, 710, 535, "",#PB_Window_BorderLess| #PB_Window_ScreenCentered);
  SetWindowColor(#Window_0, RGB(40, 40, 40))
   
;EXIT BUTTON NORMAL AND HOVER
  Define Exit_Normal = CatchImage(#Image_Exit_Normal, ?Image_Exit_Normal, ?Image_Exit_Normal_End - ?Image_Exit_Normal)
  Define Exit_Red = CatchImage(#Image_Exit_Red, ?Image_Exit_Red, ?Image_Exit_Red_End - ?Image_Exit_Red)
    br = ImageWidth(#Image_Exit_Normal)
    hh = ImageHeight(#Image_Exit_Red)
    ;POSITION WEHRE TO PLACE ON SCREEN 
       CanvasGadget(#Btn_Exit, 676, -2, br, hh)
       SetGadgetAttribute(#Btn_Exit, #PB_Canvas_Image, ImageID(#Image_Exit_Normal))
       
;GLOBAL FONT
  Font1 = LoadFont(#PB_Any, "Arial", 19, #PB_Font_HighQuality)

;BTN STEAM API
  TextGadget(#SteamApi_Text, 230, 30, 200, 16, "enter steam APP/ Game identifier") 
    SetGadgetFont(#SteamApi_Text, LoadFont(#SteamApi_font, "Lucida", 8, #PB_Font_HighQuality));Button Font
    SetGadgetColor(#SteamApi_Text, #PB_Gadget_BackColor, RGB(40, 40, 40))   ;TEXT Background Color
    SetGadgetColor(#SteamApi_Text, #PB_Gadget_FrontColor, RGB(73, 184, 240));TEXT Color
       
;INPUTFIELD STEAM API NUMMER   
    StringGadget(#Input_Api_Number, 230, 50, 250, 28, "374320", #PB_Text_Center|#SS_CENTERIMAGE|#PB_String_BorderLess)
    SetGadgetColor(#Input_Api_Number, #PB_Gadget_FrontColor, RGB(73, 184, 240));RGB(229, 229, 229));TEXT Color
    SetGadgetColor(#Input_Api_Number, #PB_Gadget_BackColor, $727171);RGB(141, 141, 141)) ;Background Color
    SetGadgetFont(#Input_Api_Number, FontID(Font1))
     
;CREATE 1px EDGES FOR BTN
  TextGadget(#container,229, 89, 252, 42,"")
    SetGadgetColor(#container, #PB_Gadget_BackColor, RGB(109, 109, 109));TEXT Background Color
 
;BUTTON STEAM API
  TextGadget(#Btn_SteamApi, 230, 90, 250, 40, "run and view APP/ GAME Infos",#SS_CENTERIMAGE|#SS_NOTIFY|#SS_CENTER)
    SetGadgetFont(#Btn_SteamApi, LoadFont(#SteamApi_Text, "Lucida", 10, #PB_Font_HighQuality)) ;Button Font
    SetGadgetColor(#Btn_SteamApi, #PB_Gadget_BackColor, RGB(59, 59, 59))    ;TEXT Background Color
    SetGadgetColor(#Btn_SteamApi, #PB_Gadget_FrontColor, RGB(109, 109, 109));TEXT Color
   
;BUTTON SAVE
  TextGadget(#Btn_Save, 230, 460, 150, 50, "save as TXT File",#SS_CENTERIMAGE|#SS_NOTIFY|#SS_CENTER) 
    SetGadgetFont(#Btn_Save, LoadFont(#Font_Btn_Save, "Lucida", 9, #PB_Font_HighQuality)) ; Button Font
    SetGadgetColor(#Btn_Save, #PB_Gadget_BackColor, RGB(78, 78, 78))    ;TEXT Background Color
    SetGadgetColor(#Btn_Save, #PB_Gadget_FrontColor, RGB(155, 155, 155));TEXT Color
   
;CLEAR EDITOR FIELD
  TextGadget(#clear_editorfield , 390, 460, 80, 50, "clear TXT",#SS_CENTERIMAGE|#SS_NOTIFY|#SS_CENTER) 
    SetGadgetFont(#clear_editorfield , LoadFont(#Font_Btn_clear_editorfield, "Lucida", 9, #PB_Font_HighQuality));Button Font
    SetGadgetColor(#clear_editorfield , #PB_Gadget_BackColor, RGB(78, 78, 78))    ;TEXT Background Color
    SetGadgetColor(#clear_editorfield , #PB_Gadget_FrontColor, RGB(155, 155, 155));TEXT Color 
   
;EDITOR GADGET
    EditorGadget(#Editor_Nfo, 22, 150, 665, 280, #PB_Editor_WordWrap)
    SetGadgetText(#Editor_Nfo, "waiting for data. hit the button to start the process")
 
;REMOVE FRAME FROM EDITOR GADGET
    SetWindowTheme_(GadgetID(#Editor_Nfo), @"", @"")
    SetWindowLongPtr_(GadgetID(#Editor_Nfo), #GWL_EXSTYLE, 0)
    SetWindowPos_(GadgetID(#Editor_Nfo), 0, 0, 0, 0, 0, #SWP_NOMOVE | #SWP_NOSIZE | #SWP_FRAMECHANGED)
    SetGadgetFont(#Editor_Nfo, LoadFont(#Font_Editor_Gadget, "Lucida", 10, #PB_Font_HighQuality)) ;Button Font
    SendMessage_(GadgetID(#Editor_Nfo),#EM_SETBKGNDCOLOR,0,RGB(55, 55, 55))                       ;Background Color
    SetGadgetColor(#Editor_Nfo, #PB_Gadget_FrontColor, RGB(60, 145, 187))                         ;TEXT Color
 
;WINDOW TITLE
  TextGadget(#MausArea, 0, 0, 676, 21, "   checking Steam API - coding: inc in 2k16",#SS_CENTERIMAGE)
    SetGadgetColor(#MausArea, #PB_Gadget_FrontColor, RGB(0, 168, 224)) ;TEXT Color
    SetGadgetColor(#MausArea, #PB_Gadget_BackColor, RGB(48, 103, 140)) ;TEXT Background Color
    SetGadgetFont(#MausArea, LoadFont(#Font_MausArea, "Arial", 10, #PB_Font_HighQuality));Button Font 
   
;DECLARE KONTEXT MENU FOR EDITOR GADGET
  If CreatePopupMenu(#Editor_Nfo)
     MenuItem(1, "paste from clipboard")
     MenuItem(2, "copy to clipboard")
  EndIf
     
  SetWindowCallback(@WinCallback())

Repeat
  Event = WaitWindowEvent()
  EventGadget = EventGadget()
  EventType = EventType()
   ;FREE KONTEXT MENU FRO EDITOR GADGET
      Select event
          Case #PB_Event_Menu
            Select EventMenu()
              Case 1
                SetGadgetText(#Editor_Nfo,GetClipboardText())
              Case 2
                SendMessage_(GadgetID(#Editor_Nfo), #EM_GETSEL, @startPos, @stopPos)
                SetClipboardText(Mid(GetGadgetText(#Editor_Nfo), startPos + 1, stopPos - startPos))
            EndSelect
      EndSelect
     
    ;BUTTON: SAVE CONTENT FROM EDITOR GADGET TO FILE
      If Event=#PB_Event_Gadget
        If EventGadget()= #Btn_Save
          ;READ CONTENT
            Text$= GetGadgetText(#Editor_Nfo)
           
          ;OPEN SAVE FILE REQUESTER
            File$=SaveFileRequester("Save TXT File", "C:\info.txt ", "TXT FILE(*.txt)|*.txt", 0)   
           
          ;WRITE FILE TO DESIRED LOCATION
            If CreateFile(1, File$)
               WriteStringN(1,Text$, #PB_Ascii)
               CloseFile(1)
            EndIf 
        EndIf   
     EndIf
     
  ;BUTTON EVENTS
    If Event = #PB_Event_Gadget
      Select EventGadget()
       
      ;-INPUT FELD STEAM NUMBER
        Case #Input_Api_Number
        ;AUTO HIGHLIGHT TEXT ON FOCUS: INPUT FIELD
         If EventType() = #PB_EventType_Focus
            SendMessage_(GadgetID(EventGadget()), #EM_SETSEL, Len(GetGadgetText(EventGadget())), 0)
         EndIf
         
        ;AUTO HIGHLIGHT TEXT ON FOCUS: EDITOR GADGET
         Case #Editor_Nfo
         If EventType() = #PB_EventType_Focus
              SendMessage_(GadgetID(EventGadget()), #EM_SETSEL, Len(GetGadgetText(EventGadget())), 0)
         EndIf
         
        ;BUTTON: READ STEAM KEY
         Case #Btn_SteamApi
          Url.s="http://store.steampowered.com/api/appdetails?appids="+GetGadgetText(#Input_Api_Number)
            ReceiveHTTPFile(Url, GetTemporaryDirectory() + "appdetails.txt")
              If ReadFile(1,GetTemporaryDirectory() + "appdetails.txt")           
                  FileContent1$ = ReadString(1,#PB_File_IgnoreEOL)
                  CloseFile(1)
              EndIf
              SetGadgetText(#Editor_Nfo, FileContent1$)         
           
        ;BUTTON CLEAR EDITOR GADGET
          Case #clear_editorfield   
            SetGadgetText(#Editor_Nfo, "waiting for data. hit the button to start the process...")
           
        ;EXIT BUTTON   
          Case #Btn_Exit                 
            Select eventtype
              Case #PB_EventType_MouseEnter
                SetGadgetAttribute(#Btn_Exit, #PB_Canvas_Image, ImageID(#Image_Exit_Red))
                 Case #PB_EventType_MouseLeave
                   SetGadgetAttribute(#Btn_Exit, #PB_Canvas_Image, ImageID(#Image_Exit_Normal))
                   ;PROGRAM EXIT, IF CLICK ON EXIT BUTTON
                      Case #PB_EventType_LeftButtonDown
                      ;CLOSE ALL
                        End
            EndSelect
    EndSelect
  EndIf
Until IsWindow(#Window_0)=0 And IsWindow(Fenster_ID)=0

Re: ERLEDIGT RunProgram url und einen String hinzufügen?

Verfasst: 06.04.2016 21:54
von udg
RSBasic hat geschrieben:Da ich deinen Quellcode leider nicht kenne, weiß ich auch nicht, wo der Fehler ist.
Hier mal ein Beispielcode, den du mit deinem vergleichen kannst. Vielleicht findest du beim Vergleichen den Fehler:
dein code führt die Übernahme aus. als Api Key hier mal eine Nummer: 374320

wenn ich diese eingebe kommt nun wieder das :shock:

Bild

im Browser wird der Inhalt angezeigt, Das webGadget weis damit nicht umzugehen :shock: Ich dachte das ist plain text :(