الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال في برنامج

بدأه احلام النرجس في 23 سبتمبر 2009 · 12 رد · 1,049 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بغيت اعرف كيف افتح فايل اصله مثلا برنامج مثلا a.vbs

و انقل الكود ماله في تكست فايل نوت باد

علشان اقرأهم

ابغي اسوي هالخطوات ببرنامج بالسي

المشكلة عندي ما استخدمت هذه المكتبة

#include<dos.h>

بس ابغي مثال بسيط يوضح لي هذا الشي

#2

يعني المقصود هو نقل محتويات ملف مثلا a.vbs الى ملف عادي a.txt ؟

في هذه الحالة فاستخدم دوال القرائة والكتابة من الملفات .. وسوف تقرأ محتويات الملف الأول ومثلا تخزنه في مصفوفه ومن ثم تقوم بكتابته في الملف الثاني ..

راجع الفهرس في كيفية استخدام والتعامل مع دوال الملفات وستجد كم موضوع بهذا الخصوص ..

بالتوفيق ،

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#3
Wajdy Essam كتب:
يعني المقصود هو نقل محتويات ملف مثلا a.vbs الى ملف عادي a.txt ؟

في هذه الحالة فاستخدم دوال القرائة والكتابة من الملفات .. وسوف تقرأ محتويات الملف الأول ومثلا تخزنه في مصفوفه ومن ثم تقوم بكتابته في الملف الثاني ..

راجع الفهرس في كيفية استخدام والتعامل مع دوال الملفات وستجد كم موضوع بهذا الخصوص ..

بالتوفيق ،

شكراً لك اخي الكريم

لا اخي الكريم هذا الشيء اعرفه انا كنت ابغي اذا ضرب دبل كليلك على اي ملف vbs

يحول محتوياته كلها الى تكست فايل

هني كيف راح احدد هوية الملف اللي راح افتحه وانا ما اعرف اسمه

لأن هو اي ملف اراد المستخدم ان يفتحه

ضرب عليه كليك

بعدين خطوات نقل محتويات الملف راح تكون سهلة

هل استخدم vbs

في السي و شلون اقدر استخدمها داخل السي

تم تعديل هذه المشاركة بواسطة احلام النرجس في 23 سبتمبر 2009 في 15:23

#4

اذا المقصود عرض محتوى الملف ؟

طيب هل تريد فعل ذلك برمجيا ؟؟ لأنه من غير برمجة يمكتك فعلها ..

لديك أي ملف بأي امتداد أختر بالزر الأيمن فتح باستخدام واختر notepad ؟

أما اذا أردت أن تعرض الملف من خلال كود تقوم بكتابته ، فيمكنك كتابة برنامج يستقبل اسم الملف ومساره من سطر الأوامر ك Arguments للبرنامج ومن ثم فتح هذا الملف والقرائه منه والكتابة في ملف جديد ومن ثم تقوم بفتح الملف الجديد من خلال الnotepad وعند انتهاء البرنامج أغلق الملف الجديد وقم بحذفه ..

وهكذا اصبح لديك برنامج لعرض الملفات بشكل مبسط ، هذا كما فهمت من طلبك ،،

لكن شغله الدبل كليك هذه ليست بسيطة ، حيث يتوجب عليك كتابة برنامج يقوم بمراقبة أي عملية فتح لملف امتداده vbs ومن ثم تقوم بالعمليات التي تريدها .. فاذا كنت مبتدئ فابتعد عن هذا الخيار تماما :) .

ومن الأساس في ويندوز يمكنك عمل هذا كله بدون برمجة ..

اذا لم أفهم طلبك ، فبرجاء توضيحه مرة أخرى بشكل أوضح ،،

بالتوفيق ،

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#5
Wajdy Essam كتب:
ا

لكن شغله الدبل كليك هذه ليست بسيطة ، حيث يتوجب عليك كتابة برنامج يقوم بمراقبة أي عملية فتح لملف امتداده التي تريدها .. فاذا كنت مبتدئ فابتعد عن هذا الخيار تماما :) .

بالتوفيق ،

هذا اللي ابغيه الدبل كليك فكرت فيها كثير

هل ممكن استخدم في بي سكربت داخل كود من اكواد السي او اني اقدر اسوي برنامج في بي سكربت هو اللي يسوي شغله الدبل كليك و يفتح برنامج السي

و بالنسبة للملفات اذا قصدك على fstream and file pointers

هذا الشيء بسيط و اعرفه من زمان

انا مو مبتدأ بالعكس بس في بعض header libraries

ما استخدمتها نفس الدوس

و هذي اليبراري ممكن تفتح فولدرات

لأني راح اقدر استخدم اوامر الدوس

بس شفت انها ما تساعدني في شغلة دبل كليك

و انا ابغي اسوي هذا الشيء برمجيا لأن هذا عبارة عن مشروع بروجكت مطلوب مني اسويه

تم تعديل هذه المشاركة بواسطة احلام النرجس في 23 سبتمبر 2009 في 18:21

#6

لم يتضح بعد :) ..

أي امتداد في نظام الويندوز يكون مرتبط معه برنامج خاص لفتحه عند الضغط عليه Double Click أو كتابة اسمه من خلال سطر الأوامر أو من run أو بأي طريقة أخرى ..

ملفات vbs في الوضع الإفتراضي يتم تنفيذها مباشره عند فتحها أو Double Click ..

هل المطلوب هو فتح الملف vbs بالمفكرة notepad عند الضغط عليه double click ونتجاهل عملية تنفيذه نهائيا ؟؟

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#7
Wajdy Essam كتب:
لم يتضح بعد :) ..

أي امتداد في نظام الويندوز يكون مرتبط معه برنامج خاص لفتحه عند الضغط عليه Double Click أو كتابة اسمه من خلال سطر الأوامر أو من run أو بأي طريقة أخرى ..

ملفات vbs في الوضع الإفتراضي يتم تنفيذها مباشره عند فتحها أو Double Click ..

هل المطلوب هو فتح الملف vbs بالمفكرة notepad عند الضغط عليه double click ونتجاهل عملية تنفيذه نهائيا ؟؟

هذا عرفت اسويه بالدوس اني اذا ضربت دبل كليك على الملف ينسخ الملف في تكست فايل

بس اللي ابغيه اللحين كيف اذا ضربت دبل كليك عليه

يشغل الأيدوتر

و يفتح النوت باد

و مو شرط النوت باد اي برنامج

بس ببرنامج سي انا عامله

او اذا بغيت اسوي ايدوتر

كبرنامج بالسي

شلون

استحملني شوي اطلع من سؤال ادخل لك في الثاني

و شكرا اخوي

#8
اقتباس
هذا عرفت اسويه بالدوس اني اذا ضربت دبل كليك على الملف ينسخ الملف في تكست فايل

بس اللي ابغيه اللحين كيف اذا ضربت دبل كليك عليه

يشغل الأيدوتر

صراحة حاولت فهم العباره ولكن لم استطيع ..

على العموم التعليمة system يمكنك أن ترسل لها أي أمر وهي تنفذه .. أرسل له مسار النوت باد لكي يفتح .. واذا أردت أن يقرا ملف النوت باد أي ملف أرسله كمعامل ثاني .

شاهد المثال :

 

 

[color= #007f00;]#include <iostream>

[color= #0000ff;]using [color= #0000ff;]namespace std ;

 

[color= #0000ff;]int main [color= #000000;]([color= #000000;]) [color= #000000;]{

    [color= #007f00;]// open new text in notepda

    system[color= #000000;]([color= #A31515;]"c:[color= #A31515; font-weight: bold;]windows[color= #A31515; font-weight: bold;]system32[color= #A31515; font-weight: bold;]notepad.exe"[color= #000000;]);

 

    [color= #007f00;]// open file a.txt in current folder

    system[color= #000000;]([color= #A31515;]"c:[color= #A31515; font-weight: bold;]windows[color= #A31515; font-weight: bold;]system32[color= #A31515; font-weight: bold;]notepad.exe a.txt"[color= #000000;]);

 

    system[color= #000000;]([color= #A31515;]"pause"[color= #000000;]);

[color= #000000;]}

مره أخرى رجاء التوضيح بمثال اذا لم يكن هذا ما تريده.. حدد المدخل والمخرج للبرنامج الذي تريده حتى نفهم ما المطلوب بالضبط ..

بالتوفيق ،

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#9

حاولت استخدام هذه الدالة system من قبل لكن لم استفد منها فظهرت لي اخطاء مفادها ان الدالة غير معرفة اصلا في المكتبة iostream.h و ذلك لأني استخدم البورلاند سي و ليس الفيجوال سي بلس بلس

انا عرفت الحل للمشكل الأول و لكن اريد الآن ان اعمل برنامج بحيث يكون المخرج له

محرر نصوص

و اردت ان اسئل عن هذه المكتبة حيث بحثت عنها ولم اجد اي شيء عنها وهي موجودة بملف

include

#include<owl/editfile.h>

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

و ارجو ان اجد لديك حلا

تم تعديل هذه المشاركة بواسطة احلام النرجس في 23 سبتمبر 2009 في 21:47

#10

اذا المترجم قديم :

#include <stdlib.h>

أو:

#include <cstdlib>

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

#11

السلام عليكم ورحمة الله وبركاته

كيف الحال أحلام النرجس

كل الي تحتاجه هو استخدام مكتبة

fstream

والكود التالي عباره عن برنامج يطلب من المستخدم اسم الملف الهدف واسم الملف المخرج لوضع محتوى الملف الهدف في الملف المخرج وشكرا

#include <iostream>
#include <fstream>
#include <string>
#include <conio.h>

using namespace std;

int main () {	
	string line;	
	string filepath;
	string destination;

	cout << "Enter file path: ";
	getline(cin, filepath);

	cout << "Enter destenation file path: ";
	getline(cin, destination);


	ifstream readfile(filepath.c_str());
	ofstream outputfile(destination.c_str());

	if(readfile.is_open() && outputfile.is_open())
		while(! readfile.eof())
		{
				getline(readfile, line);
				outputfile << line << endl;
		}
	readfile.close();
	outputfile.close();

	cout << "Have a nice day!" << endl;
	getch();

	return 0;
}
#12
Robatic كتب:
السلام عليكم ورحمة الله وبركاته

كيف الحال أحلام النرجس

كل الي تحتاجه هو استخدام مكتبة

fstream

والكود التالي عباره عن برنامج يطلب من المستخدم اسم الملف الهدف واسم الملف المخرج لوضع محتوى الملف الهدف في الملف المخرج وشكرا

#include <iostream>
#include <fstream>
#include <string>
#include <conio.h>

using namespace std;

int main () {	
	string line;	
	string filepath;
	string destination;

	cout << "Enter file path: ";
	getline(cin, filepath);

	cout << "Enter destenation file path: ";
	getline(cin, destination);


	ifstream readfile(filepath.c_str());
	ofstream outputfile(destination.c_str());

	if(readfile.is_open() && outputfile.is_open())
		while(! readfile.eof())
		{
				getline(readfile, line);
				outputfile << line << endl;
		}
	readfile.close();
	outputfile.close();

	cout << "Have a nice day!" << endl;
	getch();

	return 0;
}

ليس هذا ما اريد و قد نوهت لذلك

انا اريد ان اعمل برنامج مثل برنامج محرر النصوص

بس بلغة السي على العموم شكرا لك اخي

تم تعديل هذه المشاركة بواسطة احلام النرجس في 23 سبتمبر 2009 في 22:12

#13
Wajdy Essam كتب:
اذا المترجم قديم :

#include <stdlib.h>

أو:

#include <cstdlib>

اخي الكريم هناك فقط مكتبة واحدة التي تعمل هي الأولى ولكن لا تتعرف على هذه الدالة هذه الدالة كنت استطيع ان استخدمها

في برنامج الفيدورا للينكس كوماند

اذا كنت ابغي اسوي برنامج بالسي وتعمل ولكنها في البورلاند غير معرفة ولا تعمل ولا ادري لما

انا اردت استخدامها هنا حتى اكون قادرة على استخدام اوامر الدوس

كتجربة و لكنني اريد ان

يكون المخرج هو عبارة عن محرر نصوص

اقوم بعمله بلغة السي

و اكون قادرة على ان اعمل له حفظ

و حفظ بأسم

و الخ من خواص محرر النصوص

مواضيع مشابهة