Italia
Fonte/ Codesnippets

Auflisten Com Comports Listen Ports

 
- Page 1 -


Siehe auch: WMI Code Creator [...] 

iF (11.12.2009)
QueryDosDevice [...] 
KompilierenMarkierenSeparieren
declare lpTargetPath#
cls
dim lpTargetPath#,65536
var nmChars&=external("kernel32.dll","QueryDosDeviceA",0,lpTargetPath#,65536)

if nmChars&

    print char$(lpTargetPath#,0,nmChars&)

endif

dispose lpTargetPath#
waitinput
14.03.2010  
 



« Dieser Beitrag wurde als Lösung gekennzeichnet. »

- Page 2 -


Da nun auf einem Rechner bei mir weder die eine noch die andere Lösung funktioniert und ich aber die Anzahl und Ports brauchte diese fixe Lösung:
KompilierenMarkierenSeparieren
Ohne Präkompi...
KompilierenMarkierenSeparieren
cls
var comports&=createAvailableCOMPortsList()
print "Anzahl:",getCount(comports&)

whileLoop 0,getCount(comports&)-1

    print getString$(comports&,&loop)

wend

destroyWindow(comports&)
waitInput
end

proc createAvailableCOMPortsList

    var lst&=create("list",0)
    var h&=0

    whileLoop 256

        h&=openCom("COM"+str$(&loop),0,0)
        case h&>0 : addString(lst&,"COM"+str$(&loop))
        CloseCom(h&)

    wend

    return lst&

endProc



12 kB
Hochgeladen:17.12.2010
Downloadcounter229
Download
 
17.12.2010  
 



 
- Page 1 -


Wenn Du vor if nmChars& mal print nmChars& schreibst, was wird angezeigt?
 
16.03.2010  
 




Rolf
Koch
Bei mir wird Code angezeigt, was auch immer es zu bedeuten hat
 
16.03.2010  
 



Bei mir auch, ich hatte aber noch keinen Rechner, bei dem obiges gar keine Chars zeigte - drum interessant was da bei Pedro los ist.
 
16.03.2010  
 




Matthias
Arlt
Bei mir erscheint ebenfalls nur ein leeres Fenster.
(und print nmChars& gibt 0 zurück)
 
WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia
16.03.2010  
 




GDL
Hi,

bei mir auch leeres Fenster.

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
16.03.2010  
 



Test mal was GetLastError zurückgibt, wie z.B. 122 per error_insufficient_buffer.
KompilierenMarkierenSeparieren
print external("kernel32.dll","GetLastError")
//od.m.xpse
print GetLastError()re>
 
16.03.2010  
 




GDL
Es wird 2mal Null zurückgegeben.
 
Windows7 Xprofan 8,9,10 [...]  [...] 
16.03.2010  
 



Verstehe, habe leider keine Idee.
 
16.03.2010  
 




GDL
Anscheinend gehn die Funktionen nicht.
If the function fails, the return value is zero.
 
Windows7 Xprofan 8,9,10 [...]  [...] 
16.03.2010  
 



 
- Page 2 -



Uwe
''Pascal''
Niemeier
Hi Leute!

Mit der WideChar-Variante scheint es zu klappen:
KompilierenMarkierenSeparieren
window %maxX,%maxY
declare lpTargetPath#,Temp$
dim lpTargetPath#,65536
var nmChars&=external("kernel32.dll","QueryDosDeviceW",0,lpTargetPath#,65536)
var Pos&=0

if nmChars&

    while 1

        Temp$=stringw$(lpTargetPath#,Pos&)
        print Temp$
        Pos&=Pos&+len(Temp$)*2+1
        case Pos&>=nmChars&*2:break
        sleep 200

    endwhile

endif

dispose lpTargetPath#
waitinput

Wirklich schlau werde ich aus dem Ergebnis aber nicht

BTW: Was serielle COM-Ports unter XP betrifft:
HKEY_LOCAL_MACHINEHARDWAREDEVICEMAPSERIALCOMM

SeeYou
Pascal
 
18.03.2010  
 



Bei der Ansivariante bekommt man wohl ein String(Array) mit z als Separator - zumindest erhält man so die "aktiven"/ mom. verfügb. COM-Ports mit Nummer. Bei Wide ist vlt. zz der Sep..
 
18.03.2010  
 



Da nun auf einem Rechner bei mir weder die eine noch die andere Lösung funktioniert und ich aber die Anzahl und Ports brauchte diese fixe Lösung:
KompilierenMarkierenSeparieren
Ohne Präkompi...
KompilierenMarkierenSeparieren
cls
var comports&=createAvailableCOMPortsList()
print "Anzahl:",getCount(comports&)

whileLoop 0,getCount(comports&)-1

    print getString$(comports&,&loop)

wend

destroyWindow(comports&)
waitInput
end

proc createAvailableCOMPortsList

    var lst&=create("list",0)
    var h&=0

    whileLoop 256

        h&=openCom("COM"+str$(&loop),0,0)
        case h&>0 : addString(lst&,"COM"+str$(&loop))
        CloseCom(h&)

    wend

    return lst&

endProc



12 kB
Hochgeladen:17.12.2010
Downloadcounter229
Download
 
17.12.2010  
 




Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

26.852 Views

Untitledvor 0 min.
H.Brill21.05.2023
Normann Strübli30.01.2023
RudiB.15.01.2022
p.specht13.12.2021
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie