Il 10/08/2015 20:42, Daniele Pinna (Ufficio) ha scritto:
> Il 02/08/2015 00:37, buonanotte ha scritto:
>> Una applicazione non scrive i file .... se non lanciata ' COME
>> AMMINISTRATORE '
>> ma succedeva gia con Windows 7
>>
>>
>> "Daniele Pinna (Ufficio)" ha scritto nel messaggio
>> news:mpg8vr$73h$1...@virtdiesel.mng.cu.mi.it...
>>
>> Salve a tutti :-)
>>
>> Non credo ci siano problemi particolari...
>> ma qualcuno ha già fatto qualche prova?
>
> Intanto ringrazio tutti per le risposte :-)
>
> Alla fine sono riuscito a provare quel programma, ma solo in parte.
> Si installa ma poi ho, per mio errore, si chiude in quanto non riconosce
> il sistema operativo e quindi non sa dove trovare il DB (che si trova in
> un determinato percorso su XP, in un altro su Vista/7/8, in pratica
> nella cartella %programdata% ).
> :-)
>
> Ovviamente dovrò fare solo una piccola modifica (spero... :-) )
Aggiornamento
La piccola modifica è stata fatta e il programma funziona correttamente.
Visto che c'ero ho riscritto la funzione che riconosce il sistema
operativo rendendola più completa (come versioni) ed efficiente (select
case al posto di vari if/elseif etc).
Noto però una cosa:
Windwso 10 invece di venir riconosciuto come 10.0.10240 viene
riconosciuto come 6.2.9200, insomma come se fosse Windows 8
https://it.wikipedia.org/wiki/Windows_8 (il numero di versione si legge
nella colonna di destra)
Da cosa può dipendere?
Il codice che uso per leggere la versione del S.O. è il seguente
---
Public Function GetWindowsVersion() As Long
Dim OSInfo As OSVERSIONINFO
Dim RetValue As Long
OSInfo.dwOSVersionInfoSize = 148
OSInfo.szCSDVersion = Space$(128)
RetValue = GetVersionEx(OSInfo)
With OSInfo
'SOLO PER TEST
MsgVerbose "S.O.: PlatformId=" & .dwPlatformId & " -
MajorVersion=" & .dwMajorVersion & " - MinorVersion=" & .dwMinorVersion
& " - Build=" & .dwBuildNumber & _
" - OSVersionInfoSize=" & .dwOSVersionInfoSize & " -
CSDVersion=" & .szCSDVersion
Select Case .dwPlatformId
Case VER_PLATFORM_WIN32_WINDOWS 'Win9X
Select Case CStr(.dwMajorVersion) & "." &
CStr(.dwMinorVersion)
Case "4.0": GetWindowsVersion = WINDOWS_95
Case "4.1": GetWindowsVersion = WINDOWS_98
Case "4.9": GetWindowsVersion = WINDOWS_ME
Case Else
GetWindowsVersion = UNKNOWN_OS
MsgVerbose "S.O. Sconosciuto: " & .dwMajorVersion &
" " & .dwMinorVersion & " " & .dwBuildNumber
End Select
Case VER_PLATFORM_WIN32_NT 'WinNT
Select Case CStr(.dwMajorVersion) & "." &
CStr(.dwMinorVersion)
Case "3.1": GetWindowsVersion = WINDOWS_NT_3_1
Case "3.5": GetWindowsVersion = WINDOWS_NT_3_5
Case "3.51": GetWindowsVersion = WINDOWS_NT_3_51
Case "4.0": GetWindowsVersion = WINDOWS_NT_4
Case "5.0": GetWindowsVersion = WINDOWS_2000
Case "5.1": GetWindowsVersion = WINDOWS_XP
Case "5.2": GetWindowsVersion = WINDOWS_SVR_2K3
Case "6.0": GetWindowsVersion = WINDOWS_VISTA
Case "6.1": GetWindowsVersion = WINDOWS_SEVEN
Case "6.2": GetWindowsVersion = WINDOWS_8
Case "6.3": GetWindowsVersion = WINDOWS_81
Case "10.0": GetWindowsVersion = WINDOWS_10
Case Else
GetWindowsVersion = UNKNOWN_OS
MsgVerbose "S.O. Sconosciuto: " & .dwMajorVersion &
" " & .dwMinorVersion & " " & .dwBuildNumber
End Select
Case Else
GetWindowsVersion = UNKNOWN_OS
MsgVerbose "S.O. Sconosciuto: " & .dwMajorVersion & " "
& .dwMinorVersion
End Select
End With
End Function
---
Solo per test sto lasciando decommentata l'istruzione che stampa i dati
che rileva da OSInfo.
Non so se può influire... il programma l'ho compilato da Windows XP
--
Daniele Pinna (leva oops. per rispondere)
Utente Skype: dapinna
Sito Web:
http://www.dapinna.com
Blog - Storie di un Laboratorio di Informatica:
http://storielaboratorioinformatica.wordpress.com
-----
*** Powered by Linux KUbuntu 14.04 LTS "Trusty Tahr" ***