منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كيفية انشاء مجلد في المسار التالي
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم ورخمة الله
كما جاء في العنوان انا حاطط ملفات في  المسار C:\Users\  name pc  \AppData\Roaming
name pc هو اسم  جهازي
اريد تعريف المسار لاي جهاز اخر
وشكراHuh
جرب هذا الكود
MsgBox Environ("AppData")
(03-01-18, 03:32 AM)eiocm كتب : [ -> ]جرب هذا الكود
MsgBox Environ("AppData")

لم افهم عليك اخي جيدا
وللتوضيح اكثر
ان المجلد موجود في كل الانظمة لكن يختلف الاسم فقط
كيف لي ان اجعل برنامجي يتعرف على هذا المسار
او بطريقة اخرى اريد لما يشتغل البرنامج يظع ملفات بهذا المسار
كيف لي ذالك لان هنا الاسم يتغير من جهاز لاخر
هذا كود الدت نت لانشاء مجلد في نفس المسار اريد نفس الكود الفيجول 6

كود :
 If (Not System.IO.Directory.Exists("C:\Users\" + Environment.UserName + "\AppData\Roaming" & "\bt")) Then
           System.IO.Directory.CreateDirectory("C:\Users\" + Environment.UserName + "\AppData\Roaming" & "\bt")
       End If

وشكرا Smile Smile
بعد إذن أخي أمير
Dim btPath As String
btPath = Environ("AppData") & "\bt"
If Dir$(btPath, vbDirectory) = "" Then MkDir btPath
الف تحية وتقدير لكما
Amir_alzubidy
eiocm
ولو تكرمتم اخواني باضافة اخرى على الكود بحيث اريد استخراج ملف من الريسورس لهذا المسار
وشكرا لكم
للتوضيح فقط

المجلد Roaming يوجد في ويندوز Vista وما بعده
C:\Users\$USER$\AppData\Roaming


أما في XP فاسم المجلد Application Data
C:\Documents and Settings\$USER$\Application Data

والكود ("Environ("AppData يحضر المسار المطلوب لكل نظام

فالمجلد Application Data في XP يعتبر في نظر الويندوز هو Roaming في الأنظمة المتقدمة
(03-01-18, 07:04 PM)eiocm كتب : [ -> ]للتوضيح فقط

المجلد Roaming يوجد في ويندوز Vista وما بعده
C:\Users\$USER$\AppData\Roaming


أما في XP فاسم المجلد Application Data
C:\Documents and Settings\$USER$\Application Data

والكود ("Environ("AppData يحضر المسار المطلوب لكل نظام

فالمجلد Application Data في XP يعتبر في نظر الويندوز هو Roaming في الأنظمة المتقدمة

شكرا لك اخي الكريم على الشرح المهم بالنسبة لنا كمبتدئين
الله يجازيك بالف خير اخي وان يجعلها لك في مسزان الحسنات
 لقد قمت بالتعديل على المثال بادراج ملف exe واردت تشغيله بعد وظعه في المسار
لكن طلعت مشكلة Smile
بعد إذن أخي أمير في تعديل كود المرفق

تفضل هذا التعديل وقد تمت تجربته لملف exe ولم تظهر مشكلة
Dim Path_File As String

Private Sub Command1_Click()
Path_File = Environ("AppData") & "\bt\"
If Dir$(Path_File, vbDirectory) = "" Then
MkDir Path_File
DoEvents
End If
MsgBox "Done..."
Call Get_Data_Resource
End Sub

Public Sub Get_Data_Resource()
Dim Arry() As Byte
Dim MyFile As Long
Dim FileName As String
FileName = Path_File & "\myprog.exe"

If Dir$(FileName) <> "" Then Kill FileName

Arry = LoadResData(102, "Custom")
MyFile = FreeFile
Open (FileName) For Binary Access Write As #MyFile
Put #MyFile, , Arry
Close #MyFile

Shell FileName, vbNormalFocus
End Sub

ولو ظهرت لك مشكلة اشرحها مع وضع صورة لها
(04-01-18, 12:23 AM)eiocm كتب : [ -> ]بعد إذن أخي أمير في تعديل كود المرفق

تفضل هذا التعديل وقد تمت تجربته لملف exe ولم تظهر مشكلة
Dim Path_File As String

Private Sub Command1_Click()
   Path_File = Environ("AppData") & "\bt\"
   If Dir$(Path_File, vbDirectory) = "" Then
       MkDir Path_File
       DoEvents
   End If
   MsgBox "Done..."
   Call Get_Data_Resource
End Sub

Public Sub Get_Data_Resource()
   Dim Arry() As Byte
   Dim MyFile As Long
   Dim FileName As String
   FileName = Path_File & "\myprog.exe"
   
   Kill FileName
   If Dir$(FileName) = "" Then
       Arry = LoadResData(102, "Custom")
       MyFile = FreeFile
       Open (FileName) For Binary Access Write As #MyFile
           Put #MyFile, , Arry
       Close #MyFile
       
   End If
   Shell FileName, vbNormalFocus
End Sub

ولو ظهرت لك مشكلة اشرحها مع وضع صورة لها

كانت مشكلة في    Kill FileName    فقمت بالغائها فشتغل تمام التمام
فهل الغائها سلبي
وشكرا Smile
كان المفروض أن أدخل Kill شرط وجود الملف، لكن نسيته سهوا فعذرا

تفضل التعديل

Dim Path_File As String

Private Sub Command1_Click()
Path_File = Environ("AppData") & "\bt\"
If Dir$(Path_File, vbDirectory) = "" Then
MkDir Path_File
DoEvents
End If
MsgBox "Done..."
Call Get_Data_Resource
End Sub

Public Sub Get_Data_Resource()
Dim Arry() As Byte
Dim MyFile As Long
Dim FileName As String
FileName = Path_File & "\myprog.exe"

If Dir$(FileName) <> "" Then Kill FileName

Arry = LoadResData(102, "Custom")
MyFile = FreeFile
Open (FileName) For Binary Access Write As #MyFile
Put #MyFile, , Arry
Close #MyFile

Shell FileName, vbNormalFocus
End Sub
الصفحات : 1 2