개발자! 당신은 당신이 만드는 것을 전혀 테스트합니까? - 페이지 15

 

친애하는 개발자 여러분! 당신은 당신이 출시하는 것을 정말로 테스트합니까?

내 컴퓨터에 Windows 8.1 64비트 라이선스를 설치했습니다. 그리고 문제가 시작되었습니다. 먼저 컴퓨터의 C:\Program Files(x86)에 Metatrader 4를 설치했습니다. 파일을 쓰려고 할 때 문제가 시작되었습니다. 알고보니 이 윈도우는 똥보안이라는 표현에 유감이 더 커졌고 컴퓨터의 유일한 사용자이자 관리자인 나는 "관리자를 대신하여"를 클릭하기 전까지 시스템 디렉토리에서 아무 것도 할 수 없습니다. 포럼을 읽은 후 MT4를 제거한 후 Program Files(x86)가 아니라 이를 위해 특별히 생성된 C 드라이브의 다른 폴더에 Metatrader 4를 다시 설치하기로 결정했습니다. 거기에 없었어요. 설치 제거 프로그램은 귀하에게 이 작업을 수행할 권한이 없다고 밝혔습니다. 나는 이것에 놀랐고 여전히 제거하기 위해 피부에서 벗어났습니다. 그가 하지 않은 일. 그리고 관리자를 대신하여 보안 섹션에서 모든 작업을 수행할 수 있는 권한을 설정합니다. Windows를 다시 설치해도. 전체적으로 거의 2일 걸렸습니다. 그리고 동시에 경험 많은 지인들과 함께 무엇을해야하는지 상담하십시오. 그런 다음 실수로 영어 MT 포럼에서 Win XP SP3과의 호환성 모드를 설정하고 확인란을 선택해야 한다는 작은 메시지를 발견했습니다. 관리자를 대신하여 작업을 수행하십시오. 그런 다음 관리자 이름으로만 터미널이 제거되었습니다. 나는 안도의 한숨을 쉬었다.

그런 다음 Metatrader 5를 설치하기로 결정했습니다. 시스템 디렉토리에 설치하는 것이 위험하다는 것을 이미 알고 C 드라이브에 특별히 생성된 폴더에 설치했습니다. 어떤 이유로 설치 프로그램은 64를 설치할 것인지 묻지 않았습니다. -bit 버전이며, 말그대로 MT5 64비트를 강제로 설치했습니다. 나는 그와 함께 일하려고 노력했다. 표시기 생성 , 파일 작성, DLL 포함과 같은 작업을 수행한 후 설치 디렉터리에서 Files 및 Libraries 폴더가 누락되었음을 발견했습니다. 글쎄, 나는 그것들을 수동으로 만들었습니다. 그러나 파일이나 DLL, 심지어 코드 베이스에서 다운로드한 샘플도 생성되거나 컴파일을 위해 호출되지 않았습니다. 원인을 찾기 위해 오랜 시간과 신경을 썼다. 그런 다음 방금 TerminalPath를 주석 처리했습니다. 이 모든 것이 어디에서 사라지나요? C:\Users\...\AppData 폴더에 있는 것으로 밝혀졌습니다. 나는 그녀를 찾으려고 노력했다 - 운이 없다. 그녀는 전혀 사용할 수 없었습니다. 그럼 나는 그녀가 숨겨져 있다고 어떻게 든 추측했다. 그리고 인터넷에서 숨겨진 폴더 표시를 허용하는 방법을 찾았습니다. 예, 필요한 모든 폴더와 파일은 C:\Users\...\AppData\Roaming\MetaQuotes\Terminal에 있습니다. 불필요한 문제가 없도록 특별히 시스템 디렉토리를 피했지만. 아니요, 결국 설치 프로그램이 만들었습니다. 즉, 단순한 사용자는 내가 이 폴더에 접근하기 전에 했던 작업을 수행할 수 없다는 것을 이해합니다.

다음으로 DLL을 포함하려고 했습니다. 탱크와 같은 귀머거리 - 그는 내가 그녀를 밀지 않을 곳이 있더라도 그녀를 보지 못합니다. VS2013 Desktop에서 C++로 작성되었지만 최신 버전이었고 MT4에서 잘 작동했습니다. "How to Write a DLL in 10 Minutes" 기사의 예제를 본 후 나는 바보처럼 연결을 시도하는 데 또 반나절을 보냈다. 그리고 내가 방금 하지 않은 것. 그런 다음 경로를 변경했지만 터미널은 이를 보고 64비트 DLL이 아니며 연결하지 않았다는 구독을 취소했습니다. 물론, 나는 모든 예제에서 DLL이 Win32 응용 프로그램으로 생성되고 64비트를 생성하지 않는다는 것을 이해했습니다. 자, 다음에 무엇을 할까요? MT5 - 32비트에서 실험하기로 결정했습니다. 하지만 설치 프로그램이 허락하지 않아 강제로 64비트를 설치했습니다. 그러다가 포럼에서 우연히 MT5 32비트를 명령줄에서 설치할 수 있다는 ...\mt5setup.exe /32를 발견하고 마침내 32비트 버전을 설치했습니다. 연결된 DLL-ki - 모든 것이 완벽하게 획득되었습니다. 64비트 버전은 죽은 문제가 있는 응용 프로그램으로 제거해야 했습니다.

나는 개발자가 사용자의 입장에 들어갈 수 있도록 모든 것을 구체적으로 설명했습니다.

문제. 내가 시스템 디렉토리에 설치하지 않는다는 사실에도 불구하고 설치 프로그램은 여전히 내가 접근할 수 없는 숨겨진 팩에 모든 것을 넣습니다. 최소한 코드 베이스에서 다운로드한 표시기나 스크립트를 거기에 두기 위해서입니다. 그리고 파일 폴더에 접근할 수 없습니다. 작업 결과를 어디에 기록할까요? 솔직히 말하면 시간의 흡혈귀와 신경질적인 에너지와 불완전함이라는 표현이 유감스럽게도 이러한 모든 문제와 함께 MT5를 멀리 보내고 싶은 감정적 충동이 있었습니다. 그러나 어떻게든 그는 버틸 수 있었다.

그리고 두 번째 질문. 64비트 버전이 없으면 64비트 터미널이 작동하지 않기 때문에 64비트 버전에서 32비트 DLL을 연결할 수 있어야 합니까?

자, 질문 하나 더. DLL은 64비트로 문제 없이 생성되기 때문에 C#에서 DLL을 연결할 수 있도록 해야 합니까?

그리고 더. Microsoft는 C++를 주요 프로그래밍 언어로 C#으로 대체하려는 거의 폭력적인 시도를 하고 있습니다. 최신 VS2013에서는 양식 작업을 설치하는 기능도 제거했으며 포럼에서 "왜?"라는 질문에 "더 고급 C#을 사용해 보지 않겠습니까?"라는 질문에 대답합니다. 그런 다음 미래에 C ++가 두 번째 계획으로 갈 수도 있고 사라질 수도 있음이 밝혀졌습니다. C# 언어 기반으로 새 터미널을 만들어야 합니까?

 
ANG3110 :

그런 다음 Metatrader 5를 설치하기로 결정했습니다. 시스템 디렉토리에 설치하는 것이 위험하다는 것을 이미 알고 C 드라이브에 특별히 생성된 폴더에 설치했습니다. 어떤 이유로 설치 프로그램은 64를 설치할 것인지 묻지 않았습니다. -bit 버전이며, 말그대로 MT5 64비트를 강제로 설치했습니다. 나는 그와 함께 일하려고 노력했다. 표시기 생성 , 파일 작성, DLL 포함과 같은 작업을 수행한 후 설치 디렉터리에서 Files 및 Libraries 폴더가 누락되었음을 발견했습니다. 글쎄, 나는 그것들을 수동으로 만들었습니다. 그러나 파일이나 DLL, 심지어 코드 베이스에서 다운로드한 샘플도 컴파일을 위해 생성되거나 호출되지 않았습니다. 원인을 찾기 위해 오랜 시간과 신경을 썼다. 그런 다음 방금 TerminalPath를 주석 처리했습니다. 이 모든 것이 어디에서 사라지나요? C:\Users\...\AppData 폴더에 있는 것으로 밝혀졌습니다. 나는 그녀를 찾으려고 노력했다 - 운이 없다. 그녀는 전혀 사용할 수 없었습니다. 그럼 나는 그녀가 숨겨져 있다고 어떻게 든 추측했다. 그리고 인터넷에서 숨겨진 폴더 표시를 허용하는 방법을 찾았습니다. 예, 필요한 모든 폴더와 파일은 C:\Users\...\AppData\Roaming\MetaQuotes\Terminal에 있습니다. 불필요한 문제가 없도록 특별히 시스템 디렉토리를 피했지만. 아니요, 결국 설치 프로그램이 만들었습니다. 즉, 단순한 사용자는 내가 이 폴더에 접근하기 전에 했던 작업을 수행할 수 없다는 것을 이해합니다.


64비트 단말기 설치 후 바로 열 필요 없이 먼저 바로가기를 생성해야 하며, 속성에서 객체가 할당된 키/휴대용

다음과 같은 것: D:\MT5\terminal64.exe /portable

그러면 당신이 갖게 될 모든 폴더는 누가 어디에 있는지 모르지만 특히 터미널의 폴더에 나타납니다.

 
Olegts :

다음과 같은 것: D:\MT5\terminal64.exe /portable

그러면 당신이 갖게 될 모든 폴더는 누가 어디에 있는지 모르지만 특히 터미널의 폴더에 나타납니다.

그리고 편집자에게도

또한 레지스트리의 모든 곳에서 두 번 클릭하여 mql 파일을 열 수 있습니다.

 
sergeev :

그리고 편집자에게도

또한 레지스트리의 모든 곳에서 두 번 클릭하여 mql 파일을 열 수 있습니다.

당신은 중재자 또는 무엇입니까?

사람이 문제가 있었는데 부분적으로 해결하는 방법을 제안했습니다. 왜 당신의 풍자?

 
Olegts :

당신은 중재자 또는 무엇입니까?

사람이 문제가 있었는데 부분적으로 해결하는 방법을 제안했습니다. 왜 당신의 풍자?

어렸을 때 중재자에게 무서웠습니까? 당신은 무엇을 끓이고 실행 중입니까?

나는 당신의 불완전한 대답을 확장했습니다.

당신은 당신이 "일부"로 조언했다고 씁니다. 왜 반값이 필요합니까?

 
sergeev :

어렸을 때 중재자에게 무서웠습니까? 당신은 무엇을 끓이고 실행 중입니까?

나는 당신의 불완전한 대답을 확장했습니다.

당신은 당신이 "일부"로 조언했다고 씁니다. 왜 반값이 필요합니까?

개인적으로 노트북 없이는 일을 하지 않습니다. 20개 정도의 터미널이 있는 별도의 폴더가 있는데 그 안에 MQL5와 다른 폴더들이 어디에 있는지 정확히 알고 있는데 어디에 있는지는 불명. 그 사람은 8.1이라는 기적과 함께 작고 부드러운 사람들이 그를 위해 마련한 갈퀴에 부딪쳤고 메타쿼타가 책임이 있다고 결정했습니다. 그는 자신의 우월함을 보여주기 위해서가 아니라 도움이 필요합니다.

 
그리고 바로 가기에 터미널 경로가 지정되지 않은 이유는 무엇입니까? 글쎄, 이것은 Bill Gates의 돛대 제공입니다. 그들이 그에게 달걀을 던진 것은 아무 것도 아닙니다.)
 
Olegts :

개인적으로 노트북 없이는 일을 하지 않습니다. 폴더가 따로 있어요

나는 나사와 FAT32에 몇 개의 공연을 가지고 있습니다. 휴대용도 필요 없습니다.

 
ANG3110 :

친애하는 개발자 여러분! 당신은 당신이 출시하는 것을 정말로 테스트합니까?

테스트. 그리고 우리는 이미 13년 동안 공개적으로 그것을 해왔습니다.


내 컴퓨터에 Windows 8.1 64비트 라이선스를 설치했습니다. 그리고 문제가 시작되었습니다. 먼저 컴퓨터의 C:\Program Files(x86)에 Metatrader 4를 설치했습니다. 파일을 쓰려고 할 때 문제가 시작되었습니다. 알고보니 이 윈도우는 똥보안이라는 표현에 유감이 더 커졌고 컴퓨터의 유일한 사용자이자 관리자인 나는 "관리자를 대신하여"를 클릭하기 전까지 시스템 디렉토리에서 아무 것도 할 수 없습니다. 포럼을 읽은 후 MT4를 제거한 후 Program Files(x86)가 아니라 이를 위해 특별히 생성된 C 드라이브의 다른 폴더에 Metatrader 4를 다시 설치하기로 결정했습니다. 거기에 없었어요. 설치 제거 프로그램은 귀하에게 이 작업을 수행할 권한이 없다고 밝혔습니다. 나는 이것에 놀랐고 여전히 제거하기 위해 피부에서 벗어났습니다. 그가 하지 않은 일. 그리고 관리자를 대신하여 보안 섹션에서 모든 작업을 수행할 수 있는 권한을 설정합니다. Windows를 다시 설치해도. 전체적으로 거의 2일 걸렸습니다. 그리고 동시에 경험 많은 지인들과 함께 무엇을해야하는지 상담하십시오. 그런 다음 영어 MT 포럼에서 실수로 Win XP SP3에 대한 호환성 모드를 설정하고 확인란을 선택해야 한다는 작은 메시지를 발견했습니다. 관리자를 대신하여 작업을 수행하십시오. 그런 다음 관리자 이름으로만 터미널이 제거되었습니다. 나는 안도의 한숨을 쉬었다.

당신은 Windows 8에 잘 적응되지 않은 오래된 프로그램의 일반적인 문제에 직면 해 있습니다. 즉, 문제는 운영 체제의 보안 시스템에 있습니다. 예, Windows 8의 Microsoft는 모든 사람을 벽에 기대게 만들었으며 더 이상 원하는 곳에 데이터를 쓰고 저장할 수 없습니다.

이러한 문제를 해결하기 위해 MetaTrader 5에서와 같이 최신 데이터 저장 모델을 사용하는 새로운 MetaTrader 4를 출시합니다 .


그런 다음 Metatrader 5를 설치하기로 결정했습니다.

시스템 디렉토리가 위험해서 C드라이브에 특별히 생성된 폴더에 설치했습니다. 어째서인지 인스톨러가 64비트 버전을 설치할지 묻지 않고 그대로 강제로 MT5 64비트를 설치했습니다. 나는 그와 함께 일하려고 노력했다. 표시기 생성 , 파일 작성, DLL 포함과 같은 작업을 수행한 후 설치 디렉터리에서 Files 및 Libraries 폴더가 누락되었음을 발견했습니다. 글쎄, 나는 그것들을 수동으로 만들었습니다. 그러나 파일이나 DLL, 심지어 코드 베이스에서 다운로드한 샘플도 생성되거나 컴파일을 위해 호출되지 않았습니다. 원인을 찾기 위해 오랜 시간과 신경을 썼다. 그런 다음 방금 TerminalPath를 주석 처리했습니다. 이 모든 것이 어디에서 사라지나요? C:\Users\...\AppData 폴더에 있는 것으로 밝혀졌습니다. 나는 그녀를 찾으려고 노력했다 - 운이 없다. 그녀는 전혀 사용할 수 없었습니다. 그럼 나는 그녀가 숨겨져 있다고 어떻게 든 추측했다. 그리고 인터넷에서 숨겨진 폴더 표시를 허용하는 방법을 찾았습니다. 예, 필요한 모든 폴더와 파일은 C:\Users\...\AppData\Roaming\MetaQuotes\Terminal에 있습니다. 불필요한 문제가 없도록 특별히 시스템 디렉토리를 피했지만. 아니요, 결국 설치 프로그램이 만들었습니다. 즉, 단순한 사용자는 내가 이 폴더에 도달하기 전에 했던 작업을 수행할 수 없다는 것을 이해합니다.

이런 식으로 개발자들에게 논쟁하고, 비판하고, 조언을 해주지만, 동시에 Windows 보안 시스템의 기본 규칙을 알지 못합니다. 운영 체제는 더 이상 Program Files에 쓸 수 있는 권한을 부여하지 않습니다. 권장 저장 위치는 AppData에만 있습니다.

정상적으로 작업하고 있다면 모든 것이 정상입니다. 모든 데이터가 제자리에 있고 작업 디렉토리는 파일 -> 데이터 디렉토리 열기에서 사용할 수 있습니다.


다음으로 DLL을 포함하려고 했습니다. 탱크와 같은 귀머거리 - 그는 내가 그녀를 밀지 않을 곳이 있더라도 그녀를 보지 못합니다. VS2013 Desktop에서 C++로 작성되었지만 최신 버전이었고 MT4에서 잘 작동했습니다. "How to Write a DLL in 10 Minutes" 기사의 예제를 본 후 나는 바보처럼 연결을 시도하는 데 또 반나절을 보냈다. 그리고 내가 방금 하지 않은 것. 그런 다음 경로를 변경했지만 터미널은 이를 보고 64비트 DLL이 아니며 연결하지 않았다는 구독을 취소했습니다. 물론, 나는 모든 예제에서 DLL이 Win32 응용 프로그램으로 생성되고 64비트를 생성하지 않는다는 것을 이해했습니다. 자, 다음에 무엇을 할까요? MT5 - 32비트에서 실험하기로 결정했습니다. 하지만 설치 프로그램이 허락하지 않아 강제로 64비트를 설치했습니다. 그러다가 포럼에서 우연히 MT5 32비트를 명령줄에서 설치할 수 있다는 ...\mt5setup.exe /32를 발견하고 마침내 32비트 버전을 설치했습니다. 연결된 DLL-ki - 모든 것이 완벽하게 획득되었습니다. 64비트 버전은 죽은 문제가 있는 응용 프로그램으로 제거해야 했습니다.

이것이 DLL인 경우 64비트 모드에서 다시 컴파일하십시오.

벽에 머리를 박고 32비트 라이브러리가 64비트 프로그램에서 작동할 수 있거나 작동해야 한다고 가장할 필요가 없습니다. 이것은 이미 이웃 포럼에서 설명했지만 계속 이해하지 못하는 척합니다.

나는 개발자가 사용자의 입장에 들어가려고 노력할 수 있도록 모든 것을 구체적으로 설명했습니다.

불행히도, 당신은 당신의 망상을 자세히 설명했습니다. 프로그래머의 말(DLL, 디렉토리, 프로그램)이라고 하지만 사실 기본적인 것은 모릅니다.

문제. 내가 시스템 디렉토리에 설치하지 않는다는 사실에도 불구하고 설치 프로그램은 여전히 내가 접근할 수 없는 숨겨진 팩에 모든 것을 넣습니다. 최소한 코드 베이스에서 다운로드한 표시기나 스크립트를 거기에 두기 위해서입니다. 그리고 파일 폴더에 접근할 수 없습니다. 작업 결과를 어디에 기록할까요? 솔직히 말하면 시간의 흡혈귀와 신경질적인 에너지와 불완전함이라는 표현이 유감스럽게도 이러한 모든 문제와 함께 MT5를 멀리 보내고 싶은 감정적 충동이 있었습니다. 그러나 어떻게든 그는 버틸 수 있었다.

이것은 Microsoft의 규칙이기 때문입니다(예, 그것은 그의 것입니다). Windows 8이 출시되면 실제로 Microsoft가 말한 대로 하거나 고객에게 쓰기 금지를 설정하는 것입니다.

자신의 디렉토리에 작업 파일을 도전적으로 저장하려는 사람들을 위해 /portable 스위치가 있습니다.


그리고 두 번째 질문. 64비트 버전이 없으면 64비트 터미널이 작동하지 않기 때문에 64비트 버전에서 32비트 DLL을 연결할 수 있어야 합니까?

아니요, 원칙적으로 기술적으로(광신주의 없이) 불가능합니다. 64비트 라이브러리가 필요합니다.


자, 질문 하나 더. DLL은 64비트로 문제 없이 생성되기 때문에 C#에서 DLL을 연결할 수 있도록 해야 합니까?

그래서 일반 프로그램은 64비트 버전을 쉽게 만들 수 있습니다. 어디에서 문제를 생각해 냈습니까?


그리고 더. Microsoft는 C++를 주요 프로그래밍 언어로 C#으로 대체하려는 거의 폭력적인 시도를 하고 있습니다. 최신 VS2013에서는 양식 작업을 설치하는 기능도 제거했으며 포럼에서 "왜?"라는 질문에 "더 고급 C#을 사용해 보지 않겠습니까?"라는 질문에 대답합니다. 그런 다음 미래에 C ++가 두 번째 계획으로 갈 수도 있고 사라질 수도 있음이 밝혀졌습니다. C# 언어 기반으로 새 터미널을 만들어야 합니까?

우리가 사업을 망치고 싶을 때 그렇습니다. 우리는 C #으로 전환할 것입니다. 그것은 단지 훌륭한 방법일 것입니다.

문제를 방지하려면 MQL4/MQL5를 사용하십시오. MQL4/MQL5는 C#처럼 작동하며 실행 시 자동으로 32비트 및 64비트 네이티브 코드로 재컴파일됩니다.

Выпущена бета-версия MetaTrader 4 Build 555 с обновленным языком MQL4 и Маркетом приложений - MQL4 форум
  • www.mql5.com
Выпущена бета-версия MetaTrader 4 Build 555 с обновленным языком MQL4 и Маркетом приложений - MQL4 форум
 

물론, 나는 모든 것을 이해합니다.

몇 달 전에 Windows XP에서 Windows 7/Windows 8로 전환한 사람은 템플릿을 반드시 깨야 합니다. 그러나 그들이 말했듯이 모든 사악한 피노키오는 자신에게 12 년 동안의 자기기만에 대한 대가이며 운영 체제의 변화에 눈을 돌리는 것입니다.