ايران ويج

نسخه‌ی کامل: ورژن اينترنت اكسپلورر چنده ؟!
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام

دنبال یه سورس میگردم که ورژن اینترنت اکسپلورر رو پیدا کنه ...
و یه سورس دیگه تشخيص بده فلاش پلیر نصب هست یه خیر... يا حتي ورژنش چنده...
برای اتورن سی دی میخوام ...
البته فک کنم از تو رجیستر بشه درش اورد . ولی راه قطعی و اصولی که تو هر ویندوزی کار کنه میخوام .
خيلي هم سرچ كردم جواب نگرفتم ..
ممنون ميشم پاسخ بديد.

نبي
توی این قسمت رجیستری میتونی ورژن اکسپلورر رو بفهمی :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer
فکر میکنم این هم هست :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Version Vector
واسه اینکه بفهمی فلش نصب شده یا نه هم مسیر زیر رو چک کن :
…\system32\Macromed\Flash
اگه این مسیر وجود داشت و SWFLASH.OCX هم توش بود فلش پلیر نصب شده !!!

البته این راهها رو خودم الان اختراع کردم :oops: ... شاید راههای مطمنتری هم باشه !!! :arrow:

:wink:
سلام

ممنونم افشين جان كه پاسخ دادي...

همون طور كه قبلشم اشاره كردم كم و بيش اينايي كه گفتي رو ميدونستم ...
اما دنبال راه مطمين ترم ..
اما اگر نشد نهايتا همينا رو استفاده ميكنم .

يه چيز خودم كشفيدم .
اگر بشه ورژن اين فايل SHDOCVW.DLL رو برگردوند . فكر ميكنم همون ورژن ie باشه .
توي properties فايلها ، تب version چطوري ميشه اون اطلاعات مربوط به فايل رو برگردوند.


بازم ممنون
نبي
NabiKAZ نوشته است:توي properties فايلها ، تب version چطوري ميشه اون اطلاعات مربوط به فايل رو برگردوند؟
Biggrin
کد:
Private Declare Function GetFileVersionInfo Lib "Version.dll" Alias "GetFileVersionInfoA" (ByVal lptstrFilename As String, ByVal dwhandle As Long, ByVal dwlen As Long, lpData As Any) As Long
Private Declare Function GetFileVersionInfoSize Lib "Version.dll" Alias "GetFileVersionInfoSizeA" (ByVal lptstrFilename As String, lpdwHandle As Long) As Long
Private Declare Function VerQueryValue Lib "Version.dll" Alias "VerQueryValueA" (pBlock As Any, ByVal lpSubBlock As String, lplpBuffer As Any, puLen As Long) As Long
Private Declare Sub MoveMemory Lib "kernel32" Alias "RtlMoveMemory" (dest As Any, ByVal Source As Long, ByVal length As Long)

Private Type VS_FIXEDFILEINFO
   dwSignature As Long
   dwStrucVersionl As Integer     ' e.g. = &h0000 = 0
   dwStrucVersionh As Integer     ' e.g. = &h0042 = .42
   dwFileVersionMSl As Integer    ' e.g. = &h0003 = 3
   dwFileVersionMSh As Integer    ' e.g. = &h0075 = .75
   dwFileVersionLSl As Integer    ' e.g. = &h0000 = 0
   dwFileVersionLSh As Integer    ' e.g. = &h0031 = .31
   dwProductVersionMSl As Integer ' e.g. = &h0003 = 3
   dwProductVersionMSh As Integer ' e.g. = &h0010 = .1
   dwProductVersionLSl As Integer ' e.g. = &h0000 = 0
   dwProductVersionLSh As Integer ' e.g. = &h0031 = .31
   dwFileFlagsMask As Long        ' = &h3F for version "0.42"
   dwFileFlags As Long            ' e.g. VFF_DEBUG Or VFF_PRERELEASE
   dwFileOS As Long               ' e.g. VOS_DOS_WINDOWS16
   dwFileType As Long             ' e.g. VFT_DRIVER
   dwFileSubtype As Long          ' e.g. VFT2_DRV_KEYBOARD
   dwFileDateMS As Long           ' e.g. 0
   dwFileDateLS As Long           ' e.g. 0
End Type

Private Function GetFileVersion(ByVal sPath As String) As String
Dim rc As Long
Dim lDummy As Long
Dim sBuffer() As Byte
Dim lBufferLen As Long
Dim lVerPointer As Long
Dim udtVerBuffer As VS_FIXEDFILEINFO
Dim lVerbufferLen As Long

   On Error GoTo GetFileVersion_Error

   '*** Get size ****
   lBufferLen = GetFileVersionInfoSize(sPath, lDummy)
   If lBufferLen < 1 Then
      GetFileVersion = ""
      Exit Function
   End If
    
   '**** Store info to udtVerBuffer struct ****
   ReDim sBuffer(lBufferLen)
   rc = GetFileVersionInfo(sPath, 0&, lBufferLen, sBuffer(0))
   rc = VerQueryValue(sBuffer(0), "\", lVerPointer, lVerbufferLen)
   MoveMemory udtVerBuffer, lVerPointer, Len(udtVerBuffer)
    
   GetFileVersion = Format$(udtVerBuffer.dwFileVersionMSh) & "." & Format$(udtVerBuffer.dwFileVersionMSl) & "." & Format$(udtVerBuffer.dwFileVersionLSh) & "." & Format$(udtVerBuffer.dwFileVersionLSl)

   On Error GoTo 0
   Exit Function

GetFileVersion_Error:
    GetFileVersion = ""
End Function