آموزش ویژوال بیسیک و برنامه نویسی

سورس,ویژوال بیسیک,نرم افزار,باشگاه,بدنسازی,فوتبال,آنالیز,پیش بینی,کد,برنامه نویسی

آموزش ویژوال بیسیک و برنامه نویسی

سورس,ویژوال بیسیک,نرم افزار,باشگاه,بدنسازی,فوتبال,آنالیز,پیش بینی,کد,برنامه نویسی

مژده

با توجه به قیمت بالای کتابهای خوب مهندسی که برخی به بالای 20 هزارتومان میرسد تصمیم گرفتیم مجموعه ایی از کتابهای الکترونیکی را به قیمت بسیار کمتر در اختیار شما بگذاریم

 

کتابها شامل

 

آموزش pdms در 2 جلد

کلید فولاد

آموزش اکسل رنگی

آموزش اکسس رنگی

هندبوکهای مختلف پایپینگ

استاندارهای مختلف

و کتابهای مختلف در مورد طراحی piping و تجهیزات پالایشگاهی و نفتی وگازی نظیر

CAESAR II
SOLIDWORKS
PDMS
DIGHAYE BOKHAR VA MAKHAZEN
CASTI Guidebook to ASME B31.3
DIGHAYE BOKHAR VA MAKHAZEN
Inspection of Welded and Bolted Joints
Estimating Building Costs
Web Security
Gas Turbine Engineering Handbook
STANARD HANDBOOK OF MACHINE DESIGN
Mechanical Design Handbook
Guid to Engergy Management
Engergy Management Handbook
DIN Handbook 10
Centrifugal Pumps
Piping Engineering
Hydaulic Fluids
HVAC SYSTEMS AND COMPONENTS
FIRE SAFETY ENGINEERING
IRANS Petroleum Industry Yearbook
کلید فولاد
هند بوک شیرهای صنعتی
Hydaulic Design Manual
VOCABULARY SPELLING
PressureVesselDesign
MECHANICAL DESIGN
Machinerys Handbook Guid
Handbook of Thermodynamic Diagram
DYNAMICS of MECHANICAL SYSTEM

 

برای اطلاعات بیشار با ایمیل

 

pars_soft@yahoo.com

 

تماس حاصل بفرمایید.

 

 

برچسب : 2007, 2007 GearTrax, 2007 PDMS 11, 2007 ا, 2007 موبایل, 5Solid Works, 5Solid Works 2007, Esprit 2007, Esprit 2007 GearTrax, for Solid, for Solid Works, Solid, Solid Edge, Solid Works, Solid Works 2007, Solid Works 2007PDMS, SP3 5 Solid, SP3 5 Solid Works, Ultrasound Works, Works, Works 2007, Works 2007 PDMS 11, Works 2007 ا, Works 2007PDMS, X2UGS Solid, X2UGS Solid Edge, دستورات Solid, فروش Solid PDMS ASME ANSI MSS API ASTM DIN BSS JS KS

هک پسورد ادمین ویندوز 7 : بازیابی رمز عبور در ویندوز 7

هک پسورد ادمین ویندوز 7 : بازیابی رمز عبور در ویندوز 7


بازیابی پسورد ادمین ویندوز 7: این روش نیاز به هیچ گونه نرم افزار جانبی ندارد و از ابزار خود ویندوز برای این کار استفاده می کنیم. در این روش ما از برنامه ی Sticky ویندوز که مخصوص معلولین است استفاده می کنیم. از کاربرد های این برنامه برای مثال می توان از فشردن کلید های Ctrl + Alt+ Delete نام برد که به جای اینکه این کلید ها را همزمان فشار دهیم می توانیم تک تک و پشت سر هم فشار دهیم.
در صفحه ی Login ویندوز اگر 5 بار دکمه ی شیفت را فشار دهیم این برنامه فعال می شود. حالا ما کاری می کنیم که با 5 بار فشار دادن دکمه ی شیفت، به جای این برنامه، Command Prompt باز شود و در این محیط هم که ریست کردن پسورد به آسانی آب خوردن است.


روند کار:
1- ابتدا ویندوز را با Windows PE بالا بیاورید.می توانید از دی وی دی ویندوز 7 استفاده کنید. اما به جای انتخاب Install Windows گزینه ی Repair را انتخاب کنید تا به محیط CMD دسترسی پیدا کنید.
2- دستور زیر را وارد کنید تا از فایل اجرایی برنامه ی Sticky بک آپ بگیریم. (به جای C نام درایوی که ویندوز در آن نصب است را وارد کنید)
copy c:\windows\system32\sethc.exe c:\
3- از دستور زیر برای جایگزینی CMD با Sticky استفاده کنید.
copy /y c:\windows\system32\cmd.exe c:\windows\system32\sethc.exe
4- ویندوز را ریست کنید. وقتی صفحه ی Login ظاهر شد 5 بار دکمه ی Shift را فشار دهید تا CMD باز شود.
5- دستور زیر را وارد کنید تا پسورد ریست شود. (به جای USERNAME نام کاربری سابقاتان و به جای NEWPASSWORD رمز عبور جدید را بنویسید. بین یوزرنیم و پسورد یک فاصله وجود دارد.)
net user USERNAME NEWPASSWORD
تمام شد!

---------------------
عوض کردن پسورد ویندوز بدون داشتن پسورد قبلی

اگر داخل ویندوز هستید و پسورد را نمیدانید برای عوض کردن آن اینگونه عمل کنید

ابتدا وارد start menuشده وبعدگزینه run وبعددستور زیر را بنویسید cmd حالاشما دستور زیر را تایب

کنید: net user username password که به جای user name یوزر ویندوز و به جای

password رمز جدید را بنویسید

ولی اگر در از ابتدا پسورد را نمی دانید :

در ویندوز 98\Me اگر کسی کلمه عبور برای ورود به محیط ویندوز را نداند می تواند با Cancel کردن آن وارد محیط ویندوز شده یعنی عملاً سیستم دارای هیچگونه امنیتی نیست و هر کسی براحتی می تونه وارد محیط ویندوز بشه و با پاک کردن یک فایل PLW پسوورد داده شده به ویندوز را بدون داشتن پسوورد قبلی پاک کنه ولی تو ویندوز XP اینطوری نیستدر ویندوز XP به دلیل امنیت بالا کاربر فقط با وارد کردن کلمه عبور می تونه وارد ویندوز بشه !!!



حالا یه سؤال : اگه کسی پسووردشو تو ویندوز XP فراموش کنه چی کار کنه ؟؟؟



اگه پسوورد ویندوز XP خودتونوفراموش کردید کافیه که در صفحه Welcome همون جایی که باید پسووردتونو وارد کنین دوبار کلیدهای Alt+Ctrl+Delete رو بزنید تا به ظاهر قدیمی ویندوز 2000 برگردین بعد تو قسمت Username تایپ کنین administrator و کادر پسورد رو هم خالی بزارین و OK کنین با این کار با حساب کاربری administrator وارد ویندوز می شین ولی این راه همیشه جواب نمیده در حقیقت ماجرا به موقع نصب

ویندوز بر می گرده اونهائی که با نصب ویندوز آشنایی دارن می دونن که در مرحله ای از نصب ویندوز می تونید پسووردی رو به عنوان administrator وارد کنین که اگه پسووردی وارد شه راه بالا بی فایده هستش و دیگه به هیچ عنوان نمی تونیند بدون داشتن پسوورد وارد ویندوز بشین بهمین دلیل بعضی کسانی که اطلاعاتشون براشون

خیلی مهم هست با وجود اینکه شدیداً به پسوورد گذاشتن برای ویندوز نیاز دارن از ترس اینکه در صورت فراموشی پسوورد برای همیشه دسترسی به اطلاعاتشون قطع نشه پسوورد نمی زارن البته دارم کلّی میگم ) من الان یه راهی واسه این دسته از افراد میزارم ) که هیچ وقت نگران فراموش کردن پسووردشون نباشن و همچنان سیستمشون امنیتش حداکثر باشهاین روش به این صورته که شما با استفاده از یه دیسکت در واقع یک شاه کلید برای ویندوز خودتون درست مکنین که روش ساخت دیسکت رو براتون شرح می دم .برای ساخت دیسکت باید وارد کنترل پنل بشین در واقع مسیر زیر رو طی کنین



Start\Control panel\User Accounts\انتخاب اکانت خود



بعد تو پنجره جدید که باز می شه باید در سمت چپ در کادر Reated Tasks گزینه :



Prevent a forgotten password رو کلیک کنین پس ازباز شدن پنجره Forgotten Password بر روی دکمه Next کلیک کنید و سپس یک دیسکت خام سالم و فرمت شده را در درایو A قرار دهید و بر روی Next کلیک کنید حالا باید پسوورد فعلی خودتون رو وارد کنین و بر Next کلیک کنید و پس از چند لحظه دسکت شما ساخته بشه و سپس بر روی Next کلیک کنید و بعدشم روی Finish اکنون دیسکت رو ازدرایوش در بیارین حالا اون شاه کلیدی که گفته بودم تو دستونه و حالا چگونگی استفاده از این شاه کلید:برای امتحان کردن دیسکت به استارت رفته و Switch User رو کلیک کنین حالا به صفحه Welcom برمیگردین بر روی اکانت خود کلیک کنین و یه پسوورد اشتباه وارد کنین و سپس کلید Enter رو بزنین در این لحظه یک پنچره باز میشه و به شما می گه که کلمه عبور اشتباهه ولی تو همین پنچره یه خطی هست که زیرش خط کشیده شد باید روش کلیک کنید .



use your password reset disk))



بعد دیسکتی رو که ساخته بودیم باید توی درایو A بزارین و بعد Next رو بزنین در پنچره جدید باید توی دو تا کادر اولی پسوورد جدیدی وارد کنین و Next رو بزنین و در آخر هم Finish حالا ویندوز شما یه پسوورد جدید داره که می تونین وارد کنین و برین توی ویندوز و اما یه راهی که خیلی راحتر و حتی با داشتن پسورد :هم می توان وارد شد administrator برای این کار قبل یا هنگام بالا آمدن ویندوز کلید F8 را زده سپس بسته به نوع نیاز خود یکی از گزینه هایSafe Mode را انتخاب کنید.بعد از وارد شدن به ویندوز در منو Start کلیک کنید سپس گزینه RUN را انتخاب کرده و در جای خالی عبارتUsers &Control userpasswords2 را تایپ کنید.پنجره باز شده دارای دو TAB به نام های Advanced می باشد.TAB Users را انتخاب کرده و تیک گزینه:


enter a username and password to use this computerUser mus را بردارید با برداشتن تیک این گزینه دیگر هنگام ورود به ویندوز از شما پسورد گرفته نمی شودحالا با استفاده از گزینه Add می توان نام کاربری را به آن اضافه و با استفاده از گزینه Remove می توان نام کاربری را حذف کرد.همچنین با استفاده از گزینه Properties

می توان میزان دسترسی کاربران به ویندوز را تعیین کرد.

معرفی جدیدترین سایت های خارجی در مورد برنامه نویسی

سلام دوستان . شاید مدتی باشد که شما دنبال مطالبی جدیدتر در مورد وی بی هستید . با جستجو کردن فارسی در گوگل ، می توانید مقالاتی را پیدا کنید . اما سایت های خارجی دیگری هستند که می توانند در این زمینه به برنامه نویس ها کمک کنند . لذا سایت های زیر گزینه های خوبی برای یادگیری هستند :

www.PlanetSourceCode.com

سایتی جامع از انواع سورس کدهای VB6 , .NET , ASP , PHP و دیگر زبان های برنامه نویسی در این سایت می توانید عضو شوید و هر روز با توجه به سورس کدی که در هنگام ثبت نام انتخاب کردید جدیدترین سورس کدها را به ایمیل تان می فرستد.

 

http://www.codeguru.com/vb

مقالات جدید در زمینه برنامه نویسی اینترنت ؛ گرافیک ؛ فرم ها ؛ بانک های اطلاعاتی و غیره.

فیلم های آموزشی جدید ؛ ترفندهای  جدید و همچنین دارای فروم برای طرح مباحث می باشد.

 

http://www.vbexplorer.com/VBExplorer/VBExplorer.asp

این سایت هم شامل موارد بالا همراه VB Games , VB News  می باشد که مقالات در مورد Direct3d هم به چشم می خورد.

 

http://www.vbcode.com

جالب ترین بخش این سایت شامل Submit Code (ثبت کد شما) و WhitePapers (فرضیه ها که هنوز پیاده سازی عملی نشده) می باشد.

 

http://www.freevbcode.com

منوی کامل و با دسته بندی کامل تر آن حرف برای گفتن باقی نمی گذارد.(منوهای بانک اطلاعاتی – فرم ها – ریاضی و فرمول – شبکه – رجیستری و غیره)

پیشنهاد می کنم برنامه نویسانی که قصد ترقی و پیشرفت دارند ، فقط به وبلاگ ها و و ب سایت های ایرانی اکتفا نکنند و دنبال مطالب جدید تر ، گه گداری نیز یه نگاه به سایت های خارجی در مورد برنامه نویسی هم بیندازند .

دسترسی به اجزای صفحه در کنترل Web browser

حالا برای انجام عملیات زیر بر روی یک صفحه وب ابتدا از منوی Project و قسمت Components کنترل microsoft internet controls رو اضافه کنید .

گرفتن سورس تمام صفحه
WebBrowser1.Document.Body.innerHTML 
 
گرفتن مقدار فیلد 
WebBrowser1.Document.All.Item("Name Kontorol").Value 
مقدار دهی به فیلد 
WebBrowser1.Document.All.Item("Name Kontorol").Document.Body.innertext 
کلیک کردن 
  WebBrowser1.Document.All.Item("Name Kontorol").Click  
انتخاب کردن:
WebBrowser1.document.All.Item("COMBOBOXNAME").Item(1).Selected = True

کلیک کردن با وی بی در وب!


www.zavyeh.com
ابا این می تونی کلیک کنی : rpcc.Navigate "c:\test.htm" Set qq = rpcc.Document qq.All.Item("op").Click qq = Null While rpcc.Busy = True DoEvents Wend rpcc.Quit در این جا op که در بالا میبینی نام دکمه هستش .

Filling Textboxes In Webbrowser Document

Hey. I need to fill textbox, which is protected or something..
Textbox's code is like this:

HTML Code:
<INPUT TYPE=hidden NAME=a0f2a0707462ad79826e98a1ce5721ad2 VALUE=951b01a2af33d0779983>

Can i fill text boxes in some kind of other way?
Because using
VB Code:
Wb.Document.All("a0f2a0707462ad79826e98a1ce5721ad2").Value = "lol"

Is not useful, because the textboxes name is different every time..
More of this code:

HTML Code:
<FORM ACTION=http://www.rate.ee/userinfo.php METHOD=post onSubmit="post.disabled=true;">
pealkiri: <INPUT CLASS=in1 TYPE=text NAME=subject SIZE=30 MAXLENGTH=60><BR><BR>
<TEXTAREA CLASS=in1 ROWS=10 COLS=60 NAME=text></TEXTAREA><BR><BR>
<INPUT TYPE=hidden NAME=act VALUE=contact>
<INPUT TYPE=hidden NAME=id VALUE=202005>

<INPUT TYPE=hidden NAME=a0f2a0707462ad79826e98a1ce5721ad2 VALUE=951b01a2af33d0779983>
<INPUT CLASS=in1 onMouseOver="this.classNAME='in2';" onMouseOut="this.classNAME='in1'" TYPE=submit NAME=post VALUE="Saadan!">
</FORM>
<BR></td>
<TD WIDTH=4 CLASS=moduleContentText><IMG SRC=http://pics.rate.ee/pics/empty.gif WIDTH=1 HEIGHT=1></TD>
<td width=1 valign=top class=backFrame><img src=http://pics.rate.ee/pics/empty.gif width=1 height=1></td>
</tr>
</table>

Webbrowser.document

 


**<form name="accept" method="GET" action="">
**<input type="hidden" name="us">
**<input type="hidden" name="_lang">
**<input type="hidden" name="beta">
**<input type="hidden" name="SID" value="1013818981">
**<input type="hidden" name="ac" value="">
**<input type="hidden" name="rus" value="lw9fd.law9.hotmail.msn.com">
**<input type="hidden" name="curmbox" value="F000000001">
**<input type="hidden" name="tos" value=1>
**<font class="f" size="4">
**<input type="submit" class="Bsbttn" value=" I Accept ">

'this is what the source looks like and thers an except and decline buttons on it... how would i submit the accept buton?
using ( .forms(0).elements("").value = "")

ارسال متن به اینترنت

 سوال :  
من یه برنامه در ویژوال بیسک میخواهم که اگه یک صفحه ثبت نام وب در اون باز بشه بتونه از تکست باکسهای داخل برنامه که روی فرم ویژوال بیسیک هستند به باکسهای خالی اون صفحه وب متن رو ارسال کنه.

مثلا شما آف لاین متن ها رو بنویسی فقطی آن لاین شدی برنامه خودش فیلدها را مطابقت بده و پر کنه.

از توابع send keys هم استفاده کردم.
اما به دلیل نتونستم
متون فارسی ارسال نمیشد.
کنترل tab انجام نمیشد. 
در ضمن هندل اون صفحه وب که از داخل برنامه وی بی باز میشه به دست نمیاددر ضمن هندل اون صفحه وب که از داخل برنامه وی بی باز میشه به دست نمیاد
---------
جواب. نیازی به استفاده از Sendkeys نیست.
از بخش کامپوننت ها microsoft internet controls رو اضافه کنید.
بعد از تنظیمات WebBrowser و باز کردن صفحه موردنظر. برای پر کردن فیلدها:
کد:
WebBrowser1.Document.Forms(0).elements("FieldName").Value = Text1.Text
FieldName نام فیلدی هست که تو صفحه وب قرار داره می تونید نامش با زدن view page source پیدا کنید.
برای کلیک کردن رو دکمه ها هم:
کد:
WebBrowser1.Document.Forms(0).elements("ButtonName").Click

رفتن به خط بعد textbox

من یک حلقه دارم که اعداد رو توی تکست باکس میریزه
حالا من می خوام بعد از وارد کردن هر عدد بره خط بعد
برای رفتن به خط بعد از چی استفاده کنم؟
با تشکر
کد:
for i=1 to 20
text1=text1 & i & "بره خط بعد"
next i
javadt آفلاین است آگاه کردن مدیریت از مخالفت  

خاصیت MultiLine تکست رو True کن و کت رو به صورت زیر تعغیر بده .

کد:
For i = 1 To 20
Text1 = Text1 & i & vbCrLf
Next i

جلوگیری از کرک برنامه

می تونید این Dll رو که براتون می زازم تو برنامت استفاده کنید :
راه استفاده....
از منوی Project گزینه References را برگزینید تا کادر محاوره ای References باز شه. از این کادر فایل رو به برنامه بشناسون.
بعد از کد ها رو بنویس:
کد:
Dim skrsoft As New class
کد:
txtid.Text = skrsoft.GenerateID
حالا شماره سریال هارد و سی پی یو و رم و مادربرد رو توی تکس باکس داری.
حالا مشتری باید زنگ بزنه به تو و شماره سریال برنامشو ازت بگیره
تو هم بر اساس فرمولی که شماره سریال طراحی می کنی شماره سریال سیستم مشتری رو بهش می دی که فقط رو سیستم اون کاربرد داره
البته این راه هم راه 100% مطمعنی نیست

البته مطمعن تر کردن این راه به خلاقیت شما بستگی داره
موفق باشید
فایل های ضمیمه
نوع فایل: rarSoft.rar‏ (8.5 کیلوبایت,

کنترل Web Browser – ساخت مرورگر صفحات وب

برنامه Internet Explorer یا iexplore.exe در واقع برنامه کوچکی است که وظیفه اصلی آن ایجاد چارچوبی برای بهم پیوستن عناصر مختلف است و این عناصر هستند که وظایف اصلی مثل load کردن صفحات وب ، اجرای کدهای Html و غیره را انجام می دهند . اصلی ترین عنصری که مستقیماً توسط iexplore.exe استفاده می شود کنترل Webbrowser ( موجود در فایل shdocrw.dll ) می باشد . وظیفه این فایل dll ، عبارت است از حرکت بین صفحات وب ، مدیریت تاریخچه صفحات دیده شده و غیره . این فایل خود از فایل دیگری بنام Mshtml.dll استفاده می کند که وظیفه آن بررسی و اجرای فایلهای html است . مایکروسافت به برنامه نویسان این امکان را داده که بتوانند در برنامه هایشان از کنترل webbrowser استفاده کنند . با استفاده از این کنترل می توان به سادگی یک مرورگر وب تقریباً کامل ساخت .
خصوصیات کنترل Webbrowser :
Webbrowser علاوه بر خواص استانداردی مثل width ، height و … خواص زیر را دارد :
۱ – Busy : اگر در حال load کردن یک صفحه یا در حال جستجو در وب باشد این خاصیت True است . توسط متد Stop می توان عملیات جاری را متوقف کرد .
۲ – Container : ارجاع به شی نگهدارنده کنترل webbrowser
3 – Document : ارجاع به صفحه html فعلی . برای کار با این صفحه html می توان از خواص و متدهابی شی Document استفاده کرد .
۴ – LocationName : حاوی آدرس محلی است که اکنون در کنترل webbrowser ، load شده است . اگر این محل یک صفحه html باشد عنوان آن صفحه خواهد بود و اگر این محل یک فایل در شبکه باشد مسیر کامل آن فایل خواهد بود .
۵ – LocationURL : حاوی url محلی است که فعلاً در کنترل webbrowser ، load شده است .
۶ – Offline : اگر کنترل webbrowser در حالت عدم اتصال باشد مقدار آن True و در غیراینصورت False است .
۷ – Parent : فرمی را نشان می دهد که کنترل webbrowser در آن قرار دارد .
۸ – ReadyState : وضعیت کنترل webbrowser را برمی گرداند .
متدهای کنترل webbrowser : این متدها مربوط به مرور در صفحات وب هستند :
۱- GoBack : در لیست تاریخچه url ها ، یکی به عقب برمی گردد .
۲ – GoForward : در لیست تاریخچه url ها ، یکی به جلو می رود .
۳ – GoHome : به homepage مرورگر می رود .
۴ – Navigate : به یک url یا فایل می رود . ساختار این متد بصورت زیر است :

Navigate URL [Flags,][TargetFrameName,][PostData,][Headers]x

URL آدرس مقصد می باشد . Flags نحوه باز شدن آدرس مقصد را تعیین می کند . اگر این پارامتر ذکر نشود آدرس جدید در پنجره فعلی باز خواهد شد و به لیست تاریخچه اضافه شده و اگر کپی آن در temperory cache موجود باشد از آنجا خوانده می شود . مقادیر پارامتر Flags عبارتند از :
- NavOpenInNewWindow : آدرس جدید را در پنجره جدیدی باز می کند .
- NavNoHistory : به لیست تاریخچه اضافه نمی شود بلکه جایگزین صفحه فعلی می شود .
- NavNoReadFromCache : صفحه جدید از cache خوانده نمی شود .
- NavNoWriteToCache : صفحه جدید روی cache نوشته نمی شود

Event های کنترل webbrowser : این event ها مربوط به مرور در وب و تغییر حالت آن هستند :
۱ – CommandStateChange : برای فعال یا غیرفعال کردن دکمه های Forward و Back در مرورگر استفاده می شود . شکل کلی فراخوانی این event بصورت زیر است :

Private Sub WebBrowser1_CommandStateChange(ByVal Command As Long, ByVal Enable As Boolean)

که command فرمانی است که حالت فعال آن تغییر کرده است و دو مقدار می گیرد : ۱ و ۳ که بترتیب معادل فرمانهای GoForward و GoBack هستند .
Enable فعال یا غیرفعال بودن فرمان را تعیین می کند .
۲ – DocumentComplete : این event زمانی فعال می شود که صفحه در حال load شدن به حالت ReadyState_Complete برود . شکل کلی فراخوانی این event بصورت زیر است :
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
که pDisp ارجاعی به کنترل webbrowser است که event در آن رخ داده است و URL آدرس صفحه در حال load شدن است .
۳ – DownloadBegin : این event در آغاز حرکت به صفحه جدید روی می دهد و هیچ پارامتری نمی گیرد . مرورگر می تواند در این event پیغامی برای شروع عملیات جدید نشان می دهد .
۴ – DownloadComplete : این event در پایان عملیات یا در صورت انصراف کاربر یا بروز خطا روی می دهد .
۵ – ProgressChange : با بروز هر تغییری در وضعیت load ، این event روی می دهد . شکل کلی فراخوانی آن بصورت زیر است :

Private Sub WebBrowser1_ProgressChange(ByVal Progress As Long, ByVal ProgressMax As Long)

که Progress نشان دهنده پیشرفت عملیات ( بایتهای load شده ) است . پارامتر ProgressMax تعداد کل بایتهایی که باید load شوند را نشان می دهد بنابر این :

(Progress/ProgressMax)*100=درصد پیشرفت عملیات load

یک مثال ساده :
از منوی project مورد components را انتخاب کنید و از لیست کنترلها ، Microsoft Internet Controls را به toolbar خود اضافه کنید . یک کنترل WebBrowser روی فرم قرار دهید و سایز آنرا به اندازه ابعاد فرم خود قرار دهید . یک textbox و یک دکمه روی فرم قرار دهید . کد زیر را برای event مربوط به کلیک دکمه بنویسید :

WebBrowser.Navigate textbox.text
__________________________________________________ __________________________
WebBrowser.Navigate textbox.text

لیست وبلاگ های سایت هایی مثل بلاگفا و پرشین بلاگ :


کد:
Private Sub Command1_Click()

    Dim i As Integer
    Dim str As String
    
    List1.Clear

    For i = 0 To WebBrowser1.Document.links.length - 1
        str = WebBrowser1.Document.links.Item(i)
        If Left$(LCase(str), 4) = "http" And InStr(1, LCase(str), ".persianblog.ir") > 0 Then
            List1.AddItem (WebBrowser1.Document.links.Item(i))
        End If
    Next i

    MsgBox "Process Completed"
    
End Sub

آدرس لیست وبلاگ های سایت پرشین بلاگ:

کد:
http://persianblog.ir/weblogs.aspx

در صورتی که صفحه موردنظر از تکنولوژی پویا استفاده کنه روش بالا جواب نمیده

خواندن بارکد از تصویر


<!--StartFragment-->//**************************************
    // Name: Read Barcode from Image
    // Description:Read two width barcodes like 2 of 5 or Code 39 from an image.
    How to use it:
    Dim bmp As Bitmap
    Dim scanner As New gmseNWScanner(New gmseBarcodeDef2of5interleaved)
    Dim result As gmseNWResult
    bmp = New Bitmap("d:\sample2of5.bmp")
    scanner.Scan(bmp)
    For Each result In scanner.Result
    Debug.writeline(result.Text)
    Next
    // By: mackenb
    //
    //
    // Inputs:.NET Bitmap class
    //
    // Returns:2 of 5 interleaved barcodes in image.
    //
    //Assumes:The algorithm is designed to be extended to read all two width symbologies.
    //
    //Side Effects:None
    //This code is copyrighted and has limited warranties.
     //**************************************
   
    //     ' Barcode Reader for INTERLEAVED 2 OF 5

    Imports System.Text
    Imports System.Drawing
    Imports System.Drawing.Imaging
    Public Class gmseNWResult
    Public Text As String
    Public Count As Integer
    End Class
    Public Class gmseNWResultCollection
    Implements IEnumerable
    Dim hash As New Hashtable(CaseInsensitiveHashCodeProvider.Default, CaseInsensitiveComparer.Default)
    ReadOnly Property Count() As Integer
    Get
    Return hash.Count
    End Get
    End Property
    ReadOnly Property Item(ByVal Index As Integer) As gmseNWResult
    Get
    Return hash(Index)
    End Get
    End Property
    Public Sub Add(ByVal Text As String)
    Dim r As gmseNWResult
    r = hash(Text)
    If r Is Nothing Then
    r = New gmseNWResult
    r.Text = Text
    hash.Add(r.Text, r)
    End If
    r.Count += 1
    End Sub
    Public Function GetEnumerator() As System.Collections.IEnumerator Implements System.Collections.IEnumerable.GetEnumerator
    Return hash.Values.GetEnumerator
    End Function
    End Class
    //     ' Definition of one Symbol
    Public Class gmseNWBarcodeSymbol
    Public Value As Integer
    Public Text As String
    //     ' Encoding of Symbol in NW notation
    Public Encoding As String
    Public Sub New(ByVal Value As Integer, ByVal Text As String, ByVal Encoding As String)
    Me.Value = Value
    Me.Text = Text
    Me.Encoding = Encoding
    End Sub
    End Class
    ' Abstract parameters für barcode decodi
    //     ng for further extensions (2 of 5 standa
    //     rd,...)
    Public MustInherit Class gmseNWBarcodeDef
    ' Anzahl Bars, die ein Barcode mindesten
    //     s haben muک.
    MustOverride ReadOnly Property MinBarCount() As Integer
    ' Decodieren des Barcodes aus NW nach Te
    //     xt.
    Public MustOverride Function Decode(ByVal symbol As String) As String
    ' NWidth * Fkt <WWidth sein, sonst kein
    //     gültiger BC
    Overridable ReadOnly Property MaxFktNW() As Integer
    Get
    Return 10
    End Get
    End Property
    ' 30% Tolerance to classify N and W barc
    //     odes.
    Overridable ReadOnly Property PctNWTolerance() As Double
    Get
    Return 0.47
    End Get
    End Property
    ' Min length of white space before first
    //     bar and after last bar in percent of wid
    //     e bar.
    Overridable ReadOnly Property PctMinWhiteSpace() As Double
    Get
    Return 2
    End Get
    End Property
    End Class
    //     ' Definition 2 of 5 interleaved
    Public Class gmseBarcodeDef2of5interleaved
    Inherits gmseNWBarcodeDef
    Dim StartSymbol As gmseNWBarcodeSymbol
    Dim StopSymbol As gmseNWBarcodeSymbol
    Dim hash As New Hashtable(CaseInsensitiveHashCodeProvider.Default, CaseInsensitiveComparer.Default)
    ' We only accept barcodes with at least
    //     23 bars.
    Public Overrides ReadOnly Property MinBarCount() As Integer
    Get
    Return 23
    End Get
    End Property
    Private Sub CreateSymbolTable()
    Dim BaseSymbol(9) As gmseNWBarcodeSymbol
    Dim sym As gmseNWBarcodeSymbol
    Dim x As Integer
    Dim y As Integer
    Dim Text As String
    Dim i As Integer
    //     ' Basic symbols
    BaseSymbol(0) = New gmseNWBarcodeSymbol(0, "0", "NNWWN")
    BaseSymbol(1) = New gmseNWBarcodeSymbol(1, "1", "WNNNW")
    BaseSymbol(2) = New gmseNWBarcodeSymbol(2, "2", "NWNNW")
    BaseSymbol(3) = New gmseNWBarcodeSymbol(3, "3", "WWNNN")
    BaseSymbol(4) = New gmseNWBarcodeSymbol(4, "4", "NNWNW")
    BaseSymbol(5) = New gmseNWBarcodeSymbol(5, "5", "WNWNN")
    BaseSymbol(6) = New gmseNWBarcodeSymbol(6, "6", "NWWNN")
    BaseSymbol(7) = New gmseNWBarcodeSymbol(7, "7", "NNNWW")
    BaseSymbol(8) = New gmseNWBarcodeSymbol(8, "8", "WNNWN")
    BaseSymbol(9) = New gmseNWBarcodeSymbol(9, "9", "NWNWN")
    //     ' Buildung the hash for decoding:
    ' 2 of 5 is an double density barcode. 2
    //     digits are codes together.
    ' The first with the black bars, the sec
    //     ond with white bars.
    For x = 0 To 9
    For y = 0 To 9
    Text = ""
    For i = 0 To 4
    Text &= BaseSymbol(x).Encoding.Chars(i)
    Text &= BaseSymbol(y).Encoding.Chars(i)
    Next
    sym = New gmseNWBarcodeSymbol(x * 10 + y, Format(x * 10 + y, "00"), Text)
    hash.Add(sym.Encoding, sym)
    Next
    Next
    StartSymbol = New gmseNWBarcodeSymbol(-1, "Start", "NNNN")
    StopSymbol = New gmseNWBarcodeSymbol(-1, "Start", "WNN")
    hash(StopSymbol.Encoding) = StopSymbol
    End Sub
    Public Sub New()
    CreateSymbolTable()
    End Sub
    Public Overrides Function Decode(ByVal symbol As String) As String
    Return Decode1(symbol, 0)
    End Function
    ' Get human readable text from symvol co
    //     de.
    Public Function Decode1(ByVal symbol As String, ByVal offset As Integer) As String
    Dim sym As String
    Dim sb As New StringBuilder
    Dim Pos As Integer = offset
    Dim bi As gmseNWBarcodeSymbol
    //     ' The number of bars must be x*10+3+4
    If (symbol.Length - 7) Mod 10 <> 0 Then
    Return ""
    End If
    ' The first symbol shoul be the start sy
    //     mbol.
    sym = symbol.Substring(Pos, StartSymbol.Encoding.Length)
    If String.Compare(sym, StartSymbol.Encoding, True) <> 0 Then
    Return ""
    End If
    Pos += StartSymbol.Encoding.Length
    //     ' Data
    While Pos < symbol.Length
    //     ' Symbols with data have 10 bars:
    If symbol.Length - Pos > 10 Then
    sym = symbol.Substring(Pos, 10)
    bi = hash(sym)
    If bi Is Nothing Then
    Return ""
    End If
    sb.Append(bi.Text)
    Pos += 10
    ElseIf symbol.Length - Pos >= 3 Then ' Stop has 3 bars:
    sym = symbol.Substring(Pos, 3)
    bi = hash(sym)
    If bi Is Nothing Then
    Return ""
    Else
    Return sb.ToString
    End If
    Else
    Return ""
    End If
    End While
    Return ""
    End Function
    End Class
    //     ' Scanning algorithm:
    Public Class gmseNWScanner
    Dim cBitMask(7) As Byte
    Dim cScanRow() As Byte
    Dim nBar As Integer
    Dim cBarWidth() As Integer
    Dim cBarBlack() As Boolean
    Dim cOffset As Integer
    Dim cLength As Integer
    Dim cNWidth As Integer
    Dim cWWidth As Integer
    Dim cBCDef As gmseNWBarcodeDef
    Dim cResult As gmseNWResultCollection
    ReadOnly Property Result() As gmseNWResultCollection
    Get
    Return cResult
    End Get
    End Property
    ' Find all 2 of 5 interleaved barcodes i
    //     n Bitmap
    Public Sub Scan(ByVal bmp As Bitmap)
    Dim data As BitmapData
    Dim ScanRow() As Byte
    Dim y As Integer
    Dim x As Integer
    data = bmp.LockBits(New Rectangle(0, 0, bmp.Width, bmp.Height), ImageLockMode.ReadOnly, PixelFormat.Format1bppIndexed)
    Try
    cResult = New gmseNWResultCollection
    ReDim ScanRow(data.Stride - 1)
    //     ' Scan all rows of bitmap.
    For y = 0 To bmp.Height - 1
    For x = 0 To data.Stride - 1
    ScanRow(x) = System.Runtime.InteropServices.Marshal.ReadByte(data.Scan0, data.Stride * y + x)
    Next
    Scan(ScanRow, 0, bmp.Width)
    Next
    Finally
    bmp.UnlockBits(data)
    End Try
    End Sub
    //     ' ScanRow must be 1bppp format.
    Private Sub Scan(ByVal ScanRow() As Byte, ByVal offset As Integer, ByVal Length As Integer)
    cScanRow = ScanRow
    cLength = Length
    cOffset = offset
    CalcBars()
    Scan()
    End Sub
    //     ' Calculate bars
    Private Sub CalcBars()
    Dim x As Integer
    Dim bl As Boolean
    nBar = 0
    ReDim cBarWidth(10)
    ReDim cBarBlack(10)
    cBarBlack(0) = IsBlack(cOffset)
    For x = 0 To cLength - 1
    If nBar >= cBarWidth.Length - 1 Then
    ReDim Preserve cBarWidth(nBar * 2)
    ReDim Preserve cBarBlack(nBar * 2)
    End If
    bl = IsBlack(cOffset + x)
    If cBarBlack(nBar) = bl Then
    cBarWidth(nBar) += 1
    Else
    nBar += 1
    cBarBlack(nBar) = bl
    cBarWidth(nBar) = 1
    End If
    Next
    nBar += 1
    End Sub
    //     ' The scan
    Private Sub Scan()
    Dim Pos As Integer
    Dim ValidNW As Boolean
    Dim BCStart As Integer
    Dim BCEnde As Integer
    Dim Text As String
    Dim sb As StringBuilder
    Dim nwt As Integer
    Dim flag As Boolean
    ' We want a leading white space, so we s
    //     tart at position 1
    Pos = 1
    While Pos < nBar - cBCDef.MinBarCount
    //     ' Wir start with a black bar
    If cBarBlack(Pos) Then
    ' Try to validate with a sample set, if
    //     we can classify the bars in N and W bars
    //     within a tolerance of 25%.
    ValidNW = CalcNWWidth(Pos, cBCDef.MinBarCount)
    If ValidNW Then ' n und w are OK.
    sb = New StringBuilder
    BCStart = Pos
    BCEnde = Pos
    ' Start to decode, until no more valid b
    //     ars are found.
    While Pos < nBar
    nwt = NWBarType(cBarWidth(Pos))
    If nwt = -1 Then
    Exit While
    ElseIf nwt = 0 Then
    sb.Append("n")
    Else
    sb.Append("w")
    End If
    BCEnde += 1
    Pos += 1
    End While
    BCEnde -= 1
    //     ' Check white space
    flag = cBarWidth(BCStart - 1) >= cBCDef.PctMinWhiteSpace * cWWidth
    If flag Then
    flag = BCEnde < nBar - 1
    End If
    If flag Then
    flag = cBarWidth(BCEnde + 1) >= cBCDef.PctMinWhiteSpace * cWWidth
    End If
    If flag Then
    //     ' Get the text representation
    Text = cBCDef.Decode(sb.ToString)
    If Text <> "" Then
    cResult.Add(Text)
    Debug.WriteLine(Text)
    End If
    End If
    Else
    Pos += 1
    End If
    Else
    Pos += 1
    End If
    End While
    End Sub
    ' Classify width of a bar in -1: invalid
    //     , 0 N(arrow), 1 W(ide).
    Private Function NWBarType(ByVal Width As Integer) As Integer
    Dim MaxAbweichung As Double
    Dim Abweichung As Integer
    Abweichung = Math.Min(Math.Abs(Width - cNWidth), Math.Abs(Width - cWWidth))
    MaxAbweichung = (cWWidth - cNWidth) * cBCDef.PctNWTolerance
    If Abweichung > MaxAbweichung Then
    Return -1
    ElseIf Math.Abs(Width - cNWidth) < Math.Abs(Width - cWWidth) Then
    Return 0
    Else
    Return 1
    End If
    End Function
    //     ' Calculate Narrow and Wide bar width.
    Private Function CalcNWWidth(ByVal Pos As Integer, ByVal Length As Integer) As Boolean
    Dim NWidth As Integer
    Dim WWidth As Integer
    Dim tmp As Integer
    Dim Abweichung As Double
    Dim MaxAbweichung As Double
    Dim i As Integer
    //     ' Calc Min and Max.
    NWidth = cBarWidth(Pos)
    WWidth = cBarWidth(Pos)
    For i = 0 To Length - 1
    tmp = cBarWidth(Pos + i)
    If tmp > WWidth Then
    WWidth = tmp
    End If
    If tmp < NWidth Then
    NWidth = tmp
    End If
    Next
    ' As wide we accept as maximum NWidth *
    //     cBCDef.MaxFktNW
    If NWidth * cBCDef.MaxFktNW < WWidth Then
    cWWidth = 0
    cNWidth = 0
    Return False
    End If
    Abweichung = 0
    //     ' Calculate Tolerance
    For i = 0 To Length - 1
    tmp = Math.Min(Math.Abs(cBarWidth(Pos + i) - NWidth), Math.Abs(cBarWidth(Pos + i) - WWidth))
    If tmp > Abweichung Then
    Abweichung = tmp
    End If
    Next
    //     ' Wir haben: ----N--]----[--W-----
    ' We accept PctNWTolerance% percent maxi
    //     mum.
    MaxAbweichung = (WWidth - NWidth) * cBCDef.PctNWTolerance
    If Abweichung > MaxAbweichung Then
    cWWidth = 0
    cNWidth = 0
    Return False
    Else
    cWWidth = WWidth
    cNWidth = NWidth
    Return True
    End If
    End Function
    //     ' Is the pixel black?
    Private ReadOnly Property IsBlack(ByVal x As Integer) As Boolean
    Get
    Return (cScanRow(x \ 8) And cBitMask(x Mod 8)) = 0
    End Get
    End Property
    //     ' Hepler for calculating pixel color.
    Private Sub CreateBitMask()
    Dim b As Byte = 1
    Dim i As Integer
    For i = 0 To 7
    cBitMask(7 - i) = b
    If i < 7 Then
    b = b * 2
    End If
    Next
    End Sub
    Public Sub New(ByVal bcd As gmseNWBarcodeDef)
    cBCDef = bcd
    CreateBitMask()
    End Sub
    End Class

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

برای نمونه یک سورس می نویسم که شما می تونید با اون از طریق Internet Explorer به سایت مورد نظرتون از داخل برنامه خودتون وارد بشید :
این کد را در قسمت Form / General بنویسید

(Private Sub OpenUrl (URLName As String
Dim objIE As Object
("Set objIE = CreateObject ("internetexplorer.application
objIE.Visible = True
((objIE.Navigate (Trim(URLName
End Sub


بعد یک Command و یک Textbox روی صفحه بزارید و خصوصیت Name اونها رو به ترتیب cmdGOو txtURLName قراربدید ، بعد هم می تونید با نوشتن کد زیر در رویداد Click مربوط به cmdGo به هر صفحه ای که در ابنترنت دوست دارید دسترسی داشته باشید. به همین سادگی !


( )Private Sub cmdGO_Click
(Call OpenUrl (txtURLName
End Sub


کپی کردن قسمتی از متن تکست باکس

برای این منظور شما باید قسمتی از متن رو جدا کنید. این کار توسط توابع Left، Right و Mid انجام میشه.

اگه باهاشون آشنایی ندارید، جستجو کنید. مثال های زیادی زده شده.

اگه ساختار متنتون ثابته و مطمئنید که همیشه آدرس بصورت کامل و همین شکل وارد میشه می تونید بصورت زیر عمل کنید.

کد:
    Dim s As Integer, e As Integer
    
    s = InStr(1, Text1.Text, "www.")
    s = s + 4
    e = InStr(1, Text1.Text, ".blogfa")
    
    Text2.Text = Mid(Text1.Text, s, e - s)

مشکل در وب بروس

برای اینکه روال کار دستتون بیاد، یکی از وبلاگ های مثلا سایت پرشین بلاگ رو ذخیره کنید و با یه ویرایشگر باز کنید.

به تگ های موجود در اون دقت کنید و ببینید تگ اصلی که پست ها رو در برمی گیره چیه.
هر پستی بالاش دو تا کد قرار داره، که اولی blogID و دومی postID هست.

کد:
<a title="Comments" onclick="s_comment(134384,2583197)" href="javascript:void(0)"> <img src="%DA%A9%D9%85%D9%88%D9%86_files/comment.gif" alt="Comments" width="16" height="16"> پیام های دیگران (<script language="javascript" type="text/javascript">document.write(get_cc(2583197))</script>1) </a>

برای پیدا کردن آخرین پست، از آخر جستجو کنید و اولین پست ( از آخر) رو پیدا کنید.

حالا به لینک نظرات دقت کنید. برای نمونه:

کد:
http://comments.persianblog.ir/?blogID=134384&postID=2583197&blogName=viraso

کافیه اعداد بدست اومده از مرحله قبل رو در آدرس بالا جایگذاری کنید تا لینک نظراتش بدست بیاد.

خب حالا سورس صفحه نظرات رو (html) بدست بیارید و غالبش رو بررسی کنید.
با کمی دقت به فرمتی که هر نظر داره، آشنا می شید.
حالا با کمی پردازش رشته می تونید نظرات و همه اطلاعات مربوط به اون رو استخراج کنید.

برای دسترسی به سورس هر صفحه از کد زیر استفاده کنید:

کد:
    Dim sTextHTML As String
    sTextHTML = WebBrowser1.Document.documentElement.outerHTML