نمایش نتایج 1 تا 18 از 18

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

  1. #1

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

    با سلامی مجدد
    چطوری می تونم یه عکسی رو که روی هارد هست رو بخونم و اون رو توی یک فیلد ole قرار بدم
    همه کار رو می خوام با برنامه نویسی انجام بدم - اگه کسی راه حلی داره ، راهنمائیم کنه - با تشکر

  2. #2
    فایلهای باینری رو میتوان توسط متغییر های نوع Stream که در ADO وجو دارند درون یک متغیر قرار داد و در فیلدهای نوع باینری ذخیره کرد . بنده از این طریق در ADP این کارو انجام میدم امیدوارم به درد شما بخوره
    Dim st As ADODB.Stream
    Set st = New ADODB.Stream
    st.Type = adTypeBinary
    st.open
    st.LoadFromFile ("C:\Test.BMP")

    سپس از طریق ایجاد یک ADODB.Recordset میتونین اون رو درون فیلد از نوع باینری قرار بدین.
    منی که نام شراب از کتاب می شستم
    زمانه کاتب دکان می فروشم کرد.

  3. #3
    کاربر دائمی آواتار انگوران
    تاریخ عضویت
    اردیبهشت 1385
    محل زندگی
    كرج
    پست
    1,036
    آقای سارمی عزیز لطفاً فایل ضمیمه رو ببینید و اگه ممکنه همین رویه رو دستکاریش کنید ببینید می شه به جواب مورد نظر رسید .
    فایل های ضمیمه فایل های ضمیمه

  4. #4
    https://barnamenevis.org/showpo...8&postcount=95
    این برنامه نمی‌تونه کمک کنه؟ کانورتش کنید(پیغام کانورت را قبول کنید)

  5. #5
    یه نمونه کد از office online برای فایلهای BlobدرMdb فایل گرفتم که براتون میذارم ابتدا یک پروژه MDB ایجاد کنین حال مراحل ذیل را دنبال نمائید.
    1- ابتدا یک ماژول جدید ایجاد نمایید سپس کد ذیل را درون آن قرار دهید.
    Option Compare Database
    Option Explicit
    Const BlockSize = 32768
    Const dbOpenTable = DB_OPEN_TABLE
    Const acSysCmdInitMeter = SYSCMD_INITMETER
    Const acSysCmdUpdateMeter = SYSCMD_UPDATEMETER
    Const acSysCmdRemoveMeter = SYSCMD_REMOVEMETER
    '************************************************* *************
    ' FUNCTION: ReadBLOB()
    '
    ' PURPOSE:
    ' Reads a BLOB from a disk file and stores the contents in the
    ' specified table and field.
    '
    ' PREREQUISITES:
    ' The specified table with the OLE object field to contain the
    ' binary data must be opened in Visual Basic code (Access Basic
    ' code in Microsoft Access 2.0 and earlier) and the correct record
    ' navigated to prior to calling the ReadBLOB() function.
    '
    ' ARGUMENTS:
    ' Source - The path and filename of the binary information
    ' to be read and stored.
    ' T - The table object to store the data in.
    ' Field - The OLE object field in table T to store the data in.
    '
    ' RETURN:
    ' The number of bytes read from the Source file.
    '************************************************* *************
    Function ReadBLOB(Source As String, T As Recordset, _
    sField As String)
    Dim NumBlocks As Integer, SourceFile As Integer, i As Integer
    Dim FileLength As Long, LeftOver As Long
    Dim FileData As String
    Dim RetVal As Variant

    On Error GoTo Err_ReadBLOB

    ' Open the source file.
    SourceFile = FreeFile
    Open Source For Binary Access Read As SourceFile

    ' Get the length of the file.
    FileLength = LOF(SourceFile)
    If FileLength = 0 Then
    ReadBLOB = 0
    Exit Function
    End If

    ' Calculate the number of blocks to read and leftover bytes.
    NumBlocks = FileLength \ BlockSize
    LeftOver = FileLength Mod BlockSize

    ' SysCmd is used to manipulate status bar meter.
    RetVal = SysCmd(acSysCmdInitMeter, "Reading BLOB", _
    FileLength \ 1000)

    ' Put the record in edit mode.
    T.Edit

    ' Read the leftover data, writing it to the table.
    FileData = String$(LeftOver, 32)
    Get SourceFile, , FileData
    T(sField).AppendChunk (FileData)

    RetVal = SysCmd(acSysCmdUpdateMeter, LeftOver / 1000)

    ' Read the remaining blocks of data, writing them to the table.
    FileData = String$(BlockSize, 32)
    For i = 1 To NumBlocks
    Get SourceFile, , FileData
    T(sField).AppendChunk (FileData)

    RetVal = SysCmd(acSysCmdUpdateMeter, BlockSize * i / 1000)
    Next i

    ' Update the record and terminate function.
    T.Update
    RetVal = SysCmd(acSysCmdRemoveMeter)
    Close SourceFile
    ReadBLOB = FileLength
    Exit Function

    Err_ReadBLOB:
    ReadBLOB = -Err
    Exit Function

    End Function

    '************************************************* *************
    ' FUNCTION: WriteBLOB()
    '
    ' PURPOSE:
    ' Writes BLOB information stored in the specified table and field
    ' to the specified disk file.
    '
    ' PREREQUISITES:
    ' The specified table with the OLE object field containing the
    ' binary data must be opened in Visual Basic code (Access Basic
    ' code in Microsoft Access 2.0 or earlier) and the correct
    ' record navigated to prior to calling the WriteBLOB() function.
    '
    ' ARGUMENTS:
    ' T - The table object containing the binary information.
    ' sField - The OLE object field in table T containing the
    ' binary information to write.
    ' Destination - The path and filename to write the binary
    ' information to.
    '
    ' RETURN:
    ' The number of bytes written to the destination file.
    '************************************************* *************
    Function WriteBLOB(T As Recordset, sField As String, _
    Destination As String)
    Dim NumBlocks As Integer, DestFile As Integer, i As Integer
    Dim FileLength As Long, LeftOver As Long
    Dim FileData As String
    Dim RetVal As Variant

    On Error GoTo Err_WriteBLOB

    ' Get the size of the field.
    FileLength = T(sField).FieldSize()
    If FileLength = 0 Then
    WriteBLOB = 0
    Exit Function
    End If

    ' Calculate number of blocks to write and leftover bytes.
    NumBlocks = FileLength \ BlockSize
    LeftOver = FileLength Mod BlockSize

    ' Remove any existing destination file.
    DestFile = FreeFile
    Open Destination For Output As DestFile
    Close DestFile

    ' Open the destination file.
    Open Destination For Binary As DestFile

    ' SysCmd is used to manipulate the status bar meter.
    RetVal = SysCmd(acSysCmdInitMeter, _
    "Writing BLOB", FileLength / 1000)

    ' Write the leftover data to the output file.
    FileData = T(sField).GetChunk(0, LeftOver)
    Put DestFile, , FileData

    ' Update the status bar meter.
    RetVal = SysCmd(acSysCmdUpdateMeter, LeftOver / 1000)

    ' Write the remaining blocks of data to the output file.
    For i = 1 To NumBlocks
    ' Reads a chunk and writes it to output file.
    FileData = T(sField).GetChunk((i - 1) * BlockSize _
    + LeftOver, BlockSize)
    Put DestFile, , FileData

    RetVal = SysCmd(acSysCmdUpdateMeter, _
    ((i - 1) * BlockSize + LeftOver) / 1000)
    Next i

    ' Terminates function
    RetVal = SysCmd(acSysCmdRemoveMeter)
    Close DestFile
    WriteBLOB = FileLength
    Exit Function

    Err_WriteBLOB:
    WriteBLOB = -Err
    Exit Function

    End Function

    '************************************************* *************
    ' SUB: CopyFile
    '
    ' PURPOSE:
    ' Demonstrates how to use ReadBLOB() and WriteBLOB().
    '
    ' PREREQUISITES:
    ' A table called BLOB that contains an OLE Object field called
    ' Blob.
    '
    ' ARGUMENTS:
    ' Source - The path and filename of the information to copy.
    ' Destination - The path and filename of the file to write
    ' the binary information to.
    '
    ' EXAMPLE:
    ' CopyFile "c:\windows\winfile.hlp", "c:\windows\winfil_1.hlp"
    '************************************************* *************
    Sub CopyFile(Source As String, Destination As String)
    Dim BytesRead As Variant, BytesWritten As Variant
    Dim Msg As String
    Dim db As Database
    Dim T As Recordset

    ' Open the BLOB table.
    Set db = CurrentDb()
    Set T = db.OpenRecordset("BLOB", dbOpenTable)

    ' Create a new record and move to it.
    T.AddNew
    T.Update
    T.MoveLast

    BytesRead = ReadBLOB(Source, T, "Blob")

    Msg = "Finished reading """ & Source & """"
    Msg = Msg & Chr$(13) & ".. " & BytesRead & " bytes read."
    MsgBox Msg, 64, "Copy File"

    BytesWritten = WriteBLOB(T, "Blob", Destination)

    Msg = "Finished writing """ & Destination & """"
    Msg = Msg & Chr$(13) & ".. " & BytesWritten & " bytes written."
    MsgBox Msg, 64, "Copy File"
    End Sub

    2- حال یک جدول ایجاد نمائید و نام آن راblob قرار دهید که حاوی یه فیلد با نام blob و ازنوع ole باشد.
    3- کد ذیل را درون event مورد نظر قرار دهید که شامل کپی فایل در جدولو سپس Save as نمودن آن با یک نام دیگر است
          CopyFile "c:\windows\winfile.hlp", "c:\windows\winfil_1.hlp"

    نمونه برنامه دانلود
    منی که نام شراب از کتاب می شستم
    زمانه کاتب دکان می فروشم کرد.

  6. #6
    با سلامی دوباره
    جوابهایی و فایلهایی که عزیزان فرستاده اند هیچکدام تا به حال مشکل مرا برطرف نکرده است
    سوال را دوباره به این صورت عنوان می کنم
    در شاخه ای مثلا به اسم test عکسهای پرسنل قرار دارد - عکسهای پرسنل در فایلی و با نام و پسوندی به صورت کد هشت رقمی کد پرسنلی با پسوند jpg هستند - مثلا عکس آقای سعید سعیدی با شماره پرسنلی 12345678 به صورت
    12345678.JPG
    ذخیره شده است

    در جدولی که اطلاعات پرسنلی وجود دارد فیلدی از نوع عکس وجود دارد می خواستم با زدن یک کلید سیستم به صورت خودکار تمامی عکسها را با توجه به نام آن و شماره پرسنلی کارمند تشخیص داده و آن را در فیلد عکس کارمند مربوطه درج کند -- لطفا راهنمایی بفرمائید.
    با تشکر

  7. #7
    شما یه مشکلی که دارید اینه که یکم تنبلی .اگه اون برنامه منو با دقت نگاه می‌کردی
    1- رو دکمه create table کلیک کن و مسیر فولدر رو وارد کن مثلاً C:\test و یه نام بده و OK کن
    2- وقتی OK کنی میاد یه تیبل باتوجه به اون نامت میسازه و مشخصات عکسها رو می‌ریزه توش ویکی از اون مشخصات، اسم فایله
    3- شما می‌تونی یه کوئری بسازی و از اسم فایل 8 کاراکتر سمت چپش رو جدا کنی(که میشه همون شماره پرسنلیت) وتحت عنوان یک فیلد در کوئریت ذخیره کنی
    4- بعد می‌تونی این کوئری رو به تیبل پرسنلیت از طریق همین فیلد ارتباط بدی
    و بقیه هم دیگه کار خودته
    حالا IQ کیه؟

  8. #8
    با سلامی دوباره
    با تشکر از برنامه samaneh_h
    برنامه شما رو دریافت و اجرا کردم اما
    1- این برنامه چیزی نبود که سوال مرا جواب دهد
    2- اجرای برنامه در access2003 به دلیل تبدیل از نسخه های قبلی با ایرادهایی همراه بود
    3- در برنامه درباره موضوعهای مرتبط به دریافت جدول از خارج از برنامه ، برنامه نویسی وجود داشت که مشکل سوال مرا حل نمی نمود.

    در هر حال در صورتی که دوستان عزیز این انجمن بتوانند دقیقاً درباره سوال مطرح شده مرا کمک کنند بسیار ممنون و متشکر می شوم - منتظر نظرات شما هستم

  9. #9
    کاربر دائمی آواتار Ali_Fallah
    تاریخ عضویت
    مهر 1384
    محل زندگی
    همین نزدیکی ها
    پست
    791

    نمایش عکس پرسنلی...

    فکر کنم این دوست خوبمون
    اگر این برنامه رو دریافت کنند به جوابشون برسند
    در این برنامه بدون اینکه عکسی در فایل ذخیره بشه برای هر رکورد یک عکس با انتخاب مسیر مشخص در نظر گرفته و آن عکس را نمایش میدهد
    و ...
    بهتره برنامه را ببینید...
    فایل های ضمیمه فایل های ضمیمه
    • نوع فایل: rar pic.rar‏ (38.4 کیلوبایت, 1287 دیدار)

  10. #10
    با سلامی دوباره حضور همه دوستان مخصوصا ali_fallah
    فایل شما رو دریافت و بررسی کردم
    تا جایی که شما انجام داده بودید من هم در برنامه نویسی خودم انجام داده ام
    اما مشکل من در این است که می خواهم یک جدول موقتی درست کنم که بعضی از عکسهای روی هارد رو داخل این جدول واکشی کنم به عبارت دیگر می خواهم با برنامه نویسی عکسهایم رو از روی هارد بخواند و در فیلد عکس هر رکورد ذخیره کند ( نام عکس متناظر با شماره پرسنلی افراد است) -- در این زمینه اگر کسی بتواند راهنمایی کند ممنون و سپاسگزار می شوم.

  11. #11
    کاربر دائمی آواتار Ali_Fallah
    تاریخ عضویت
    مهر 1384
    محل زندگی
    همین نزدیکی ها
    پست
    791
    اگر بخواهید تصویر را در خود فیلد OLE ذخیره کنید اونوقت حجم فایل زیاد شده و ممکنه کند بشه
    این برنامه ای که آپلود کردم فقط مسیر عکس را در فیلد ذخیره کرده و نمایش میده

  12. #12
    نقل قول نوشته شده توسط Ali_Fallah مشاهده تاپیک
    اگر بخواهید تصویر را در خود فیلد OLE ذخیره کنید اونوقت حجم فایل زیاد شده و ممکنه کند بشه
    این برنامه ای که آپلود کردم فقط مسیر عکس را در فیلد ذخیره کرده و نمایش میده
    این را می دانم که اگر عکس در داخل برنامه ذخیره شود حجم آن خیلی زیاد می شود.
    اما در بعضی از اوقات لازم است که عکسها را در جداول موقتی واکشی کنم اگر در این زمینه کسی کاری انجام داده است لطفا راهنمایی بفرماید.

  13. #13
    کاربر دائمی آواتار Ali_Fallah
    تاریخ عضویت
    مهر 1384
    محل زندگی
    همین نزدیکی ها
    پست
    791
    نقل قول نوشته شده توسط nazary مشاهده تاپیک
    با سلامی دوباره
    جوابهایی و فایلهایی که عزیزان فرستاده اند هیچکدام تا به حال مشکل مرا برطرف نکرده است
    سوال را دوباره به این صورت عنوان می کنم
    در شاخه ای مثلا به اسم test عکسهای پرسنل قرار دارد - عکسهای پرسنل در فایلی و با نام و پسوندی به صورت کد هشت رقمی کد پرسنلی با پسوند jpg هستند - مثلا عکس آقای سعید سعیدی با شماره پرسنلی 12345678 به صورت
    12345678.JPG
    ذخیره شده است

    در جدولی که اطلاعات پرسنلی وجود دارد فیلدی از نوع عکس وجود دارد می خواستم با زدن یک کلید سیستم به صورت خودکار تمامی عکسها را با توجه به نام آن و شماره پرسنلی کارمند تشخیص داده و آن را در فیلد عکس کارمند مربوطه درج کند -- لطفا راهنمایی بفرمائید.با تشکر
    برنامه ای که ملاحظه کردید دقیقاً طبق گفته شما بود...
    حالا نمیدونم منظور شما از اینکه عکس را در جدول موقتی واکشی کنید چی هست ؟...

  14. #14
    نقل قول نوشته شده توسط Ali_Fallah مشاهده تاپیک
    برنامه ای که ملاحظه کردید دقیقاً طبق گفته شما بود...
    حالا نمیدونم منظور شما از اینکه عکس را در جدول موقتی واکشی کنید چی هست ؟...
    با سلامی دوباره
    عکسهای من در روی هارد است. می خواستم با برنامه نویسی vba و استفاده از recordset جدول مورد نظر خودم را باز کنم و و عکسهای روی هارد را خوانده و در فیلد مورد نظر از آن جدول اضافه کنم - حتما می خواستم این کار بوسیله برنامه نویسی انجام شود. در برنامه ارسالی شما جدولی که روی هارد وجود داشت خوانده شده و سپس در داخل برنامه توسط append query به جدول اضافه می شد. -- در هر حال از حسن نظر جنابعالی تشکر می کنم در صورتی که بوسیله برنامه نویسی مستقیم تجربه ای دارید خوشحالم می شوم مرا راهنمایی کنید.

  15. #15
    این فایل را هیمن الآن دانلود شد شاید بدرد کسی بخورد.
    فایل های ضمیمه فایل های ضمیمه

  16. #16
    نقل قول نوشته شده توسط sarami مشاهده تاپیک
    فایلهای باینری رو میتوان توسط متغییر های نوع Stream که در ADO وجو دارند درون یک متغیر قرار داد و در فیلدهای نوع باینری ذخیره کرد . بنده از این طریق در ADP این کارو انجام میدم امیدوارم به درد شما بخوره
    Dim st As ADODB.Stream
    Set st = New ADODB.Stream
    st.Type = adTypeBinary
    st.open
    st.LoadFromFile ("C:\Test.BMP")

    سپس از طریق ایجاد یک ADODB.Recordset میتونین اون رو درون فیلد از نوع باینری قرار بدین.
    میشه کد این قسمت رو هم بدهید و همینطور نوع فیلد مورد نظر که باید ساخته بشه؟ (من تازه کارم تو اکسس)
    سپس از طریق ایجاد یک ADODB.Recordset میتونین اون رو درون فیلد از نوع باینری قرار بدین.

  17. #17

    نقل قول: وارد کردن عکس با برنامه نویسی

    با سلام، لینک دانلود کار نمیکند. لطف میکنید اصلاح نموده یا دوباره بگذارید. پیشاپیش از لطف شما سپاسگزارم.

  18. #18

    نقل قول: وارد کردن عکس با برنامه نویسی

    نقل قول نوشته شده توسط sarami مشاهده تاپیک
    یه نمونه کد از office online برای فایلهای BlobدرMdb فایل گرفتم که براتون میذارم ابتدا یک پروژه MDB ایجاد کنین حال مراحل ذیل را دنبال نمائید.
    1- ابتدا یک ماژول جدید ایجاد نمایید سپس کد ذیل را درون آن قرار دهید.
    Option Compare Database
    Option Explicit
    Const BlockSize = 32768
    Const dbOpenTable = DB_OPEN_TABLE
    Const acSysCmdInitMeter = SYSCMD_INITMETER
    Const acSysCmdUpdateMeter = SYSCMD_UPDATEMETER
    Const acSysCmdRemoveMeter = SYSCMD_REMOVEMETER
    '************************************************* *************
    ' FUNCTION: ReadBLOB()
    '
    ' PURPOSE:
    ' Reads a BLOB from a disk file and stores the contents in the
    ' specified table and field.
    '
    ' PREREQUISITES:
    ' The specified table with the OLE object field to contain the
    ' binary data must be opened in Visual Basic code (Access Basic
    ' code in Microsoft Access 2.0 and earlier) and the correct record
    ' navigated to prior to calling the ReadBLOB() function.
    '
    ' ARGUMENTS:
    ' Source - The path and filename of the binary information
    ' to be read and stored.
    ' T - The table object to store the data in.
    ' Field - The OLE object field in table T to store the data in.
    '
    ' RETURN:
    ' The number of bytes read from the Source file.
    '************************************************* *************
    Function ReadBLOB(Source As String, T As Recordset, _
    sField As String)
    Dim NumBlocks As Integer, SourceFile As Integer, i As Integer
    Dim FileLength As Long, LeftOver As Long
    Dim FileData As String
    Dim RetVal As Variant

    On Error GoTo Err_ReadBLOB

    ' Open the source file.
    SourceFile = FreeFile
    Open Source For Binary Access Read As SourceFile

    ' Get the length of the file.
    FileLength = LOF(SourceFile)
    If FileLength = 0 Then
    ReadBLOB = 0
    Exit Function
    End If

    ' Calculate the number of blocks to read and leftover bytes.
    NumBlocks = FileLength \ BlockSize
    LeftOver = FileLength Mod BlockSize

    ' SysCmd is used to manipulate status bar meter.
    RetVal = SysCmd(acSysCmdInitMeter, "Reading BLOB", _
    FileLength \ 1000)

    ' Put the record in edit mode.
    T.Edit

    ' Read the leftover data, writing it to the table.
    FileData = String$(LeftOver, 32)
    Get SourceFile, , FileData
    T(sField).AppendChunk (FileData)

    RetVal = SysCmd(acSysCmdUpdateMeter, LeftOver / 1000)

    ' Read the remaining blocks of data, writing them to the table.
    FileData = String$(BlockSize, 32)
    For i = 1 To NumBlocks
    Get SourceFile, , FileData
    T(sField).AppendChunk (FileData)

    RetVal = SysCmd(acSysCmdUpdateMeter, BlockSize * i / 1000)
    Next i

    ' Update the record and terminate function.
    T.Update
    RetVal = SysCmd(acSysCmdRemoveMeter)
    Close SourceFile
    ReadBLOB = FileLength
    Exit Function

    Err_ReadBLOB:
    ReadBLOB = -Err
    Exit Function

    End Function

    '************************************************* *************
    ' FUNCTION: WriteBLOB()
    '
    ' PURPOSE:
    ' Writes BLOB information stored in the specified table and field
    ' to the specified disk file.
    '
    ' PREREQUISITES:
    ' The specified table with the OLE object field containing the
    ' binary data must be opened in Visual Basic code (Access Basic
    ' code in Microsoft Access 2.0 or earlier) and the correct
    ' record navigated to prior to calling the WriteBLOB() function.
    '
    ' ARGUMENTS:
    ' T - The table object containing the binary information.
    ' sField - The OLE object field in table T containing the
    ' binary information to write.
    ' Destination - The path and filename to write the binary
    ' information to.
    '
    ' RETURN:
    ' The number of bytes written to the destination file.
    '************************************************* *************
    Function WriteBLOB(T As Recordset, sField As String, _
    Destination As String)
    Dim NumBlocks As Integer, DestFile As Integer, i As Integer
    Dim FileLength As Long, LeftOver As Long
    Dim FileData As String
    Dim RetVal As Variant

    On Error GoTo Err_WriteBLOB

    ' Get the size of the field.
    FileLength = T(sField).FieldSize()
    If FileLength = 0 Then
    WriteBLOB = 0
    Exit Function
    End If

    ' Calculate number of blocks to write and leftover bytes.
    NumBlocks = FileLength \ BlockSize
    LeftOver = FileLength Mod BlockSize

    ' Remove any existing destination file.
    DestFile = FreeFile
    Open Destination For Output As DestFile
    Close DestFile

    ' Open the destination file.
    Open Destination For Binary As DestFile

    ' SysCmd is used to manipulate the status bar meter.
    RetVal = SysCmd(acSysCmdInitMeter, _
    "Writing BLOB", FileLength / 1000)

    ' Write the leftover data to the output file.
    FileData = T(sField).GetChunk(0, LeftOver)
    Put DestFile, , FileData

    ' Update the status bar meter.
    RetVal = SysCmd(acSysCmdUpdateMeter, LeftOver / 1000)

    ' Write the remaining blocks of data to the output file.
    For i = 1 To NumBlocks
    ' Reads a chunk and writes it to output file.
    FileData = T(sField).GetChunk((i - 1) * BlockSize _
    + LeftOver, BlockSize)
    Put DestFile, , FileData

    RetVal = SysCmd(acSysCmdUpdateMeter, _
    ((i - 1) * BlockSize + LeftOver) / 1000)
    Next i

    ' Terminates function
    RetVal = SysCmd(acSysCmdRemoveMeter)
    Close DestFile
    WriteBLOB = FileLength
    Exit Function

    Err_WriteBLOB:
    WriteBLOB = -Err
    Exit Function

    End Function

    '************************************************* *************
    ' SUB: CopyFile
    '
    ' PURPOSE:
    ' Demonstrates how to use ReadBLOB() and WriteBLOB().
    '
    ' PREREQUISITES:
    ' A table called BLOB that contains an OLE Object field called
    ' Blob.
    '
    ' ARGUMENTS:
    ' Source - The path and filename of the information to copy.
    ' Destination - The path and filename of the file to write
    ' the binary information to.
    '
    ' EXAMPLE:
    ' CopyFile "c:\windows\winfile.hlp", "c:\windows\winfil_1.hlp"
    '************************************************* *************
    Sub CopyFile(Source As String, Destination As String)
    Dim BytesRead As Variant, BytesWritten As Variant
    Dim Msg As String
    Dim db As Database
    Dim T As Recordset

    ' Open the BLOB table.
    Set db = CurrentDb()
    Set T = db.OpenRecordset("BLOB", dbOpenTable)

    ' Create a new record and move to it.
    T.AddNew
    T.Update
    T.MoveLast

    BytesRead = ReadBLOB(Source, T, "Blob")

    Msg = "Finished reading """ & Source & """"
    Msg = Msg & Chr$(13) & ".. " & BytesRead & " bytes read."
    MsgBox Msg, 64, "Copy File"

    BytesWritten = WriteBLOB(T, "Blob", Destination)

    Msg = "Finished writing """ & Destination & """"
    Msg = Msg & Chr$(13) & ".. " & BytesWritten & " bytes written."
    MsgBox Msg, 64, "Copy File"
    End Sub

    2- حال یک جدول ایجاد نمائید و نام آن راblob قرار دهید که حاوی یه فیلد با نام blob و ازنوع ole باشد.
    3- کد ذیل را درون event مورد نظر قرار دهید که شامل کپی فایل در جدولو سپس Save as نمودن آن با یک نام دیگر است
          CopyFile "c:\windows\winfile.hlp", "c:\windows\winfil_1.hlp"

    نمونه برنامه دانلود
    با سلام، لینک دانلود کار نمیکند. لطف میکنید اصلاح نموده یا دوباره بگذارید. پیشاپیش از لطف شما سپاسگزارم.

قوانین ایجاد تاپیک در تالار

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