API Windows XP

19/04/2004 - 10:44 por fermin | Informe spam
Hola, necesito saber desde Visual Basic si el sistema
operativo es Windows XP y en caso afirmativo si tiene el
escritorio propio de XP o la vista clásica (ventanas y
demás).
Supongo que alguna API me permitirá saber esa información.

Os agradezco vuestra atención y ayuda.
Un saludo.

Preguntas similare

Leer las respuestas

#1 Vulpes
19/04/2004 - 11:01 | Informe spam
?has preguntado en los foros de programacion de VB en
este mismo server?
Entiendo que ellos pueden resolverte esta cuestion.

Vulpes vs Corvus



[Filtrado por bobo] <- KillFile para los horteras
Ille Corvus

[Filtrado por inculto] <- Troll con cero aportaciones
Maximilian Heel


Hola, necesito saber desde Visual Basic si el sistema
operativo es Windows XP y en caso afirmativo si tiene el
escritorio propio de XP o la vista clásica (ventanas y
demás).
Supongo que alguna API me permitirá saber esa


información.

Os agradezco vuestra atención y ayuda.
Un saludo.
.

Respuesta Responder a este mensaje
#2 Guillermo Rey
19/04/2004 - 11:26 | Informe spam
microsoft.public.es.vb (VB6)
microsoft.public.es.dotnet.vb (vb .net)

Un saludo

Guillermo Rey

pon el rey como es debido y podrás escribirme...

Vigo (ESPAÑA)

Mensaje libre de virus
Escaneado con Norton Antivirus 2004

"fermin" escribió en el mensaje
news:0d5801c425ea$91edeb00$
Hola, necesito saber desde Visual Basic si el sistema
operativo es Windows XP y en caso afirmativo si tiene el
escritorio propio de XP o la vista clásica (ventanas y
demás).
Supongo que alguna API me permitirá saber esa información.

Os agradezco vuestra atención y ayuda.
Un saludo.
Respuesta Responder a este mensaje
#3 Fermu
19/04/2004 - 12:16 | Informe spam
fermin escribió:
Hola, necesito saber desde Visual Basic si el sistema
operativo es Windows XP y en caso afirmativo si tiene el
escritorio propio de XP o la vista clásica (ventanas y
demás).
Supongo que alguna API me permitirá saber esa información.

Os agradezco vuestra atención y ayuda.
Un saludo.



Tu pregunta iría mejor en el Grupo de VB6, pero, por darte una idea, a
lo mejor te sirve algo como esto:

# Este código informa de la versión da Información del sistema (memoria
total, libre, versión del S.O.), haciendo uso de la api kernel32


Type SYSTEM_INFO
dwOemID As Long
dwPageSize As Long
lpMinimumApplicationAddress As Long
lpMaximumApplicationAddress As Long
dwActiveProcessorMask As Long
dwNumberOrfProcessors As Long
dwProcessorType As Long
dwAllocationGranularity As Long
dwReserved As Long
End Type

Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type

Type MEMORYSTATUS
dwLength As Long
dwMemoryLoad As Long
dwTotalPhys As Long
dwAvailPhys As Long
dwTotalPageFile As Long
dwAvailPageFile As Long
dwTotalVirtual As Long
dwAvailVirtual As Long
End Type

Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA"
(LpVersionInformation
As OSVERSIONINFO) As Long
Declare Sub GlobalMemoryStatus Lib "kernel32" (lpBuffer As MEMORYSTATUS)
Declare Sub GetSystemInfo Lib "kernel32" (lpSystemInfo As SYSTEM_INFO)

Public Const PROCESSOR_INTEL_386 = 386
Public Const PROCESSOR_INTEL_486 = 486
Public Const PROCESSOR_INTEL_PENTIUM = 586
Public Const PROCESSOR_MIPS_R4000 = 4000
Public Const PROCESSOR_ALPHA_21064 = 21064


En un formulario :

Dim msg As String, ret%, ver_major$, ver_minor$, build$
MousePointer = 11
Dim verinfo As OSVERSIONINFO
verinfo.dwOSVersionInfoSize = Len(verinfo)
ret% = GetVersionEx(verinfo)
If ret% = 0 Then
MsgBox "Error en information de la version"
End
End If
Select Case verinfo.dwPlatformId
Case 0 : msg = msg + "Windows 32s "
Case 1 : msg = msg + "Windows 95 "
Case 2 : msg = msg + "Windows NT "
End Select
ver_major$ = verinfo.dwMajorVersion
ver_minor$ = verinfo.dwMinorVersion
build$ = verinfo.dwBuildNumber
msg = msg + ver_major$ + "." + ver_minor$
msg = msg + " (Construido " + build$ + ")" + vbCrLf + vbCrLf

Dim sysinfo As SYSTEM_INFO
GetSystemInfo sysinfo
msg = msg + "CPU: "
Select Case sysinfo.dwProcessorType
Case PROCESSOR_INTEL_386 : msg = msg + "Procesador Intel 386 o
compatible." + vbCrLf
Case PROCESSOR_INTEL_486 : msg = msg + "Procesador Intel 486 o
compatible." + vbCrLf
Case PROCESSOR_INTEL_PENTIUM : msg = msg + "Procesador Intel Pentium
o compatible." + vbCrLf
Case PROCESSOR_MIPS_R4000 : msg = msg + "Procesador MIPS R4000." + vbCrLf
Case PROCESSOR_ALPHA_21064 : msg = msg + "Procesador DEC Alpha
21064." + vbCrLf
Case Else : msg = msg + "Procesador (desconocido)." + vbCrLf
End Select
msg = msg + vbCrLf

Dim memsts As MEMORYSTATUS
Dim memory&
GlobalMemoryStatus memsts
memory& = memsts.dwTotalPhys
msg = msg + "Memoria Fisica Total: "
msg = msg + Format$(memory& \ 1024, "###,###,###") + "Kb" + vbCrLf
memory& = memsts.dwAvailPhys
msg = msg + "Memoria Fisica Disponible: "
msg = msg + Format$(memory& \ 1024, "###,###,###") + "Kb" + vbCrLf
memory& = memsts.dwTotalVirtual
msg = msg + "Memoria Virtual Total: "
msg = msg + Format$(memory& \ 1024, "###,###,###") + "Kb" + vbCrLf
memory& = memsts.dwAvailVirtual
msg = msg + "Memoria Virtual Disponible: "
msg = msg + Format$(memory& \ 1024, "###,###,###") + "Kb" + vbCrLf + vbCrLf
MsgBox msg, 0, "Información del Sistema"
MousePointer = 0

Amplia informacion en el citado grupo, saludo
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida