Platforms to show: All Mac Windows Linux Cross-Platform
Required plugins for this example: MBS CURL Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /CURL/CURL info
This example is the version from Fri, 23th Feb 2017.
Project "CURL info.xojo_binary_project"
FileTypes
Filetype text
End FileTypes
Class Window1 Inherits Window
Control StaticText1 Inherits Label
ControlInstance StaticText1 Inherits Label
End Control
Control StaticText2 Inherits Label
ControlInstance StaticText2 Inherits Label
End Control
Control StaticText3 Inherits Label
ControlInstance StaticText3 Inherits Label
End Control
Control StaticText4 Inherits Label
ControlInstance StaticText4 Inherits Label
End Control
Control StaticText5 Inherits Label
ControlInstance StaticText5 Inherits Label
End Control
Control StaticText6 Inherits Label
ControlInstance StaticText6 Inherits Label
End Control
Control StaticText7 Inherits Label
ControlInstance StaticText7 Inherits Label
End Control
Control StaticText8 Inherits Label
ControlInstance StaticText8 Inherits Label
End Control
Control StaticText9 Inherits Label
ControlInstance StaticText9 Inherits Label
End Control
Control StaticText10 Inherits Label
ControlInstance StaticText10 Inherits Label
End Control
Control ListBox1 Inherits ListBox
ControlInstance ListBox1 Inherits ListBox
End Control
EventHandler Sub Open()
dim i,count as integer
dim c as new CURLMBS
StaticText1.text=c.LibVersion
dim v as CURLVersionMBS = c.Version
if v<>nil then
StaticText2.text=v.Version
StaticText3.text=v.Host
StaticText4.text=v.SSLVersion
StaticText5.text=v.LibZVersion
count=v.ProtocolCount-1
for i=0 to count
ListBox1.AddRow v.Protocol(i)
next
ListBox1.AddRow "Supports async DNS: "+yesno(v.SupportsASYNCHDNS)
ListBox1.AddRow "Supports GSS negotiate: "+yesno(v.SupportsGSSNEGOTIATE)
ListBox1.AddRow "Supports IDN: "+yesno(v.SupportsIDN)
ListBox1.AddRow "Supports IPv6: "+yesno(v.SupportsIPV6)
ListBox1.AddRow "Supports Kerberos 4: "+yesno(v.SupportsKERBEROS4)
ListBox1.AddRow "Supports large files: "+yesno(v.SupportsLARGEFILE)
ListBox1.AddRow "Supports LibZ: "+yesno(v.SupportsLIBZ)
ListBox1.AddRow "Supports NTLM: "+yesno(v.SupportsNTLM)
ListBox1.AddRow "Supports SPNEGO: "+yesno(v.SupportsSPNEGO)
ListBox1.AddRow "Supports SSL: "+yesno(v.SupportsSSL)
ListBox1.AddRow "Supports SSPI: "+yesno(v.SupportsSSPI)
end if
End EventHandler
Protected Function yesno(b as Boolean) As string
if b then Return "yes"
Return "no"
End Function
End Class
MenuBar MenuBar1
MenuItem UntitledMenu1 = ""
MenuItem FileMenu = "&File"
MenuItem FileQuit = "Quit"
MenuItem EditMenu = "&Edit"
MenuItem EditUndo = "&Undo"
MenuItem UntitledMenu0 = "-"
MenuItem EditCut = "Cu&t"
MenuItem EditCopy = "&Copy"
MenuItem EditPaste = "&Paste"
MenuItem EditClear = "Clear"
End MenuBar
Class App Inherits Application
EventHandler Sub Open()
// CURL libraries available on MBS Website in download area
// or comment out on Mac/Linux to load system libraries
#if TargetWin32 then
dim f as FolderItem
#if Target64Bit then
f = GetFolderItem("libcurl64.dll")
#else
f = GetFolderItem("libcurl32.dll")
#endif
if f.Exists then
if CURLMBS.LoadLibrary(f) then
MsgBox "Library loaded."
else
MsgBox CURLMBS.LoadErrorString
end if
else
Break // missing?
MsgBox "missing file?"+EndOfLine+EndOfLine+f.Name
end if
#elseif TargetMacOS then
dim f as FolderItem = GetFolderItem("libcurl.dylib")
if f.Exists then
if CURLMBS.LoadLibrary(f) then
MsgBox "Library loaded."
else
MsgBox CURLMBS.LoadErrorString
end if
else
Break // missing?
MsgBox "missing file?"+EndOfLine+EndOfLine+f.Name
end if
#else
break // todo
#endif
End EventHandler
End Class
End Project
See also:
The items on this page are in the following plugins: MBS CURL Plugin.