এক MT4 ক্লায়েন্ট থেকে অন্য তথ্য পাস - পৃষ্ঠা 2

Thread: এক MT4 ক্লায়েন্ট থেকে অন্য তথ্য পাস

  1. #11
    পোস্ট রয়স এর জন্য ধন্যবাদ .. এটা আমার মনে হয় যে আপনি কেবল লুপটি ধরে রাখতে পারেন এবং এটি ঘুমাতে পারেন, যে কোনও উপায়ে এটি ঘুরে বেড়ায়। কেন্ আপনি অবশ্যই C # এ এটি করতে পারেন, তবে আমি কেন নিশ্চিত হতে চাই না যে আপনি যদি চান তবে এটি পরিবর্তন করতে চান না এবং যদি আপনি এটি করতে চান তবে এটি আপনার কাছে কী প্রয়োজন তা স্পষ্ট হবে। আমি বেশ কয়েক বছর ধরে সি-তে কোডেড ছিলাম এবং বেশিরভাগ কারণে বেশিরভাগ কারণেই আপনি ডেলফিতে কিছু করতে পারেন যা সি (সমস্ত বার ভার্চুয়াল ডিভাইস ড্রাইভার) এ করা যেতে পারে। ডেলফি প্রচুর পরিমাণে উপাদানবস্তু সেট সরবরাহ করে। এটি অনেক বেশি পঠনযোগ্য হওয়ার পরে বাগগুলির চেয়ে কম প্রবণতা এবং কম্পিউলার আপনাকে রুটিন থেকে সর্বাধিক গতি পেতে হলে ইনলাইন সমাবেশ কোড লিখতে দেয়। যদি আপনার নরকটি এটি রূপান্তরিত করার দিকে তাকাতে থাকে তবে: সমস্ত উইন্ডোজ ফাংশন user32.dll থেকে আপনাকে আপনার নিজের TStringList ক্লাসটি তৈরি করতে হবে যা কেবল একটি লিঙ্কযুক্ত তালিকা বস্তু যা স্ট্রিংগুলি সঞ্চয় করে (যতক্ষণ আমি সচেতন সি এখনও এমন মৌলিক সরবরাহ সরবরাহ করি না কিন্তু মান হিসাবে অত্যন্ত দরকারী ক্লাস) অথবা আপনি একটি গতিশীল অ্যারের সঙ্গে আপনার নিজের স্ট্রিং হ্যান্ডলিং বাস্তবায়ন করতে পারে।

  2. #12

    Quote Originally Posted by ;
    আপনি সরাসরি DLL এর মধ্যে একটি ভাগ করা মেমরি স্থান তৈরি করতে সক্ষম হবেন না। DLLs একে অপরের সাথে কথা বলতে অনেক উপায় আছে। এটি যদি আপনি দুইটি উপায় coms চান বা না, এবং কত ঘন ঘন তারা কথোপকথন প্রয়োজন প্রয়োজন সত্যিই নির্ভর করে। সবচেয়ে সহজ পদ্ধতিগুলির মধ্যে রয়েছে: 1) টিসিপি বা অন্যান্য প্রোটোকলের মাধ্যমে কথা বলতে DLL এর মধ্যে খোলা সকেটগুলি। (সম্ভবত সহজতর এবং MT4 অ্যাপ্লিকেশনগুলি ল্যান বা ইনয়েটের বিভিন্ন মেশিনে থাকলে MT4 অ্যাপ্লিকেশনগুলি) 2) একটি MT4 ব্যবহার করুন এমন একটি DLL ব্যবহার করুন যা একটি 'সহায়ক' উইন্ডো (দৃশ্যমান বা অদৃশ্য) তৈরি করে এবং তারপর SendMessage ব্যবহার করে সরাসরি WM_COPYDATA বার্তাগুলি প্রয়োগ করে সরাসরি MT4 থেকে বা অন্য DLL থেকে। যদি এটি আপনার বাইরে থাকে তবে আপনি যদি খুব ঘন ঘন স্থানান্তর না করেন তবে ডেটা ফাইলগুলি ব্যবহার করতে আপনি ডিস্ক ফাইলগুলি ব্যবহার করতে পারেন, আপনি কেবল একটি সেফফোর প্রক্রিয়া হিসাবে আনসিলারি ফাইলগুলি ব্যবহার করতে হবে। আবার এটি সত্যিই আপনি communie চেষ্টা করছেন কিভাবে উপর নির্ভর করে কিন্তু এই একটি EA (একটি আদিবাসী নয়) ভিতরে কাজ করা উচিত। (তবে আপনাকে উইন্ডোজ এপিআই ফাইল ফাংশনগুলি ব্যবহার করতে হবে কারণ যতদূর আমি জানি যে MT4 তার নিজস্ব ডিরেক্টরি কাঠামোর বাইরে লেখা বা পড়বে না) 'Datafile.txt' এ আপনার ডেটা 'app1lock.txt' রয়েছে ... ডামি লক ফাইল ' অ্যাপ 2lock.txt '... এমটি 4 অ্যাপের স্টার্টআপের আগে ডামি লক ফাইলটি নিশ্চিত করুন যে কোনও ফাইল বিদ্যমান নেই App1 ... যদি app2lock.txt বিদ্যমান না থাকে তবে {App file1lock.txt//ফাইলটি তৈরি করুন এই মুহুর্তে এটিই সম্ভব যে উভয় অ্যাপ্লিকেশনগুলি প্রায় লক হয়ে গেছে একসাথে অপেক্ষা করুন এবং আবার ঘুম পরীক্ষা (1000);/app2lock.txt টি অস্তিত্ব না থাকলে/দ্বিতীয়টি অপেক্ষা করুন {createmodifyread 'datafile.txt'} অন্যথায় ফ্ল্যাগ করুন যা ফাইলটি 'app1lock.txt' মুছে ফেলার মাধ্যমে পরের বার পুনরায় চালু করতে হবে} App2 ... যদি app1lock.txt করে বিদ্যমান নেই {appliion file2lock.txt ঘুম (1500) তৈরি করুন যদি app1lock.txt উপস্থিত না হয় {createmodifyread 'datafile.txt' পড়তে}} আর ফাইলটি 'app2lock.txt' মুছুন পরবর্তী ফাইলের জন্য ফ্ল্যাগেট করুন}
    MT4 এর নতুন সংস্করণগুলির সাথে যদি আপনি জানেন, তারা এখন তাদের নিজস্ব ডিরেক্টরি বাইরে TXT ফাইলগুলি পড়তেলিখতে পারে? আমি আপনার কথা কি মত কিছু করতে চাই। আপনাকে ধন্যবাদ সম্পাদনা করুন: আমি একটি ছোট লুপিং DOS ব্যাচ ফাইল তৈরি করেছি যা একটি ফাইলকে অন্য ডিরেক্টরিতে থেকে অনুলিপি করবে কিন্তু সঠিক মক 4 কোডটি আমাকে কীভাবে তৈরি করতে হবে এবং কিছু শর্ত পূরণ করার সময় ফাইলটি পড়তে হবে? ধন্যবাদ এখানে আগ্রহী হলে ব্যাচ ফাইল; : লুপ xcopy গ: \ temp \ test.csv c: \ temp2 del c: \ temp \ test.csv goto: loop

  3. #13
    আমি জানি আমি বললাম আমি আর পোস্ট করবো না, কিন্তু আমি সম্পূর্ণ আবদ্ধ। এই সপ্তাহান্তে এই সমস্যার খোঁজে আমি প্রায় ২0 ঘন্টা নষ্ট হয়েছি, এবং অসহায় বোধ করছি। আমার সমস্যাগুলি হল আমার কাছে ভিজুয়াল সি বা ভি ভি আই ডে সি সি নেই, কিন্তু একটি DLL তৈরি করতে MingW ব্যবহার করবেন না জানি না আমি MT4 টার্মিনালগুলির মধ্যে যোগাযোগের জন্য একটি DLL এ আমার প্রচেষ্টা সংযুক্ত করছি । ধারণা Win32 পরিবেশ ভেরিয়েবল একটি semaphore এবং যুক্তি পাসার ব্যবহার করা হয়। COMMAND_SENT পরিবর্তনশীল একটি সেফফোর, এবং অপারেশন তথ্য বিনিময় করার জন্য ব্যবহার করা হয়। অনুগ্রহ করে .... আমি এই সমস্ত ঘন্টা DLLs দিয়ে নষ্ট করতে পারব না ..../copy.cpp # অন্তর্ভুক্ত lt; windows.hgt; # অন্তর্ভুক্ত lt; stringgt; # অন্তর্ভুক্ত lt; cstdlibgt; এক্সটার্নাল সি {////////////////////////////////////////////////////////ব্রোকার এটিকে একটি নতুন টাস্ক সংকেত দেওয়ার জন্য এটি কল করে (এটি মিথ্যা ভুলচেক কম্যান্ড (...), অতএব, সেফফোর।) অকার্যকর উইনপিআই কমান্ডসেন্ট (অকার্যকর) {int success = 0 ; যখন (! সাফল্য) সাফল্য = putenv (COMMAND_SENT = 1); }///////////////////////////////////////////////////////ব্রোকার B এটির ক্রিয়াকলাপটি সম্পন্ন করার পরে এটি কল করে (এটি মিথ্যাতে সেট করে, দালালকে জানিয়ে দেয় যে পূর্ববর্তী ক্রিয়াকলাপটি সম্পন্ন হয় তা জানার জন্য) WINAPI কমান্ড এক্সটেনশেড (অকার্যকর) {int সাফল্য = 0; যখন (! সাফল্য) সাফল্য = putenv (COMMAND_SENT = 0); }////////////////////////////////////////////////////////ব্রোকার এগুলি নতুন কাজগুলির জন্য চেক করার জন্য কল করুন/ব্রোকার বি এটি পূর্ববর্তী কার্যকলাপ স্ট্রিংটি যাচাই করার জন্য কল করে WINAPI চেক কম্যান্ড (বাতিল) {return getenv (COMMAND_SENT); }///////////////////////////////////////////////////////ওপেন অর্ডার ফর্ম্যাট: B_001_45_115/বন্ধ অর্ডার ফর্ম্যাট: C_001_______ বাতিল উইনপিআই সেটঅপারেশন (স্ট্রিং সেপ, স্ট্রিং টিকেট, স্ট্রিং স্টপ, স্ট্রিং টিপি) {int সাফল্য = 0; স্ট্রিং গুলি = অপারেশন = op _ টিকেট _ স্টপ _ টিপি; গৃহস্থালি * এক্স = নতুন গৃহস্থালি [21]; strcpy (এক্স, s.c_str ()); যখন (! সাফল্য) Putenv (এক্স); মুছে ফেলুন [] এক্স; }/////////////////////////////////////////////////////স্ট্রিং উইনপিআই চেকঅপারেশন (অকার্যকর) {return getenv (অপারেশন); }/////////////////////////////////////////////////////} আপনি সাহায্য করতে পারেন তাহলে পরামর্শ বা PM আমাকে পোস্ট করুন! ধন্যবাদ!

  4. #14
    আজ রাতে আমি আবিষ্কার করেছি যে kernal32.dll এর মধ্যে কিছু পরিবেশ পরিবর্তনশীল গেট্টার এবং সেট্টার রয়েছে। তাই (তত্ত্বে) আমি আমার MQ4 কোডে kernal32.dll আমদানি করতে পারি এবং তারপরে সেই ফাংশনগুলিকে কল করতে পারি। আমি MQ4 এর স্ট্যান্ডার্ড স্ট্রিং ডেটাটাইপের পরিবর্তে অক্ষরের অ্যারেতে একটি পয়েন্টার ফিরিয়ে নিয়ে চিন্তিত। এখানে একটি লিঙ্ক আমি পড়ছিলাম:
    http://babek.info/libertybasicfiles/.../nl126/api.htmতোমরা কি ভাবো? কাহারো কি এটির সাথে অভিজ্ঞতা আছে?

  5. #15
    Tdion: আমি আপনি # 7 মধ্যে পরিসীমা দ্বারা সরবরাহিত চ্যাট ব্যবহার করবেন না কেন জানতে আগ্রহী ... ??? ধন্যবাদ, কেন (পিএসঃ আরবি: আমি সি # এ চেয়েছিলাম কারণ আমি NinjaTrader তে কাজ করছি)।

  6. #16
    Tdion: কেন Kenz প্রস্তাব DLL ব্যবহার না কেন সুপারিশ? আমি উৎস সরবরাহ করেছি এবং DLL সংকলন হিসাবে কম্পাইল করেছি .... আপনি কোনও উপায়ে এটি ব্যবহার করতে পারেন এমনকি যদি এটি একটি সেললেবল সিস্টেমে শেষ হয় ... আমি আপনার গাধার বিরুদ্ধে মামলা করতে চাই না! অথবা সম্পত্তি অধিকার দাবি। আপনার DLL কোড হিসাবে আমি আপনার সঠিক সমস্যা কি নিশ্চিত না? আপনি একটি Callable DLL কম্পাইল করতে পারেন? কোডলজিক ইচ্ছা হিসাবে সম্পাদন না? প্রথম নজরে আমি আপনার egy একটি ত্রুটি দেখতে পারেন। আমি উইন্ডোজ ফাংশন পেতে এবং পরিবেশগত ওয়ার সেট করতে দ্বিধান্বিত হচ্ছি (খুব কয়েকটি উইনাপি ফাংশন আছে) এটি পাঠ্য ফাইলের উদাহরণে যেমন সমস্যা দেখা দেয় - একইভাবে - যেহেতু আপনার দুটি স্বতন্ত্র প্রক্রিয়া একই লোশন পরীক্ষা করে এবং সংশোধন করছে তা সম্পূর্ণরূপে সম্ভাব্য একটি প্রক্রিয়া অন্য অ্যাপ্লিকেশন চেকসেট যখন varপরীক্ষণ সেটিং মাধ্যমে partway হতে পারে। প্রতিষ্ঠিত multitasking ওএস সেমফোর প্রক্রিয়া ব্যবহার করে এই সম্ভাবনা ঘটতে পারে। কেঞ্জ: ঠিক আছে। এটা আমার todo তালিকা হয়েছে, যদিও আমি নিনজা ব্যবসায়ী ব্যবহার করা হয়নি। (এটি ফিউচারস পণ্যে একটি বোল্ট যার সাথে আমি একটি খোলার খোলার চেষ্টা করছি) এনটি সম্পর্কে আমি যে তথ্যটি জানি তা হলো এটিতে এটি সি সিনট্যাক্স ব্যবহার করে। আমি লাইন বরাবর কোথাও কোথাও সি সি কিছু সিনট্যাক্স পার্থক্য হতে হবে অনুমান। DLL কলিং কোন সমস্যা না হলে আপনি ডেলফি কোডটি পোর্ট করতে সক্ষম হবেন। আপনাকে নিম্নলিখিতগুলির মধ্যে একটিতে অন্তর্ভুক্ত করা উচিত: (যদিও আপনাকে sendmessageA ব্যবহার করার প্রয়োজন হয় তবে প্রেরণযোগ্য বার্তা ইত্যাদি) winuser.h windows.h। আপনাকে এখনও স্ট্রিংলিস্ট ক্লাসটি 'পুনরায় চালু করতে হবে' তবে এটি ব্যবহার করেও অর্জন করা যেতে পারে একটি স্ট্যাটিক আকারের (বড় যথেষ্ট) স্ট্রিংগুলির অ্যারে এবং তারপরে কেবল gmsg ফাংশনের মধ্যে অ্যারেকে স্ট্রিংগুলি আলাদা করে। যতক্ষণ DLL আমদানিকল NT তে পাওয়া যায় ততক্ষণ আপনি এখনও সরবরাহকৃত ডেলফি DLL ব্যবহার করতে পারেন। আমি আপনার সবচেয়ে বড় (সম্ভাব্য) সমস্যা NinjaT মধ্যে একটি উইন্ডো হ্যান্ডেল পেয়ে অনুমান? যদি এটি আপনার একমাত্র সমস্যা হয় তবে আপনার যদি C # বা ভিজ্যুয়াল স্টুডিও থাকে তবে আপনি ডেলফি ডিএলএলটি পরীক্ষাচেষ্টা করতে পারেন তবে স্পাই বা তার 'স্টুডিও। নেট' সমতুল্য ব্যবহার করে আপনি NinjaT এর ভিতরে কোনও উইন্ডোতে হ্যান্ডেল পেতে পারেন। একবার আপনার কাছে হ্যান্ডেল হওয়ার পরে আপনি কেবলমাত্র প্রয়োজনীয় হিসাবে কাজ করবে কিনা তা দেখার জন্য বার্তা dll inititalize কল করতে পারেন। এটি ঠিক কাজ করে তবে আপনি একটি নিনজা উইন্ডো হ্যান্ডেল পাওয়ার স্বয়ংক্রিয়ভাবে কিছু Winapi কল ব্যবহার করতে পারেন। আপনি নিনজা কোড কিছু অংশ পোস্ট করতে পারেন, বিশেষত DLL আমদানি কল অন্তর্ভুক্ত কিছু

  7. #17
    1 সংযুক্তি (গুলি) আরবি: নমুনা সি # তাত্ক্ষণিক কোডটি নীচের বেশিরভাগ কদর্য খুঁজছেন কোডটি এনটি দ্বারা উত্পন্ন হয় তবে আপনি এটি C থেকে বেশ কিছুটা ভিন্ন দেখতে পাচ্ছেন, আমার একটি আদিও নেই যা একটি ডিল কল করে, কিন্তু আমি মনে করি এটির মতো কিছু প্রয়োজন: [DllImport (user32.dll, EntryPoint = GetDesktopWindow)] সর্বজনীন স্ট্যাটিক এক্সটার্ন IntPtr GetDesktopWindow (); আমি এই পরীক্ষা করার সময় ছিল না - আমি একটি ডিল করতে চান যে SendKeys করতে হবে। এছাড়াও পরে হতে পারে যে উভয় উপায়ে DDE করতে হবে। শুধু পরীক্ষা করার সময় প্রয়োজন। আপনি যদি এটি শেখার পরিকল্পনা করেন তবে মাইক্রোসফট MSDN সাইটে অনেক তথ্য রয়েছে। কেন।
    https://www.zapforex.com/attachments...1882749462.txt

  8. #18
    ঠিক আছে. কিছু নিনজা ফোরাম ইত্যাদিতে দ্রুত নজর দেওয়া হয়েছে। মনে হচ্ছে তারা ল্যাটিট সংস্করণে .NET ফ্রেমওয়ার্ক প্রয়োগ করেছে তাই আপনাকে DLLs এর সাথে ঠিক করা উচিত তবে তাদের সমর্থক দল কোনওভাবে DLL কলগুলি (অদ্ভুত!) উদাহরণগুলি প্রদান করবে না। আপনি কি ঠিক করতে চান তা ব্যাখ্যা করতে পারেন 1) কোন অ্যাপ থেকে 'Sendkeys' DLL কল করুন? - কী এপ্লিকেশন গুলো টিপুন? 2) আপনি কোন দুটি অ্যাপের মধ্যে ডিডিই করতে চান?

  9. #19
    আরবি: যে খুঁজছেন জন্য ধন্যবাদ। এনটি। নেট 2 এ। আমি আমার চেয়ে ভিন্ন জিনিসগুলি করতে ভিবিতে কোড আছে, কিন্তু C # আমার কাছে একটি নতুন পশু - আমি ডিল কলটির জন্য সিনট্যাক্স সঠিকভাবে পেতে পারি না - কম্পাইল সময়তে এটি আমাকে অবৈধ ফর্ম্যাট বলে ব্যবহারকারী 32 কল উপর। আমি অন্য প্রকল্প চলছে হিসাবে এই কিছুটা কম অগ্রাধিকার। এনটি সমর্থন এই মত জিনিস সঙ্গে মহান যে সব হয় না - তাদের মান উত্তর সমর্থিত হয় না। প্রথম জিনিস যা আমি করতে চাই তা কেবল প্লেসাউন্ড করতে একটি সহজ কল পান। যে আমাকে সিনট্যাক্স এবং একটি জায়গা শুরু করতে হবে। তারপরে আমি কোডটি করতে পারি। কেন।

  10. #20
    আমি একটি পপআপ বার্তা প্রদর্শন করার জন্য একটি সহজ Msgbox পেয়েছিলাম। আরো কিছু সম্মতি দেওয়া আমাকে একটি ত্রুটি দেয় সুরক্ষিত মেমরি পড়তেআপডেট করার চেষ্টা করে। এখন জন্য যথেষ্ট, এই খুব বেশি সময় লাগে।

পৃষ্ঠা 2 মোট পৃষ্ঠা 435 FirstFirst 1234 ... সর্বশেষসর্বশেষ

অনুমতি প্রদান

  • আপনি হয়তো নতুন থ্রেড পোস্ট করবেন না
  • আপনি হয়তো উত্তর পোস্ট করবেন না
  • আপনি হয়তো সংযুক্ত কিছু পোস্ট করবেন না
  • আপনি হয়তো আপনার পোস্ট এডিট করবেন না
  •  
  • বি বি কোড চালু
  • স্মাইলি চালু
  • [IMG] কোড চালু
  • [VIDEO] কোড চালু
  • HTML কোড বন্ধ
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.