Tünaydın!
Market'te 1 numaralı kural dll yasaktır. Tamam, bu anlaşılabilir)
şimdi durum
Bana göründüğü gibi, Expert Advisor paketinde mükemmel çalışan, ancak hiçbir şekilde ticaret yapmayan yararlı bir işlevsellik var. Çalışmak için onTimer yöntemini kullanır. DLL, bir dosyayı yeniden adlandırmak (MQL'de değil), vbs uzantılı bir dosya oluşturmak :) ve bu görsel temel betiği bir kabuk komutuyla çalıştırmak için kullanılır. Tehlikeli, anlıyorum.
Bu tür girdilerle Market üzerinden işlevsellik nasıl sağlanır?
herhangi biri?
Dll çağrılarının yapıldığı sınıfı ayrı bir kütüphaneye alıp açıklamaya eklemek gibi düşüncelerim varken.
Bu arada, işlevselliğin çalışması için mql5\files dizininde olması gereken bir csv dosyasına da ihtiyacınız var. Açıklamaya eklemenin bir yolu var mı?
herhangi biri?
Dll çağrılarının yapıldığı sınıfı ayrı bir kütüphaneye alıp açıklamaya bir link eklemek gibi düşüncelerim varken.
Bu arada, iş için
ne için ?
piyasanın ana kuralı - dll ve diğer şüpheli faaliyetler yasaktır. Herhangi bir harici nesneye (göstergeler ve kitaplıklar) bağımlılık yasaktır.
Çağrıları bir sınıfa veya kitaplığa taşıyarak DLL'den hiçbir şekilde kurtulamazsınız.
PS/ böyle şüpheli bir şeyi satmak (kapalı yazılımdan VBS'nin oluşturulması ve başlatılması), kişisel sorumluluk almalısınız ve kimse aracı olmak istemez.
herhangi biri?
Dll çağrılarının yapıldığı sınıfı ayrı bir kütüphaneye alıp açıklamaya eklemek gibi düşüncelerim varken.
Bu arada, işlevselliğin çalışması için mql5\files dizininde olması gereken bir csv dosyasına da ihtiyacınız var. Açıklamaya ek olarak eklemenin bir yolu var mı?
Gerçekten bir işlevden, terminalin kendisinden yoksun musunuz? bir üçüncü taraf programı ne yapabilir - bir terminal ne yapamaz ?????????????????????
ne için ?
piyasanın ana kuralı - dll ve diğer şüpheli faaliyetler yasaktır. Herhangi bir harici nesneye (göstergeler ve kitaplıklar) bağımlılık yasaktır.
Çağrıları bir sınıfa veya kitaplığa taşıyarak DLL'den hiçbir şekilde kurtulamazsınız.
PS/ böyle şüpheli bir şeyi satmak (kapalı yazılımdan VBS'nin oluşturulması ve başlatılması), kişisel sorumluluk almalısınız ve kimse aracı olmak istemez.
Henüz böyle bir ayrılmanın mekanizmasını anlamıyorum. Diyelim ki dll'ye erişilen sınıf kodu burada
class cIntSpeech { public : void Say( string aText) { if (! MQL5InfoInteger ( MQL5_DLLS_ALLOWED )) { Alert ( __FUNCTION__ + ": Allow dll" ); return ; } string m_fntxt= "sspeechexample.txt" ; string m_fnvbs= "sspeechexample.vbs" ; int h= FileOpen ( "sspeechexample.txt" , FILE_ANSI | FILE_WRITE ); FileWrite (h, "CreateObject(\"SAPI.SpVoice\").Speak\"" +aText+ "\"" ); FileClose (h); string srcvbs = TerminalInfoString ( TERMINAL_DATA_PATH )+ "\\MQL5\\Files\\sspeechexample.txt" ; //+MQLInfoString(MQL_PROGRAM_NAME)+".mq5"; string dstvbs = TerminalInfoString ( TERMINAL_DATA_PATH )+ "\\MQL5\\Files\\sspeechexample.vbs" ; //"+MQLInfoString(MQL_PROGRAM_NAME)+".vbs"; if (CopyFileW(srcvbs,dstvbs, 0 )){ Print ( "Файл скопирован" ); } else { Print ( "Не удалоcь скопировать файл" ); } int r = - 1 ; r = ShellExecuteW( NULL , NULL ,dstvbs, "" , "" , 0 ); Print ( "Код ошибки %d" , r); } };
Markette olacak olan Expert Advisor'ın kendisinde 3-4 sınıf daha vardır, dll'ye sadece bir çağrı vardır. Diyelim ki, uzmanın kodundaki DLL sınıfını değiştirdim, shellexecute() ve copyW()'yi printf() ile değiştirdim ve tüm baykuşu kurallara uygun hale getirdim.
Potansiyel bir alıcının güvenli ancak işe yaramaz bir sınıfı, faydalı işler yapan gerçek bir sınıfla değiştirmesini nasıl kolaylaştırabilirim?
Gerçekten bir işlevden, terminalin kendisinden yoksun musunuz? bir üçüncü taraf programı ne yapabilir - bir terminal ne yapamaz ?????????????????????
Birçok şey :)
Ancak özellikle, MQL5 bir .vbs dosyası oluşturamaz
Bana öyle geliyor ki bu usta uzun bir karantina istiyor.
Расширение VBS – это скрипт, написанный на языке Visual Basic, используется для выполнения команд и программ в среде Windows. VBS скрипты интерпретируются или оконным интерпретатором WScript.exe, или консольным – CScript.exe (вместе они – Windows Script Host или WSH). Файлы .VBS могут так же иметь расширение .VB . Создавать скрипты VBS можно в блокноте или в любом другом текстовом редакторе, т.к. VBS – это текстовый формат. VBScript был создан Microsoft в качестве замены устаревшему языку .CMD , интерпретируемому приложением command.com.
Скрипты VBS чаще всего используются при автоматизации администрирования систем Windows или при написании кода на страницах Classic ASP, или в клиентских скриптах в браузере Internet Explorer.
NOT: Dikkatli olun .VBS dosyalarına kötü amaçlı yazılım veya Truva atları bulaşmış olabilir . Özellikle dosyayı postayla aldıysanız veya kaynağı bilinmiyorsa, .VBS dosyalarını açmadan önce kontrol etmek için bir virüsten koruma yazılımı kullanın.
kaynak: http://fileext.ru/vbs
Onu piyasaya sürmek için bu kadar uğraşan ne ???
Birçok şey :)
Ancak özellikle, MQL5 bir .vbs dosyası oluşturamaz
belki .bat ve .cmd'ye de ihtiyacınız vardır
Tünaydın!
Markette 1 numaralı kural dll yasaktır. Tamam, bu anlaşılabilir)
şimdi durum
Bana göründüğü gibi, Expert Advisor paketinde mükemmel çalışan, ancak hiçbir şekilde ticaret yapmayan yararlı bir işlevsellik var. Çalışmak için onTimer yöntemini kullanır. DLL, bir dosyayı yeniden adlandırmak (MQL'de değil), vbs uzantılı bir dosya oluşturmak :) ve bu görsel temel betiği bir kabuk komutuyla çalıştırmak için kullanılır. Tehlikeli, anlıyorum.
Bu tür girdilerle Market üzerinden işlevsellik nasıl sağlanır?
Altı çizili ifadeyi çözebilir misiniz? )) Win API işlevlerinin çoğu için sarmalayıcılar uzun zaman önce yapılmıştır. Pazarda kullanılabilirler, diye sordu Renat bir uzmana.
\MQL5\Include\WinAPI\..
Altı çizili ifadeyi çözebilir misiniz? )) Win API işlevlerinin çoğu için sarmalayıcılar uzun zaman önce yapılmıştır. Pazarda kullanılabilirler, diye bir uzmana sordu Renat.
\MQL5\Include\WinAPI\..
Gözlerime inanamıyorum!
Alexey, sen misin? Dürüst olmak gerekirse forumda çok eksiksiniz... Aksi halde herkes uyuşuk ve kasvetli..
Altı çizili ifadeyi çözebilir misiniz? )) Win API işlevlerinin çoğu için sarmalayıcılar uzun zaman önce yapılmıştır. Pazarda kullanılabilirler, diye bir uzmana sordu Renat.
\MQL5\Include\WinAPI\..
Böylece WinApi, işlevleri Dll'den çeker ve tüm Dll çağrıları yasaktır.
Bir tür belirsizlik elde ediliyor ve hatırladığım kadarıyla tam tersine WinApi aramalarının da yasak olduğunu yazmışlar.
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Tünaydın!
Market'te 1 numaralı kural dll yasaktır. Tamam, bu anlaşılabilir)
şimdi durum
Bana göründüğü gibi, Expert Advisor paketinde mükemmel çalışan, ancak hiçbir şekilde ticaret yapmayan yararlı bir işlevsellik var. Çalışmak için onTimer yöntemini kullanır. DLL, bir dosyayı yeniden adlandırmak (MQL'de değil), vbs uzantılı bir dosya oluşturmak :) ve bu görsel temel betiği bir kabuk komutuyla çalıştırmak için kullanılır. Tehlikeli, anlıyorum.
Bu tür girdilerle Market üzerinden işlevsellik nasıl sağlanır?