PDA

View Full Version : سوال: لینک کردن دو تا برنامه مجزا



zmirsafi
یک شنبه 23 تیر 1392, 00:46 صبح
سلام.خسته نباشید دوستان
من دو تا برنامه دارم که هر دوش رو تو ویژوال بیسیک نوشتم و میخوام تو برنامه اصلیم از یه قسمتی به بعدش برنامه فرعی رو جا بدم. ممنون میشم راهنماییم کنید که چجوری اینکارو بکنم

m.4.r.m
یک شنبه 23 تیر 1392, 01:02 صبح
جا بدی یعنی چی ؟ مگه مهره و پیچ می بندی که جا بدی ؟ واضح سوال رو بیان کن و الا کسی جواب نمیده

SlowCode
یک شنبه 23 تیر 1392, 02:30 صبح
فکر کنم منظور شما همون shell کردن برنامه باشه.
شاید setparent هم مشکلت رو حل کنه!
دوستمون درست میگن سوالت واضح نیست.

zmirsafi
یک شنبه 23 تیر 1392, 09:39 صبح
جا بدی یعنی چی ؟ مگه مهره و پیچ می بندی که جا بدی ؟ واضح سوال رو بیان کن و الا کسی جواب نمیده
ممنونم
منظورم اینه که من یه برنامه دارم که تو این برنامه یه سری محاسبات با یه فرمولهای خاصی انجام میشه.حالا من نمیخوام از یکی از این فرمولها برای محاسبه یکی از پارامترهام استفاده کنم و به جای اون فرمول یه برنامه نوشتم که از طریق اون برنامه پارامترو محاسبه کنم.
امکانش هست که بتونم اون برنامه و خروجیشو به برنامه اصلی لینک کنم؟؟؟
نمیدونم تونستم واضح بیان کنم یانه

vbhamed
یک شنبه 23 تیر 1392, 13:15 عصر
سلام
برنامه اصليتون چيه ؟ مي‌تونيد اينجا بزارينش ؟ سورسش رو دارين ؟ خروجيش چيه ؟
بايد قابليت اينكار براش تعبيه شده باشه وگرنه نميشه محاسبات داخلي يك برنامه رو تغيير داد مگر با روشهاي خاص ك.رك و ...
براي اينكه بتونيد پاسخ درست بگيريد بايد اطلاعات درست هم بدين

m.4.r.m
یک شنبه 23 تیر 1392, 13:38 عصر
اون یارو بود تو دیوار نوشته بود خدا چهار چیز را در چهار چیز قرار داده است . الان شده مثال شما دوست عزیز منظور از اینکه واضح بیان کن یعنی پارامتر هارو اشاره کن خروجی رو نشون بده نه اینکه 1 سطر به توضیح قبلیت اضافه کن و ادامه مطلب درست کنی تا واضح بیان نکنی و خواسته های برنامه شما و نوع ورودی و خروجی نوع ارتباط با برنامه ثانوی شما معلوم نشه چه جوری اخه کمک کنیم ؟

zmirsafi
دوشنبه 24 تیر 1392, 10:13 صبح
سلام.بازم ممنون
کد برنامه رو ندارم ولی خروجیش به شکل زیر هستش
teta(cm^3/cm^3) k(m/s)
0.4003 1.80219392107183E-21
0.4004 3.778409150317E-21
0.4005 5.94498313195007E-21
0.4006 8.6929328815394E-21
0.4007 1.2093330007487E-20
0.4008 1.62226474484841E-20
0.4009 2.11630053257204E-20
0.401 2.70024218582783E-20
0.4011 3.38350693307564E-20
0.4012 4.17615351022402E-20
0.4013 5.08890876458093E-20
0.4014 6.13319476078532E-20
0.4015 7.3211563876541E-20
0.4016 8.66568946488743E-20
0.4017 1.01804693485833E-19
0.4018 1.18799800345211E-19
0.4415 6.08270631688492E-14
0.4416 6.16270793039702E-14
0.4417 6.24358324360743E-14
0.4418 6.32533988160573E-14
0.4419 6.40798551984739E-14
0.442 6.49152788438825E-14
0.4421 6.57597475211969E-14
0.4422 6.66133395100459E-14
0.4423 6.74761336031404E-14
0.4424 6.83482091086482E-14
0.4425 6.92296458525761E-14
0.4426 7.01205241811604E-14
0.4427 7.10209249632641E-14
0.4428 7.19309295927833E-14
0.4429 7.28506199910596E-14
0.443 7.37800786093018E-14
0.4431 7.47193884310147E-14
0.4432 7.56686329744358E-14
0.4433 7.66278962949799E-14
0.4434 7.75972629876919E-14
0.4435 7.85768181897072E-14
0.4436 7.95666475827203E-14
0.4437 8.05668373954609E-14
0.4438 8.1577474406179E-14
0.4439 8.25986459451371E-14
0.444 8.36304398971109E-14
0.4441 8.46729447038982E-14
0.4442 8.57262493668355E-14
0.4443 8.67904434493237E-14
0.4444 8.78656170793607E-14
0.4445 8.89518609520835E-14
0.4446 9.00492663323177E-14
0.4447 9.11579250571356E-14
0.4448 9.22779295384229E-14
0.4449 9.34093727654531E-14
0.445 9.4552348307471E-14
0.4451 9.57069503162841E-14
0.4452 9.68732735288629E-14
0.4453 9.80514132699491E-14
0.4454 9.92414654546728E-14
0.4455 1.00443526591179E-13
0.4456 1.01657693783259E-13
0.4457 1.02884064732997E-13
0.4458 1.04122737743418E-13
0.4459 1.05373811721153E-13
0.446 1.066373861791E-13
0.4461 1.0791356123911E-13
0.4462 1.09202437634666E-13
0.4463 1.10504116713583E-13
0.4464 1.11818700440712E-13
0.4465 1.1314629140065E-13
0.4466 1.14486992800464E-13
0.4467 1.1584090847242E-13
0.4468 1.17208142876726E-13
0.4469 1.18588801104276E-13
0.447 1.19982988879413E-13
0.4471 1.21390812562692E-13
0.4472 1.22812379153658E-13
0.4473 1.24247796293629E-13
0.4474 1.25697172268495E-13
0.4475 1.27160616011516E-13
0.4476 1.28638237106138E-13
0.4477 1.30130145788817E-13
0.4478 1.31636452951845E-13
0.4479 1.33157270146197E-13
0.448 1.34692709584376E-13
0.4481 1.36242884143277E-13
0.4482 1.37807907367053E-13
0.4483 1.39387893469996E-13
0.4484 1.40982957339426E-13
0.4485 1.42593214538586E-13
0.4486 1.44218781309551E-13
0.4487 1.45859774576145E-13
0.4488 1.47516311946871E-13
0.4489 1.49188511717842E-13
0.449 1.50876492875732E-13
0.4491 1.52580375100732E-13
0.4492 1.54300278769512E-13
0.4493 1.56036324958205E-13
0.4494 1.57788635445383E-13
0.4495 1.59557332715064E-13
0.4496 1.61342539959708E-13
0.4497 1.63144381083241E-13
0.4498 1.64962980704076E-13
0.4499 1.66798464158152E-13
0.45 1.68650957501981E-13
0.4501 1.70520587515704E-13
0.4502 1.72407481706157E-13
0.4503 1.74311768309951E-13
0.4504 1.76233576296557E-13
0.4505 1.78173035371408E-13
0.4506 1.80130275979003E-13
0.4507 1.8210542930603E-13
0.4508 1.84098627284495E-13
0.4509 1.86110002594859E-13
0.451 1.88139688669195E-13
0.4511 1.90187819694344E-13
0.4512 1.92254530615089E-13
0.4513 1.94339957137339E-13
0.4514 1.96444235731324E-13
0.4515 1.98567503634794E-13
0.4516 2.00709898856243E-13
0.4517 2.02871560178127E-13
0.4518 2.05052627160107E-13
0.4519 2.07253240142296E-13
0.452 2.09473540248518E-13
0.4521 2.1171366938958E-13
0.4522 2.13973770266552E-13
0.4523 2.16253986374061E-13
0.4524 2.18554462003594E-13
0.4525 2.20875342246816E-13
0.4526 2.23216772998897E-13
0.4527 2.25578900961846E-13
0.4528 2.27961873647866E-13
0.4529 2.30365839382713E-13
0.453 2.32790947309067E-13
0.4531 2.35237347389919E-13
0.4532 2.37705190411968E-13
0.4533 2.40194627989025E-13
0.4534 2.42705812565435E-13
0.4535 2.45238897419508E-13
0.4536 2.4779403666696E-13
0.4537 2.50371385264373E-13
0.4538 2.52971099012657E-13
0.4539 2.55593334560528E-13
0.454 2.58238249408006E-13
0.4541 2.60906001909911E-13
0.4542 2.6359675127938E-13
0.4543 2.66310657591398E-13
0.4544 2.69047881786331E-13
0.4545 2.71808585673485E-13
0.4546 2.74592931934665E-13
0.4547 2.77401084127753E-13
0.4548 2.80233206690301E-13
0.4549 2.83089464943125E-13
0.455 2.85970025093928E-13
0.4551 2.88875054240919E-13
0.4552 2.91804720376459E-13
0.4553 2.94759192390708E-13
0.4554 2.97738640075294E-13
0.4555 3.00743234126988E-13
65E-13
0.4604 4.82583345804639E-13
0.4605 4.87084019582098E-13
0.4606 4.91619835908628E-13
0.4607 4.96191017955505E-13
0.4608 5.0079779001404E-13
0.4609 5.05440377500043E-13
0.461 5.10119006958303E-13
0.4611 5.14833906067083E-13
0.4612 5.19585303642637E-13
0.4613 5.24373429643734E-13
0.4614 5.29198515176208E-13
0.4615 5.34060792497522E-13
0.4616 5.38960495021342E-13
0.4617 5.43897857322144E-13
0.4618 5.48873115139817E-13
0.4619 5.53886505384304E-13
0.462 5.58938266140244E-13
0.4621 5.6402863667164E-13
0.4622 5.69157857426541E-13
0.4623 5.74326170041745E-13
0.4624 5.79533817347515E-13
0.4625 5.84781043372314E-13
0.4626 5.9006809334756E-13
0.4627 5.95395213712399E-13
0.4628 6.00762652118488E-13
0.4629 6.06170657434809E-13
0.463 6.11619479752488E-13
0.4631 6.17109370389643E-13
0.4632 6.22640581896241E-13
0.4633 6.28213368058983E-13
0.4634 6.33827983906195E-13
0.4635 6.39484685712752E-13
0.4636 6.45183731005007E-13
0.4637 6.50925378565747E-13
0.4638 6.56709888439166E-13
0.4639 6.62537521935855E-13
0.464 6.68408541637815E-13
0.4641 6.7432321140348E-13
0.4642 6.80281796372771E-13
0.4643 6.86284562972161E-13
5864 1.19293704527164E-09
0.5865 1.20807792731556E-09
0.5866 1.2237110782454E-09
0.5867 1.2398711100272E-09
0.5868 1.25659669129274E-09
0.5869 1.27393123512118E-09
0.587 1.29192374320313E-09
0.5871 1.31062985195487E-09
0.5872 1.33011314267086E-09
0.5873 1.35044680162631E-09
0.5874 1.37171575105087E-09
0.5875 1.39401942442754E-09
0.5876 1.4174754402628E-09
0.5877 1.44222455571579E-09
0.5878 1.46843748818136E-09
0.5879 1.49632454034136E-09
0.588 1.52614957151815E-09
0.5881 1.55825096971396E-09
0.5882 1.59307442704107E-09
0.5883 1.63122675561588E-09
0.5884 1.6735699079849E-09
0.5885 1.7213990034031E-09
0.5886 1.77681823511766E-09
0.5887 1.84366974436339E-09
0.5888 1.93048457745953E-09
0.5889 2.06586224416591E-09


حالا من میخام بین خروجی های این برنامه رگرسیون خطی بزنم(بین پارامترهای k و teta)
که البته واسه رگرسیون هم کدشو نوشتم ولی نمیدونم با چه دستوری میتونم از خروجی های اون برنامه استفاده کنم.ممنون میشم راهنماییم کنید
البته اینم بگم که میخام از خود برنامه باشه چون در هربار ران کردن برنامه ورودیهاش عوض میشه و مسلما واسه شرایط مختلف خروجی هاش هم متفاوت خواهند بود.
نمیخام بطور مستقیم از فایل تکست خروجی استفاده کنم.میخام برنامه ران شه و بعد از خروجیش استفاده کنم.
بازم نمیدونم منظورمو متوجه شدین یانه:(

m.4.r.m
دوشنبه 24 تیر 1392, 11:49 صبح
خوب شما می تونی همزمان که برنامه اجرا شد برنامه دوم را نیز اجرا کنید و در ان لحظه خروجی را بگیرید و در داخل فایل txt بریزید و با برنامه دوم خودتان از خروجی استفاده کنید

zmirsafi
دوشنبه 24 تیر 1392, 12:50 عصر
خوب شما می تونی همزمان که برنامه اجرا شد برنامه دوم را نیز اجرا کنید و در ان لحظه خروجی را بگیرید و در داخل فایل txt بریزید و با برنامه دوم خودتان از خروجی استفاده کنید

ممنونم
مشکل من اینه که نمیدونم با چه دستوری باید از خروجی ها استفاده کنم؟یعنی چجوری از فایل تکست این همه داده رو بخونم و روش برنامه بعدی رو اجرا کنم؟

vbhamed
سه شنبه 25 تیر 1392, 14:08 عصر
سلام
ميشه برنامتون رو بزاريد تا بررسي بشه ؟
تحت داس هست يا ويندوز ؟

zmirsafi
سه شنبه 25 تیر 1392, 18:47 عصر
سلام.ممنونم. تحت ویندوز هستش. و در بالا هم اشاره کردم که خروجیش به چه شکل هست.من فقط دستوری میخوام که بشه از این داده ها استفاده کرد. چجوری باید واسه رگرسیون گیری این داده ها رو خوند؟؟؟؟

m.4.r.m
چهارشنبه 26 تیر 1392, 01:30 صبح
شما اون فایل های رو برای محاسبه رگرسیون در فایل تکست همراه برنامه بریزید و نام فایل رو هم بزارید File.txt و با این دستور اطلاعات فایل رو بریزید داخل تکست باکس

Private Sub Command2_Click()
Dim fs As New FileSystemObject
Dim rfile As TextStream
Dim TempS

Set rfile = fs.OpenTextFile(App.Path & "\File.txt", ForReading)
Text2.Text = rfile.ReadAll

Do Until rfile.AtEndOfStream
TempS = rfile.ReadLine
Text2.Text = Text2.Text & TempS & vbCrLf
Loop
rfile.Close

End Sub


از رفرنس ها هم Microsoft Script Runtime رو فعال کن .و بعدش می تونی آرایه ها رو در قسمت همون کد رگرسیون با محتوای فایل قرار بدی و رگرسیون بگیری همین

این قسمت :

Sub Main()
Dim cn As Integer
Dim strResults As String
Dim Test(0 To 100) As Double
Dim Results(0 To 100) As Double

Test(0)=0.26
Test(1)=0.2621
Test(2)=0.145

Call LinearRegression(Test, Results)
strResults = "Slope: " & Results(1) & vbCrLf & _
"Intercept: " & Results(2) & vbCrLf & _
"Forecast: " & Results(3) & vbCrLf & _
"R-Squared: " & Results(4)
MsgBox strResults, vbInformation, "Linear Regression"
End Sub


شما باید به جای Test(0) تا Test(2) آرایه Test(0 to 100) رو با حلقه For با اعداد داخل تکست باکس که از فایل خوندی رو پر کنی