PDA

View Full Version : متد Create folder,move folder



Arash_VBScripts
دوشنبه 06 شهریور 1385, 20:41 عصر
با سلام :
هربا این دو تا متد کار میکنم error های مختلفی میده!
لطفا هر کی میدونه اول راه حل بعد هم شکل کلی متد رو بنویسه!!!!
در FSO هستش.

subsub
سه شنبه 07 شهریور 1385, 13:55 عصر
پیغام رو بنویسید تا بتونم پاسخ شما رو بدم.
شکل کلی رو هم بعداً می نویسم.

Arash_VBScripts
چهارشنبه 08 شهریور 1385, 02:23 صبح
Run-time Error '91':
Object variable or with block variable not set.
این یه نمونه بود در عنصر فایل

subsub
جمعه 10 شهریور 1385, 12:30 عصر
عنصر FSO (File System Object) برای کنترل فایلها مورد استفاده قرار می گیرد.
برای استفاده از آن، پس از اضافه کردن به برنامه، باید یک متغیر از نوع آن تعریف کرد که باید حتماً به صورت زیر تعریف گردد:


Dim|Private|Public FSO As New FileSystemObject
به جای FSO می توان نام دیگری برای استفاده از این عنصر در پروژه قرار دهید ولی معمولاً از FSO استفاده می شود.
اگر از کلمه New در تعریف متغیر استفاده نکنید، در هنگام استفاده از FSO با پیغام زیر مواجه می شوید:


Run-time error '91':
Object variable or With block variable not set
برای ساختن پوشه جدید از متد CreateFolderعنصر FSO استفاده می شود. شکل کلی این متد به صورت زیر است:


FSO.CreateFolder(Path As String) As Folder
Path مسیری است که شما می خواهید ایجاد کنید مثلاً اگر بخواهید در درایو C خود یک پوشه به نام NewFolder ایجاد کنید، باید دستور زیر را به کار ببرید:


FSO.CreateFolder ("C:\NewFolder")
یعنی باید ابتدا مسیری که می خواهید در آن پوشه جدید ایجاد کنید را وارد کرده و سپس یک \ و سپس نامی برای پوشه جدید.
اگر پوشه وجود داشته باشد، با پیغام زیر مواجه می شوید:


Run-time error '58':
File already exists
برای جا به جا کردن پوشه از متد دیگری به نام MoveFolder استفاده می شود که شکل کلی آن به صورت زیر است:


FSO.MoveFolder(Source As String,Destination As String)که در آن Source مبدا و Destination مقصد مورد نظر است. مثلاً برای انتقال پوشه NewFolder از درایو C به پوشه Test از درایو D از دستور زیر استفاده می کنیم:(دو پوشه مذکور قبلاً ایجاد شده اند.)

من هم با متد MoveFolder دچار مشکل شدم. ولی راه دیگری هم هست. اینکه اول پوشه را به مکان جدید کپی کنی و سپس پوشه قدیمی را پاک کنی که به متدهای CopyFolder و DeleteFolder می تونی این کار رو انجام بدی.
اگه بازم کمک خواستی در خدمتیم.