Jag vet inte så mycket om API men jag kan kalla på dem iaf. Hej Jag skulle kapsalt apianropet i en funktion. Kan lägga den i formuläret eller i en egen modul. Om du skall anropa den från mer än ett ställe är det rekomenderat att lägga den i en modul. Liten anmärkning: >Andra argumentet till String funktionen kan vara em sträng eller ett ANSI värde. Vilket som är bäst att använda vet jag inte.API
Nu undrar jag hur man tex får "GetComputerName" till en textbox eller label. Så att datornamnet står i textboxen.
//Tack NiconSv: API
Prova detta:
Private Declare Function GetComputerName Lib "kernel32" _
Alias "GetComputerNameA" (ByVal lpBuffer As String, _
nSize As Long) As Long
Dim strString As String
strString = String(255, Chr$(0))
GetComputerName strString, 255
strString = Left$(strString, InStr(1, strString, Chr$(0)) - 1)
Text1.Text = strString
skall funka fintSv: API
'Modul eller formulär
Option Explicit
Private Declare Function GetComputerName Lib "kernel32" _
Alias "GetComputerNameA" (ByVal lpBuffer As String, _
nSize As Long) As Long
Public Function ComputerName() As String
Dim nSize As Long
Dim lReturn As Long
Dim strBuffer As String
nSize = 255
strBuffer = String(nSize, 0)
lReturn = GetComputerName(strBuffer, nSize)
If nSize > 0 Then
ComputerName = Left(strBuffer, nSize)
End If
End Function
'formulär: Form1
Private Sub Form_Load()
Label1.Caption = ComputerName
End SubSv: API
Jag skulle använda konstanten vbNullChar istället för att behöva anropa funktionen Chr$(0). Finns många användbara strängkonstanter från vb5 och senare.
Andra argumentet till String funktionen kan vara em sträng eller ett ANSI värde. Vilket som är bäst att använda vet jag inte. Men efter som du anropar Chr$(0), kan du förenkla det och bara skriva 0 som andra argument.
/Mvh, Andreas HillqvistSv: API
Bäst (i avseende på snabbhet) är egentligen att skita i String funktionen och använda Space$ istället. Space är snabbare, då den inte först behöver räkna ut vad den ska fylla strängen med.
Men om du verkligen vill använda String, så se till att använda varianten som returnerar en sträng (String$), och inte den som returnerar en variant (String).
MS