Seite 1 von 1

DLL (gelöst) / getgadgettext (gelöst)

Verfasst: 31.05.2006 19:02
von a14xerus
ganz kurz ne frage zu ner dll:
also eien procedure in einer dll sieht doch so aus, oder:

Code: Alles auswählen

ProcedureDLL name()
;Procedure
EndProcedure


und wie rufe ich eine procedure aus einer DLL in der exe auf??

hab auch schon gesucht, aber nie genau das gefunden, TIA

Verfasst: 31.05.2006 19:35
von ts-soft
steht alles genauestens in der Hilfe, hier einmal die simple variante:

Code: Alles auswählen

myDLL = OpenLibrary(#PB_Any, "myDLL.dll")
If myDLL
  CallFunction(myDLL, "name")
  CloseLibrary(myDLL)
EndIf
Mit CallFunction wird die exportiere Funktion (Procedure) der DLL aufgerufen, nachdem diese geladen wurde.
Es gibt aber noch andere Möglichkeiten, also einfach mal den Code in die IDE kopieren und an geeigneter Stelle F1 drücken

Verfasst: 31.05.2006 19:53
von a14xerus
ok, danke, hab nur nihcts gefunen , wenn ich dll eingeben hab (forum und f1)


aber direkt nmoch ne blöde farge hinterher

wenn ich in einem textgadget (aber #PB_numeric) eine zahl habe
wie krieg isch diese auch als zahl da heraus ??
bei getgadgettext() wird ja ein string erwartet, und in der hilfe stehe nkeien anderen get... befehle, die passen würden

Verfasst: 31.05.2006 19:54
von Jilocasin
Als String ermitteln und dann

Code: Alles auswählen

zahl = Val(string$)

Verfasst: 31.05.2006 19:55
von a14xerus
danke, was val hab ich gesucht

str() kannte ich und alle anderen die ich ausprobiert haben klappten nicht.. also danke

Verfasst: 31.05.2006 19:56
von Jilocasin
a14xerus hat geschrieben:str kante ich udn alel anderen
Hast du beim Schreiben Lichtgeschwindigkeit erreicht? :lol: :lol: :lol: :lol:

Verfasst: 31.05.2006 19:58
von a14xerus
oh sh*t.. ja so chatte ich immer.. ich edit eben^^

übrigends, Val() stimmt zwar, aber dann komtm immer:
Can't mix strings with numeric values

???????




hiernoch code:

Code: Alles auswählen

Open_Window_0()

freq_str.s
freq.l

Repeat
  
  Event = WaitWindowEvent()
  
  If Event = #PB_EventGadget
    
    GadgetID = EventGadgetID()

    If GadgetID = #Button_einzel
      Debug "GadgetID: #Button_einzel"
         freq_str = GetGadgetText(#String_0) : Debug "frequenzstring " +freq_str
         freq = Val(freq_str) : Debug "frequenzzahl " +freq
         
      
    ElseIf GadgetID = #Button_lauf
      Debug "GadgetID: #Button_1"
      
    EndIf
  EndIf
Until Event = #PB_EventCloseWindow
End

Verfasst: 31.05.2006 20:08
von a14xerus
ahhh ka, wie dumm ich doch sein kann^^
*gg*
danke

Verfasst: 31.05.2006 20:08
von ts-soft

Code: Alles auswählen

Debug "frequenzzahl " +freq
richtig:

Code: Alles auswählen

Debug "frequenzzahl " + Str(freq)