امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
نمايش كپي فايل توسط progress bar
نویسنده پیام
shahram_g آفلاین
كاربر تک ستاره
*

ارسال‌ها: 47
موضوع‌ها: 16
تاریخ عضویت: آبان ۱۳۸۶

تشکرها : 6
( 8 تشکر در 7 ارسال )
ارسال: #1
نمايش كپي فايل توسط progress bar
دوستان عزيزم سلام. مي خواستم ببينم چطوري مي تونم كپي كردن يك فايل توسط ويژوال بيسيك رو توسط يك progress bar نمايش بدم. روشي كه به نظر خودم رسيد استفاده از حجم فايل فايل مقصد در هر لحظه و نسبتش با فايل اصلي بود كه توسط يك تايمر چك بشه ولي مشكل اينجاست كه هنگامي كه از دستورات copy در ويژوال بيسيك استفاده مي كنم تا كار كپي تموم نشه برنامه در همون خط كپي باقي مي مونه و به رويداد تايمر پاسخ نميده.حتي Doevents هم جواب نميده. دوستان راه حلي براي حل اين مشكل يا اصلا روش بهتري سراغ دارند؟
۲۴-مرداد-۱۳۸۷, ۲۲:۱۳:۴۲
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
ba_maram_shiraz آفلاین
كاربر دو ستاره
**

ارسال‌ها: 83
موضوع‌ها: 14
تاریخ عضویت: مرداد ۱۳۸۴

تشکرها : 2
( 15 تشکر در 5 ارسال )
ارسال: #2
RE: نمايش كپي فايل توسط progress bar
والا تا اونجا که من می دونم شما باید اول اجرای کد max از progress رو مشخص کنی وهر بار مقدار رو +1 کنی تا به مکس برسه.

خودمم نفهمیدم چی گفتم

چشمی به هم زدیم و دنیا گذشت

دنبال هم امروز و فردا گذشت

دل میگه باز فردا رو از نو بساز

ای دل غافل دیگه از ما گذشت

به یاد بانو هایده
۲۵-مرداد-۱۳۸۷, ۰۰:۰۷:۴۶
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
shahram_g آفلاین
كاربر تک ستاره
*

ارسال‌ها: 47
موضوع‌ها: 16
تاریخ عضویت: آبان ۱۳۸۶

تشکرها : 6
( 8 تشکر در 7 ارسال )
ارسال: #3
RE: نمايش كپي فايل توسط progress bar
مشكلي در انتخاب max و پله هاي افزايشي progress bar نيست.ولي همينجوري كه نميشه 1 واحد اضافه كني.همانطور كه گفتم اين نمايش بايد واقعي باشه و نسبت فايل كپي شده به فايل اصلي رو نشون بده.
حالا اين 1 واحد به قول شما رو چه موقع اضافه كنه؟
مشكل اينه كه چون در دستور copy برنامه ميمونه به بقيه قسمتهاي برنامه كه كار چك كردن حجم فايل كپي شده رو بر عهده داره پاسخي نميده.
۲۵-مرداد-۱۳۸۷, ۰۰:۱۳:۱۰
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #4
RE: نمايش كپي فايل توسط progress bar
با سلام

اینا رو تو ماژول بنویسین :
کد:
Public Declare Function CopyFileEx Lib "kernel32.dll" Alias "CopyFileExA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal lpProgressRoutine As Long, lpData As Any, ByRef pbCancel As Long, ByVal dwCopyFlags As Long) As Long
Public Const COPY_FILE_FAIL_IF_EXISTS = &H1
Public Const COPY_FILE_RESTARTABLE = &H2
Public bCancel As Long
Public Function CopyProgressRoutine(ByVal TotalFileSize As Currency, ByVal TotalBytesTransferred As Currency, ByVal StreamSize As Currency, ByVal StreamBytesTransferred As Currency, ByVal dwStreamNumber As Long, ByVal dwCallbackReason As Long, ByVal hSourceFile As Long, ByVal hDestinationFile As Long, ByVal lpData As Long) As Long
On Error Resume Next
Form1.ProgressBar1.Value = CStr(Int((TotalBytesTransferred * 10000) / (TotalFileSize * 10000) * 100))
DoEvents
CopyProgressRoutine = PROGRESS_CONTINUE
End Function
اینم برا دکمه کپی
کد:
ret = CopyFileEx("From", "To", AddressOf CopyProgressRoutine, ByVal 1&, bCancel, COPY_FILE_RESTARTABLE)

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۲۵-مرداد-۱۳۸۷, ۰۰:۴۲:۰۰
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : shahram_g, Di Di, Payman62, Rink8, mahdi321
shahram_g آفلاین
كاربر تک ستاره
*

ارسال‌ها: 47
موضوع‌ها: 16
تاریخ عضویت: آبان ۱۳۸۶

تشکرها : 6
( 8 تشکر در 7 ارسال )
ارسال: #5
RE: نمايش كپي فايل توسط progress bar
دوست عزيز واقعا سپاسگذارم.
موفق باشيد.
۲۵-مرداد-۱۳۸۷, ۰۱:۱۲:۳۷
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
EleRam آفلاین
کاربر با تجربه
****

ارسال‌ها: 518
موضوع‌ها: 52
تاریخ عضویت: تير ۱۳۸۶

تشکرها : 423
( 588 تشکر در 140 ارسال )
ارسال: #6
RE: نمايش كپي فايل توسط progress bar
اين كد مورد نداشت؟! واسه من همون اول كپي مي كنه (20 درصد كار قطع كردم برنامه رو... بعد ديدم فايل خيلي وقته كپي شده!)

[تصویر:  banner_moharram-21.png]
روزها عاقلترينم شامها ديوانه ام...

www.EleRam.com :: نرم افزار هاي فارسي (رايگان)
www.PhotoImpact.blogfa.com :: آموزش کامل فتوايمپکت
۳۰-مرداد-۱۳۸۷, ۲۱:۰۱:۱۳
وب سایت ارسال‌ها
پاسخ
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #7
RE: نمايش كپي فايل توسط progress bar
فایلی که کپی شده بود کار هم کرد ؟

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۳۱-مرداد-۱۳۸۷, ۲۲:۰۲:۵۳
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
EleRam آفلاین
کاربر با تجربه
****

ارسال‌ها: 518
موضوع‌ها: 52
تاریخ عضویت: تير ۱۳۸۶

تشکرها : 423
( 588 تشکر در 140 ارسال )
ارسال: #8
RE: نمايش كپي فايل توسط progress bar
بله سالم سالم...

[تصویر:  banner_moharram-21.png]
روزها عاقلترينم شامها ديوانه ام...

www.EleRam.com :: نرم افزار هاي فارسي (رايگان)
www.PhotoImpact.blogfa.com :: آموزش کامل فتوايمپکت
۰۱-شهریور-۱۳۸۷, ۰۲:۵۵:۵۶
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #9
RE: نمايش كپي فايل توسط progress bar
نه نمیتونه سالم باشه
فقط از نظر حجمی مثل همون هست نه دیتا

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۰۲-شهریور-۱۳۸۷, ۰۳:۰۳:۰۲
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
m_vb66 آفلاین
در حال پیشرفت
***

ارسال‌ها: 253
موضوع‌ها: 60
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 114
( 52 تشکر در 35 ارسال )
ارسال: #10
RE: نمايش كپي فايل توسط progress bar
برای کپی فایل یک راه بهتر هم هست و اون استفاده از تابع
Private Declare Function SHFileOperation Lib "shell32.dll" Alias " SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
هست
از نظر سرعت کپی هم سرعتش نسبت به copyfile بهتره امکاناتش هم بیشتره این هم یک نمونه

Private Const FO_COPY = &H2

Private Type SHFILEOPSTRUCT
hwnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Long
hNameMappings As Long
lpszProgressTitle As String ' only used if FOF_SIMPLEPROGRESS
End Type

Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long

Private Sub Command1_Click()
Dim ret_val As Long

Dim sh_op1 As SHFILEOPSTRUCT
Dim sh_op2 As SHFILEOPSTRUCT

Dim path1 As String
Dim pathh1 As String

Dim path2 As String
Dim pathh2 As String

path1 = "c:\tozi\marsol.dbf"
path2 = "c:\tozi\marcol.dbf"

pathh1 = "g:\tozi\marsol.dbf"
pathh2 = "g:\tozi\marcol.dbf"


With sh_op1
.hwnd = 0
.wFunc = FO_COPY
.pFrom = path1
.pTo = pathh1
End With

With sh_op2
.hwnd = 0
.wFunc = FO_COPY
.pFrom = path2
.pTo = pathh2
End With

ret_val = SHFileOperation(sh_op1)
ret_val = SHFileOperation(sh_op2)
End Sub
۰۳-شهریور-۱۳۸۷, ۱۰:۲۳:۱۲
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
EleRam آفلاین
کاربر با تجربه
****

ارسال‌ها: 518
موضوع‌ها: 52
تاریخ عضویت: تير ۱۳۸۶

تشکرها : 423
( 588 تشکر در 140 ارسال )
ارسال: #11
RE: نمايش كپي فايل توسط progress bar
hamed_Arfaee نوشته است:نه نمیتونه سالم باشه
فقط از نظر حجمی مثل همون هست نه دیتا

من ميگم فايل سالمه و از اول تا آخر عين آدم كار مي كنه بعد شما ميگي....؟!

[تصویر:  banner_moharram-21.png]
روزها عاقلترينم شامها ديوانه ام...

www.EleRam.com :: نرم افزار هاي فارسي (رايگان)
www.PhotoImpact.blogfa.com :: آموزش کامل فتوايمپکت
۰۳-شهریور-۱۳۸۷, ۱۲:۲۳:۴۳
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  كپي كردن فايل toopdanlod 6 7,412 ۰۸-آبان-۱۳۹۵, ۱۱:۱۲:۴۵
آخرین ارسال: za215487
Shy [فوری] خواندن فایل تکست و تبدیل آن به فایل اکسل توسط CommandButton ahmadelectron 1 3,530 ۰۵-خرداد-۱۳۹۴, ۱۶:۵۲:۲۷
آخرین ارسال: Ghoghnus
Question [سوال] جلوگیری از مشاهده کد توسط کاربر eppagh 11 6,228 ۲۷-مرداد-۱۳۹۳, ۱۳:۳۲:۳۷
آخرین ارسال: ajlajlajl
  مقدار دهی توسط WebBrowser aleas 1 2,423 ۰۳-اردیبهشت-۱۳۹۳, ۱۴:۳۴:۱۶
آخرین ارسال: babyy
  نمايش ركوردهاي يك فيلد از ديتا بيس اكسس در يك ليست باكس sinacomputer 8 11,391 ۱۹-بهمن-۱۳۹۲, ۲۱:۲۴:۱۰
آخرین ارسال: Ghoghnus
  هش کردن رشته توسط vb6 policweb 5 4,794 ۲۶-شهریور-۱۳۹۲, ۲۲:۵۹:۱۲
آخرین ارسال: Ghoghnus
Question دستور حذف كردن فايل ها در وبي ΛΛ Θ l-l $ Σ Ω 14 11,340 ۱۱-خرداد-۱۳۹۲, ۲۳:۳۱:۳۷
آخرین ارسال: ترانسپورتر
  چگونه يه فايل ocx را به برنامه خود بچسبانيم rap0661 16 12,812 ۱۹-شهریور-۱۳۹۱, ۱۸:۲۴:۵۱
آخرین ارسال: rap0661
  سوال چگونه فايل خود را تكثير كنيم rap0661 2 3,332 ۲۵-بهمن-۱۳۹۰, ۱۹:۰۵:۲۱
آخرین ارسال: rap0661
  [سوال] مشكل در ذخيره و ذخيره مجدد فايل restles20 9 5,871 ۲۸-آبان-۱۳۹۰, ۱۱:۴۸:۰۹
آخرین ارسال: restles20

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS