--------------------------------------------------------------------------------
یک برنامه دارم که میخواهم خودش موقع اتصال به اینترنت چک کنه ببینه ایا ورژن جدیدی براش وجود داره و اگه هست خودش رو اپدیت کنه ممنون میشم راهنمایی کنید
سلام.
کجای کار مشکل داری؟ این که خودش یه پروژه هست.
این کد چک کردن کانکت بودن.
کد:
Option Explicit
Private Declare Function RasEnumConnectionsA Lib "rasapi32" (lpRasCon As Any, lpcb As Long, lpcConnections As Long) As Long
Private Declare Function RasGetConnectStatusA Lib "rasapi32" (ByVal hRasCon As Long, lpStatus As Any) As Long
Private Const RAS95_MaxEntryName = 256
Private Const RAS95_MaxDeviceType = 16
Private Const RAS95_MaxDeviceName = 32
Private Type RASCONN95
dwSize As Long
hRasCon As Long
szEntryName(RAS95_MaxEntryName) As Byte
szDeviceType(RAS95_MaxDeviceType) As Byte
szDeviceName(RAS95_MaxDeviceName) As Byte
End Type
Private Type RASCONNSTATUS95
dwSize As Long
RasConnState As Long
dwError As Long
szDeviceType(RAS95_MaxDeviceType) As Byte
szDeviceName(RAS95_MaxDeviceName) As Byte
End Type
Public Function IsConnected() As Boolean
Dim TRasCon(255) As RASCONN95
Dim lg As Long
Dim lpcon As Long
Dim Retval As Long
Dim Tstatus As RASCONNSTATUS95
TRasCon(0).dwSize = 412
lg = 256 * TRasCon(0).dwSize
Retval = RasEnumConnectionsA(TRasCon(0), lg, lpcon)
If Retval <> 0 Then
IsConnected = False
Exit Function
End If
Tstatus.dwSize = 160
Retval = RasGetConnectStatusA(TRasCon(0).hRasCon, Tstatus)
If Tstatus.RasConnState = &H2000 Then
IsConnected = True
Else
IsConnected = False
End If
End Function
ظاهرا این کد رو adsl جواب نمیده و فقط دایال آپ رو ساپورت میکنه. کسی کد برای چک کردن آن بودن adsl داره؟
يه فايل php يا تکست تو يه هاست معتبر آپلود ميکنی و اگه فايل تکس بود توش مقادير app.major app.minor app.revision برنامه ات رو مينويسی و لينک آخرين ورژن برنامه هم توی فايل ميزاری اگر هم خواستی توضيحات هم اضافه ميکنی
بعد از باز کردن برنامه محتويات لينک فايلی که آپلود کردی رو مگيره و ورژن که توی فايل ثبت شده رو با ورژن فعلی برنامه چک ميکنه اگه ورژن فايل بزرگتر بود لينکی که توی فايل بود رو دانلود ميکنی...
البته حتماً نبايد ورژن برنامه رو مورد قياس قرار بدی ميتونی يه تابع بزاری تو برنامه و يه عدد بهش بدی و هر دفعه که برنامه به روز ميشه عدد تابع رو افزايش بدی
==========================
چک کردن وصل بودن به اينترنت روی adsl هم کار ميکنه
check Connect to internet
سلام.
اینم کد دانلودر. که ورژن جدید رو دانلود و ریپلیس کنی.
Private Const INTERNET_CONNECTION_CONFIGURED = &H40
Private Const INTERNET_CONNECTION_LAN = &H2
Private Const INTERNET_CONNECTION_MODEM = &H1
Private Const INTERNET_CONNECTION_OFFLINE = &H20
Private Const INTERNET_CONNECTION_PROXY = &H4
Private Const INTERNET_RAS_INSTALLED = &H10
Private Declare Function InternetGetConnectedState Lib "wininet.dll" (ByRef lpdwFlags As Long, ByVal dwReserved As Long) As Long
Private Sub Form_Load()
Dim Ret As Long
Me.AutoRedraw = True
InternetGetConnectedState Ret, 0&
If (Ret And INTERNET_CONNECTION_CONFIGURED) = INTERNET_CONNECTION_CONFIGURED Then Me.Print "Local system has a valid connection to the Internet, but it may or may not be currently connected."
If (Ret And INTERNET_CONNECTION_LAN) = INTERNET_CONNECTION_LAN Then Me.Print "Local system uses a local area network to connect to the Internet."
If (Ret And INTERNET_CONNECTION_MODEM) = INTERNET_CONNECTION_MODEM Then Me.Print "Local system uses a modem to connect to the Internet."
If (Ret And INTERNET_CONNECTION_OFFLINE) = INTERNET_CONNECTION_OFFLINE Then Me.Print "Local system is in offline mode."
If (Ret And INTERNET_CONNECTION_PROXY) = INTERNET_CONNECTION_PROXY Then Me.Print "Local system uses a prxoy server to connect to the Internet."
If (Ret And INTERNET_RAS_INSTALLED) = INTERNET_RAS_INSTALLED Then Me.Print "Local system has RAS installed."
End Sub
این کد هم یک نگاهی بکنید جناب payman
البته با این روش من مجبور میشم کل فایل رو دانلود کنم
میخواهم اگه بشه فقط فایلهای جدیدی که به پروژه اضافه شده رو فقط برای دانلود بزارم و خودشون تو سیستم 32 ذخیره بشه
سلام.
اینی که گذاشتی چیه یه توضیحی بده.
خوب میتونی فایل های جدید رو هم برای دانلود بذاری. مشکلی نیست. شما فقط dll هاتو دانلود کن. به هر حال نیاز به دانلودر داری که برات گذاشتم.
این api و نمونه ای که گذاشتم توانایی های زیر رو داره
این تابع بررسی میکند که تماس با اینترنت از چه روش و شیوهای صورت میگیرد
از طریق modem ویا lan و نوع تماس offlineو ras ویا prxoy و همچنین مقدار برگشتی نشان میده که ایا سیستم به اینترنت متصل هست و یا نه اگه سیستم به اینترنت متصل باشه مقدار برگشتی true است
اون قسمت دانلود فایل هم جالب بود البته من از یک روش دیگه استفاده میکردم که نمونه ای که گذاشتین کامل تر بود
فقط مشکل من قسمت چک کردن ورژن ها و چگونگی مشخص کردن فایلهای مورد نیاز برنامه جدید هست
جناب crazyfull
منظور شما اینه که یک فایل تکست بسازم و اون رو روی یک هاست بذارم سپس اون رو دان کنم و اون رو بخونم و با مقادیر app برنامه خودم مقایسه کنم؟
(۰۹-فروردین-۱۳۸۸, ۱۳:۲۸:۰۲)red11011 نوشته است: [ -> ]این api و نمونه ای که گذاشتم توانایی های زیر رو داره
این تابع بررسی میکند که تماس با اینترنت از چه روش و شیوهای صورت میگیرد
از طریق modem ویا lan و نوع تماس offlineو ras ویا prxoy و همچنین مقدار برگشتی نشان میده که ایا سیستم به اینترنت متصل هست و یا نه اگه سیستم به اینترنت متصل باشه مقدار برگشتی true است
خوب اين رو که من گذشته بودم
(۰۹-فروردین-۱۳۸۸, ۱۳:۲۸:۰۲)red11011 نوشته است: [ -> ]جناب crazyfull
منظور شما اینه که یک فایل تکست بسازم و اون رو روی یک هاست بذارم سپس اون رو دان کنم و اون رو بخونم و با مقادیر app برنامه خودم مقایسه کنم؟
بله
يا با مقادير app يا با استفاده از تابع
بله حق با شما ست ببخشید من متوجه کدی که شماگذاشتین نشدم
ممنون از راهنمایی که کردین کاملا متوجه شدم که باید چکار کنم