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

نام تاپیک: سوال در مورد اجرا کردن محتوای متغییر رشته ای

  1. #1

    سوال در مورد اجرا کردن محتوای متغییر رشته ای

    سلام،
    یک متغییر رشته ای دارم که محتوای مثلا :

     
    a="msgbox("Test")"

    ویا هر دستور و فرمان دیگه ای سوال اینجاست که چطوری میتونم این متغییر رشته ای رو اجرا کنم؟

    با تشکر




  2. #2
    کاربر دائمی آواتار saied_genius
    تاریخ عضویت
    آبان 1386
    محل زندگی
    IRAN فعلاً ...
    پست
    595

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای


    System.Diagnostics.Process Start(string fileName)

    مثال:
    System.Diagnostics.Process.Start("c:\...\MyTextFil e.txt")

    System.Diagnostics.Process.Start("c:\test.exe")

    يا

    Dim myProcess As Process = System.Diagnostics.Process.Start("c:\...\MyTextFil e.txt")
    MessageBox.Show(myProcess.ProcessName)


    موفق باشيد

  3. #3

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    دوست عزیز از پاسختون ممنونم اما منظورم این نبود.
    همانطور که در پست اولم عرض کردم میخوام دستور متغییر رشته ای متغیر a رو اجرا کنم یعنی پنجره msgbox اجرا و نمایش داده بشه.

  4. #4
    محروم شده
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    یزد
    سن
    31
    پست
    21

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    باید به این شکل بنویسید :
    msgbox("text")
    فقط همین باید در زیر هندلر قرار بگیره...

  5. #5

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    سلام ببین این بدردت میخوره:

    Dim A AsString = MessageBox.Show("Test")
    Return


    نمیدونم شاید منظور شما رو درست نفهمیده باشم ،ولی چرا از راه های دیگه استفاده نمیکنید.مثلا کلمه "Test" رو برای a تعریف کنید و هر جا نیاز داشتید فراخوانی کنید:

    Dim A AsString = "test"
    MessageBox.Show(A)

    یا اگر براتون خیلی مهمه که وقتی a را فراخواندید پنجره MessageBox نمایش داده بشه از Sub یا Function استفاده نمیکنید.

    PrivateSub A()
    Dim StrA AsString = MessageBox.Show("test")
    Return
    EndSub
    .................................................. ......................
    PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    A()
    EndSub

    در هر حال کد اول کار خودش رو میکنه ولی فکر نکنم در برنامه های خیلی گسترده بشه استفاده کرد.
    آخرین ویرایش به وسیله morteza_261 : جمعه 31 خرداد 1387 در 00:47 صبح

  6. #6

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    دوستان اجرا msgbox در متغییر فوق فقط یک مثال است.
    بنده در حال نوشتن یک قفل نرم افزاری (برای برنامه ام) هستم که در این قفل مجبورم یک سری دستوراتی رو در یک متغییر رشته ای مقدار دهی کنم و بعد اون متغییرها رو در چندین جاهای برنامه فرخوانی رو اجرا کنم از توابع و ... هم در این قفل استفاده میکنم منتها یجایی گیر کردم و اون هم اینکه نمیتونم محتوای متغییر رشته ای که حاوی یکسری دستورات VB است رو اجرا کنم.
    در زبانهای برنامه نویسی دیگه مثلا کارکتر & جلوی نام متغییر رشته که حاوی دستورات اون زبان باشد باعث اجرای متغییر خواهد شد ولی در VB.net چون شی گرا است نمیدونم.

    با تشکر

  7. #7

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

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

    دوستان کسی هست در این زمینه کمک کنه ؟

    با تشکر

  8. #8
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    1,025

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    میتونید یه شی از کلاس فاکس پرو ایجاد کنید و از متد DoCmd() اون استفاده کنید
    این روش مستلزم آشنایی با دستورات فاکس پرو و همین طور وجود کتابخانه Dll زمان اجرای فاکس روی سیستم شماست
    ولی من تست کردم به هرحال جواب داده

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

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    نقل قول نوشته شده توسط NewFoxStudent مشاهده تاپیک
    میتونید یه شی از کلاس فاکس پرو ایجاد کنید و از متد DoCmd() اون استفاده کنید
    این روش مستلزم آشنایی با دستورات فاکس پرو و همین طور وجود کتابخانه Dll زمان اجرای فاکس روی سیستم شماست
    ولی من تست کردم به هرحال جواب داده
    میشه لطفا یه نمونه سورس بزارین ؟

  10. #10
    کاربر دائمی آواتار amirsajjadi
    تاریخ عضویت
    آبان 1385
    محل زندگی
    خراسان رضوی - سبزوار
    سن
    34
    پست
    871

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای


  11. #11
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    1,025

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای


    Dim a AsNew VisualFoxpro.FoxApplication
    a.DoCmd(
    "Create Table TestTable(Field1 Char(10))")

  12. #12
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    1,025

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    البته باید رفرنس ویژوال فاکس پرو رو به برنامت اضافه کنی

  13. #13

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    ممنون از شما دوست عزیز نکته جالبی رو مطرح کردین
    ولی متغییر و یا عبارت رشته ای که حاوی دستور Vb است میخوام اجرا بشه نه دستورات فاکس پرو.

  14. #14
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    1,025

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    من که قبلا عرض کردم
    باید با زبان فاکس آشنا باشید
    منظورم این بود که کاری که میخواهید انجام بدید با فاکس انجام بدید

  15. #15

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    دوست عزیز بنده فاکس پرو کارم اون چیزی که میخوام فقط دستورات Vb.net هستند نه Foxpro
    اگه میخواستم از فاکس پرو استفاده کنم نمیرفتم سراغ Vb.net
    قبلا هم عرض کردم که درحال نوشتن قفل نرم افزاری برای class هایم هستم که کسی نتونه از اونها استفاده کنه.
    بهرحال از راهنمایتون سپاسگزارم.

  16. #16
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    1,025

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    امید وارم موفق باشید
    منظورم این نبود که از فاکس استفاده کنید
    ولی به هر حال هر دستوری در vb یک معادلی در فاکس داره
    چون هر دو محصولات Microsoft هستند
    بازم امیدوارم موفق باشید

  17. #17
    مدیر بخش آواتار salehbagheri
    تاریخ عضویت
    خرداد 1386
    محل زندگی
    In Hearts
    سن
    32
    پست
    2,224

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    مي توني به اين روش عمل كني:

    Dim a As String = "Msgbox(""Test"")"
    If a = "Msgbox(""Test"")" Then
    MsgBox("Test")
    End If
    امیدم به دستان زیبای اوست . آنکه می آید . همان که نامش منجی ست ....

    به راستی اگر غرق نبودیم چرا مارا به منجی ای نیازمند کرده اند؟ ... دنیا دریاست ....

    دلنوشته های من


  18. #18

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    نقل قول نوشته شده توسط salehbagheri مشاهده تاپیک
    مي توني به اين روش عمل كني:

    Dim a As String = "Msgbox(""Test"")"
    If a = "Msgbox(""Test"")" Then
    MsgBox("Test")
    End If
    فکر خوبیه
    با اینکار حجم کلاسم خیلی بالا میره چون برای هر برنامه ای کلی دستور باید بنویسم.
    ای کاش میشد متغییری از نوع شی تعریف کرد(مثلن از نوع دستورات Vb) کار رو خیلی ساده میکنه.

    با سپاس از همه دوستان عزیز

  19. #19
    محروم شده
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    یزد
    سن
    31
    پست
    21

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    Dim a As String = "Msgbox(""Test"")"
    If a = "Msgbox(""Test"")" Then
    MsgBox("Test")
    End If
    ِبرنامه بالا دقیقاً چی کار می کنه ؟

  20. #20

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    نقل قول نوشته شده توسط pazis-flasher مشاهده تاپیک
    ِبرنامه بالا دقیقاً چی کار می کنه ؟
    سلام
    کد بالا میاد مقدار a رو چک میکنه شرط درست بود که هست (" MsgBox("Test رو اجرا میکنه

  21. #21
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    پست
    2,463

    نقل قول: سوال در مورد اجرا کردن محتوای متغییر رشته ای

    فکر کنم ایشون چیزی شبیه تابع eval در vba میخوان. eval تقریبا در همه زبانهای اسکریپتی هست چون پیاده سازیش راحت هست ولی در دات نت (مثل بقیه زبانها که کامپایل میشن) بصورت متعارف نیست و برای پیاده سازیش باید کامپایلر در حین اجرای برنامه اجرا بشه.

    احتمال میدم اگر vb.net eval رو گوگل کنین نمونه کد پیدا بشه!

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

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