Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    941

    [VB 6.0] sistema operativo

    Ciao a tutti
    ed ancora buon anno
    ho un piccolo problemino

    non risco a pescare il sistema operativo

    faccio la dichiarazione
    ---------------------
    Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long 'per sapere il sistema operativo
    --------------------------


    poi dichiaro la variabile di tipo

    --------------------------------
    Private Const VER_PLATFORM_WIN32s = 0
    Private Const VER_PLATFORM_WIN32_WINDOWS = 1
    Private Const VER_PLATFORM_WIN32_NT = 2
    Private Type OSVERSIONINFO
    dwOSVersionInfoSize As Long
    dwMajorVersion As Long
    dwMinorVersion As Long
    dwBuildNumber As Long
    dwPlatformId As Long
    szCSDVersion As String * 128 ' Stringa di manutenzione utilizzata dai servizi di supporto tecnico
    End Type
    ----------------------------------

    ed infine richiamo la funzione

    -----------------------------
    Dim PlatformName As String, WindowsVersion As String, BuildVersion As String

    Call SysVersions32(PlatformName, WindowsVersion, BuildVersion)

    Text1.Text = PlatformName
    Text2.Text = WindowsVersion
    Text3.Text = BuildVersion
    -------------------------------


    ho un sistema operativo windows 2000
    e mi dice che ho un windows nt 5.0

    grazie e tanti saluti !!!

  2. #2

    Re: [VB 6.0] sistema operativo

    Originariamente inviato da meronet
    Ciao a tutti
    ed ancora buon anno
    ho un piccolo problemino

    non risco a pescare il sistema operativo

    faccio la dichiarazione
    ---------------------
    Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long 'per sapere il sistema operativo
    --------------------------


    poi dichiaro la variabile di tipo

    --------------------------------
    Private Const VER_PLATFORM_WIN32s = 0
    Private Const VER_PLATFORM_WIN32_WINDOWS = 1
    Private Const VER_PLATFORM_WIN32_NT = 2
    Private Type OSVERSIONINFO
    dwOSVersionInfoSize As Long
    dwMajorVersion As Long
    dwMinorVersion As Long
    dwBuildNumber As Long
    dwPlatformId As Long
    szCSDVersion As String * 128 ' Stringa di manutenzione utilizzata dai servizi di supporto tecnico
    End Type
    ----------------------------------

    ed infine richiamo la funzione

    -----------------------------
    Dim PlatformName As String, WindowsVersion As String, BuildVersion As String

    Call SysVersions32(PlatformName, WindowsVersion, BuildVersion)

    Text1.Text = PlatformName
    Text2.Text = WindowsVersion
    Text3.Text = BuildVersion
    -------------------------------


    ho un sistema operativo windows 2000
    e mi dice che ho un windows nt 5.0

    grazie e tanti saluti !!!
    Ciao..
    Non hai riportato l'errore cmq penso di poter affermare con certezza che l'errore sta nel fatto che hai dichiarato PRIMA la funzione e poi i tipi (OSVERSIONINFO): devi fare il contrario..

    prova e fammi sapere

    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    941
    nulla di fatto....


    ho scritto così....


    code
    ---------------------
    Private Const VER_PLATFORM_WIN32s = 0
    Private Const VER_PLATFORM_WIN32_WINDOWS = 1
    Private Const VER_PLATFORM_WIN32_NT = 2
    Private Type OSVERSIONINFO
    dwOSVersionInfoSize As Long
    dwMajorVersion As Long
    dwMinorVersion As Long
    dwBuildNumber As Long
    dwPlatformId As Long
    szCSDVersion As String * 128 ' Stringa di manutenzione utilizzata dai servizi di supporto tecnico
    End Type

    'per il sistema operativo |

    Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long 'per sapere il sistema operativo


    inserito in una routine
    'per il sistema operativo -->
    Dim PlatformName As String, WindowsVersion As String, BuildVersion As String

    Call SysVersions32(PlatformName, WindowsVersion, BuildVersion)

    Text1.Text = PlatformName
    Text2.Text = WindowsVersion
    Text3.Text = BuildVersion
    'per il sistema operativo |||

    -----------------



    errore è il seguente
    la variabile platformname
    ha come valore window nt
    mentre io ho un sistema operativo
    windows 2000

    forse platformname indica il server !!!

  4. #4
    Prova questo:

    codice:
    Private Type OSVERSIONINFO
        dwOSVersionInfoSize As Long
        dwMajorVersion As Long
        dwMinorVersion As Long
        dwBuildNumber As Long
        dwPlatformId As Long
        szCSDVersion As String * 128
    End Type
    
    Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long
    
    Private Sub Form_Load()
        Dim OSInfo As OSVERSIONINFO, PId As String
        OSInfo.dwOSVersionInfoSize = Len(OSInfo)
        Ret& = GetVersionEx(OSInfo)
        If Ret& = 0 Then MsgBox "Errori nella ricerca della versione": Exit Sub
           Select Case OSInfo.dwPlatformId
            Case 0
                PId = "Windows 32s "
            Case 1
                PId = "Windows 95/98"
            Case 2
                PId = "Windows NT "
        End Select
        Print "OS: " + PId
        Print "Win version:" + str$(OSInfo.dwMajorVersion) + "." + LTrim(str(OSInfo.dwMinorVersion))
        Print "Build: " + str(OSInfo.dwBuildNumber)
    End Sub
    fammi sapere..ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    941
    mi da windows nt...
    va non è contemplata nel tuo codice la possibilità
    che vi sia windows 2000 o sbaglio

    io in realtà ho il 2000

  6. #6
    In realtà bisogna affermare che Windows 2000 è basato sulla tecnologia NT, per questo non c'è conflitto tra i due sistemi e quindi anche a livello di programmazione non viene riconosciuta la differenza..effettivamente è un problema che non mi ero mai posto.

    Cmq prova ad andare sul DOS e digitare "ver": se il risultato è Win Nt allora sarà difficile altrimenti se viene Win2000 vedrò cosa posso fare..

    ciao

  7. #7
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Ciao meronet,
    la funzione che io uso discrimina tra sistema operativo e piattaforma operativa; quindi con Win_XP installato la risposta della funzione è: Window_XP e Window NT/2K.
    LM

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    941
    ok perfetto
    grazie
    tramite dos
    mi dà windows 2000
    ora
    faccio un file batch che mi
    creà un file txt con scritto in nome del sistema operativo
    e poi con vb lancio prima il file batch
    e poi pesco il contenuto del file txt....


    sapete per caso con dos vb o c
    come posso trovare
    il modello del pc
    modello monitor
    eventuale masterizzatore e stampante

  9. #9
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    Ciao, perchè non usi le WMI??
    Ti posto uno script di esempio, trasportarlo in vb è facile..basta cambiare il comando "Wscript.Echo" con l'oggetto che vuoi tu, dove visualizzare i dati (tipo un listbox o altro..)

    codice:
    On Error Resume Next
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem",,48)
    For Each objItem in colItems
        Wscript.Echo "BootDevice: " & objItem.BootDevice
        Wscript.Echo "BuildNumber: " & objItem.BuildNumber
        Wscript.Echo "BuildType: " & objItem.BuildType
        Wscript.Echo "Caption: " & objItem.Caption
        Wscript.Echo "CodeSet: " & objItem.CodeSet
        Wscript.Echo "CountryCode: " & objItem.CountryCode
        Wscript.Echo "CreationClassName: " & objItem.CreationClassName
        Wscript.Echo "CSCreationClassName: " & objItem.CSCreationClassName
        Wscript.Echo "CSDVersion: " & objItem.CSDVersion
        Wscript.Echo "CSName: " & objItem.CSName
        Wscript.Echo "CurrentTimeZone: " & objItem.CurrentTimeZone
        Wscript.Echo "Debug: " & objItem.Debug
        Wscript.Echo "Description: " & objItem.Description
        Wscript.Echo "Distributed: " & objItem.Distributed
        Wscript.Echo "ForegroundApplicationBoost: " & objItem.ForegroundApplicationBoost
        Wscript.Echo "FreePhysicalMemory: " & objItem.FreePhysicalMemory
        Wscript.Echo "FreeSpaceInPagingFiles: " & objItem.FreeSpaceInPagingFiles
        Wscript.Echo "FreeVirtualMemory: " & objItem.FreeVirtualMemory
        Wscript.Echo "InstallDate: " & objItem.InstallDate
        Wscript.Echo "LastBootUpTime: " & objItem.LastBootUpTime
        Wscript.Echo "LocalDateTime: " & objItem.LocalDateTime
        Wscript.Echo "Locale: " & objItem.Locale
        Wscript.Echo "Manufacturer: " & objItem.Manufacturer
        Wscript.Echo "MaxNumberOfProcesses: " & objItem.MaxNumberOfProcesses
        Wscript.Echo "MaxProcessMemorySize: " & objItem.MaxProcessMemorySize
        Wscript.Echo "Name: " & objItem.Name
        Wscript.Echo "NumberOfLicensedUsers: " & objItem.NumberOfLicensedUsers
        Wscript.Echo "NumberOfProcesses: " & objItem.NumberOfProcesses
        Wscript.Echo "NumberOfUsers: " & objItem.NumberOfUsers
        Wscript.Echo "Organization: " & objItem.Organization
        Wscript.Echo "OSLanguage: " & objItem.OSLanguage
        Wscript.Echo "OSProductSuite: " & objItem.OSProductSuite
        Wscript.Echo "OSType: " & objItem.OSType
        Wscript.Echo "OtherTypeDescription: " & objItem.OtherTypeDescription
        Wscript.Echo "PlusProductID: " & objItem.PlusProductID
        Wscript.Echo "PlusVersionNumber: " & objItem.PlusVersionNumber
        Wscript.Echo "Primary: " & objItem.Primary
        Wscript.Echo "QuantumLength: " & objItem.QuantumLength
        Wscript.Echo "QuantumType: " & objItem.QuantumType
        Wscript.Echo "RegisteredUser: " & objItem.RegisteredUser
        Wscript.Echo "SerialNumber: " & objItem.SerialNumber
        Wscript.Echo "ServicePackMajorVersion: " & objItem.ServicePackMajorVersion
        Wscript.Echo "ServicePackMinorVersion: " & objItem.ServicePackMinorVersion
        Wscript.Echo "SizeStoredInPagingFiles: " & objItem.SizeStoredInPagingFiles
        Wscript.Echo "Status: " & objItem.Status
        Wscript.Echo "SystemDevice: " & objItem.SystemDevice
        Wscript.Echo "SystemDirectory: " & objItem.SystemDirectory
        Wscript.Echo "TotalSwapSpaceSize: " & objItem.TotalSwapSpaceSize
        Wscript.Echo "TotalVirtualMemorySize: " & objItem.TotalVirtualMemorySize
        Wscript.Echo "TotalVisibleMemorySize: " & objItem.TotalVisibleMemorySize
        Wscript.Echo "Version: " & objItem.Version
        Wscript.Echo "WindowsDirectory: " & objItem.WindowsDirectory
    Next
    Oltre a questo, ci sono altre classi per trovare tutto quello che ti serve..cd, monitor ecc...
    a questo indirizzo: http://msdn.microsoft.com/library/de...32_classes.asp
    Jupy

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    941
    interessante molto interessante
    ci si può pescare info....
    interessantissime
    ma in mio "a little english"
    non mi permette di trovar ciò che oggi mi prevema più
    mi aiutate un po
    marca monitor
    marca pc


    stampante e masterizzatore ...li ho trrovati....
    sempre grazie al vostro apporto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.