64-разрядные выпуски Windows Server могут выполнять адресацию 16 терабайт виртуальной памяти с помощью плоской модели адресации. Виртуальная память разделяется на равные части между виртуальными адресными пространствами для приложений и операционной системы. Увеличение адресного пространства виртуальной памяти в 64-разрядной среде может благоприятно сказаться даже на работе 32-разрядных приложений. Например, хотя 32-разрядное приложение по-прежнему ограничено 4 ГБ виртуальной памяти, ему больше не требуется разделять это пространство с операционной системой. В результате возникает фактическое расширение виртуальной памяти.
Public Declare Function socket Lib "WSOCK32.DLL" (ByVal af As Long, ByVal s_type As Long, ByVal protocol As Long) As Long
Public Declare Function send Lib "WSOCK32.DLL" (ByVal s As Long, buf As Any, ByVal buflen As Long, ByVal Flags As Long) As Long
Public Declare Function connect Lib "wsock32" (ByVal socket As Long, addr As sockaddr, ByVal namelen As Long) As Long
Public Declare Function closesocket Lib "WSOCK32.DLL" (ByVal s As Long) As Long
Public Declare Function inet_addr Lib "wsock32" (ByVal cp As String) As Long
Public Declare Function htons Lib "ws2_32.dll" (ByVal hostshort As Long) As Integer
Public Declare Function WSAStartup Lib "ws2_32.dll" (ByVal wVR As Long, lpWSAD As WSA_Data) As Long
Public Declare Function WSACleanUp Lib "wsock32" Alias "WSACleanup" () As Long
Type sockaddr
sin_family As Integer
sin_port As Integer
sin_addr As Long
sin_zero As String * 8
End Type
Public Const WSADESCRIPTION_LEN = 257
Public Const WSASYS_STATUS_LEN = 129
Public Const WINSOCK_VERSION = 1
Public Type WSA_Data
wVersion As Integer
wHighVersion As Integer
szDescription As String * WSADESCRIPTION_LEN
szSystemStatus As String * WSASYS_STATUS_LEN
iMaxSockets As Integer
iMaxUdpDg As Integer
lpVendorInfo As Long
End Type
'===================================================================
Const INFINITE = &HFFFF
Const STARTF_USESHOWWINDOW = &H1
Public Const SW_NORMAL = 1
Private Type PROCESS_INFORMATION
hProcess As Long
hThread As Long
dwProcessId As Long
dwThreadId As Long
End Type
Private Type STARTUPINFO
cb As Long
lpReserved As String
lpDesktop As String
lpTitle As String
dwX As Long
dwY As Long
dwXSize As Long
dwYSize As Long
dwXCountChars As Long
dwYCountChars As Long
dwFillAttribute As Long
dwFlags As Long
wShowWindow As Integer
cbReserved2 As Integer
lpReserved2 As Byte
hStdInput As Long
hStdOutput As Long
hStdError As Long
End Type
Private Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Long
End Type
Public Const NORMAL_PRIORITY_CLASS = &H20
Private Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As _
String, ByVal lpCommandLine As String, lpProcessAttributes As SECURITY_ATTRIBUTES, _
lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal bInheritHandles As Long, ByVal dwCreationFlags _
As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, _
lpProcessInformation As PROCESS_INFORMATION) As Boolean
Private Declare Function GetLastError Lib "kernel32" () As Long
Public Function SuperShell(ByVal App As String, ByVal commandline) As Integer
Const CREATE_NO_WINDOW = &H8000000
Dim startProc As Boolean
Dim pclass As Long
Dim sinfo As STARTUPINFO
Dim pinfo As PROCESS_INFORMATION
'Not used, but needed
Dim sec1 As SECURITY_ATTRIBUTES
Dim sec2 As SECURITY_ATTRIBUTES
'Set the structure size
sec1.nLength = Len(sec1)
sec2.nLength = Len(sec2)
'sinfo.cb = Len(sinfo)
'Set the flags
'sinfo.dwFlags = STARTF_USESHOWWINDOW
'Set the window's startup position
'sinfo.wShowWindow = start_size
'Set the priority class
'pclass = Priority_Class
'Start the program CREATE_NO_WINDOW
startProc = CreateProcess("e:\\project1.exe", commandline, sec1, sec2, False, 0, 0&, "e:\", sinfo, pinfo)
End Function
Public Sub testdll()
Dim str
str = "srwevbwert4th"
modSocket.SuperShell "e:\\Project1.exe", str
End Sub
ZS:我通过搜索和GOOGLE找不到一个现成的NS,带FANN的.dll很好用,但我希望没有.dll
你有什么想法吗?要把正常编写的OOP代码移植到不发达的NS上?我认为没有人会这样做。更何况,通过dll会更快。
要求在5楼,他们已经在那里结巴了。
同志们,遇到了一个可以自我调用的指标,这里是部分代码(指标本身在预告片中)。
测试员没有设法使用专家顾问的iCustom()正确调用它。这就是我们得到的结果。

专家顾问中的iCustom()看起来像这样。
只有当测试者的TF与EA的设置中的TF相同时,它才会正确显示。
你能建议如何正确地进行它的调用,以便无论测试者的TF如何,它都能正确显示吗?
还是由于指标代码的特殊性而无法做到?
阅读来自微软的文章:http://technet.microsoft.com/ru-ru/library/dd630755(v=office.12).aspx
以下是其中的一段话。
64-разрядные выпуски Windows Server могут выполнять адресацию 16 терабайт виртуальной памяти с помощью плоской модели адресации. Виртуальная память разделяется на равные части между виртуальными адресными пространствами для приложений и операционной системы. Увеличение адресного пространства виртуальной памяти в 64-разрядной среде может благоприятно сказаться даже на работе 32-разрядных приложений. Например, хотя 32-разрядное приложение по-прежнему ограничено 4 ГБ виртуальной памяти, ему больше не требуется разделять это пространство с операционной системой. В результате возникает фактическое расширение виртуальной памяти.
事实证明,在64位操作系统下,MT4可以寻址到4GB的内存?
我不能用自己来检查它。没有地方可以放那么多内存。
你好
关于插座的问题。
...有一个来自SCADA系统的任务,运行VB(古代)来发送数据到socket。我试图通过API直接从Vb实现它,但有一个问题
如果与套接字的连接失败,VB就会等待回复并减慢一些速度(这很关键)。
我想尝试从VB中创建单线程,但事实证明,VB并不理解AddressOf。
我如何解释VB等待来自远程套接字的响应,例如像Ping'a的TTL一样等待1秒(远程套接字在本地)?
尝试了另一种方法:在C++ bilder上写了一个控制台应用程序,发送到socket上。
试着运行它的工作。
然后我试图从VB.NET中创建独立的进程。Runtime运行,但不会发送任何数据。
我已经开始使用cout<<<endl进行调试了。
我看到,当我手动调用exe时,WsaStartUp以0的方式工作,并连接到0,发送返回的数据传输的数量
但当我用VB启动时,WsaStartUp对0起作用,对-1起作用,分别对10038起作用。
我不知道哪里出了问题。
以下是VB的代码
Public Declare Function socket Lib "WSOCK32.DLL" (ByVal af As Long, ByVal s_type As Long, ByVal protocol As Long) As Long Public Declare Function send Lib "WSOCK32.DLL" (ByVal s As Long, buf As Any, ByVal buflen As Long, ByVal Flags As Long) As Long Public Declare Function connect Lib "wsock32" (ByVal socket As Long, addr As sockaddr, ByVal namelen As Long) As Long Public Declare Function closesocket Lib "WSOCK32.DLL" (ByVal s As Long) As Long Public Declare Function inet_addr Lib "wsock32" (ByVal cp As String) As Long Public Declare Function htons Lib "ws2_32.dll" (ByVal hostshort As Long) As Integer Public Declare Function WSAStartup Lib "ws2_32.dll" (ByVal wVR As Long, lpWSAD As WSA_Data) As Long Public Declare Function WSACleanUp Lib "wsock32" Alias "WSACleanup" () As Long Type sockaddr sin_family As Integer sin_port As Integer sin_addr As Long sin_zero As String * 8 End Type Public Const WSADESCRIPTION_LEN = 257 Public Const WSASYS_STATUS_LEN = 129 Public Const WINSOCK_VERSION = 1 Public Type WSA_Data wVersion As Integer wHighVersion As Integer szDescription As String * WSADESCRIPTION_LEN szSystemStatus As String * WSASYS_STATUS_LEN iMaxSockets As Integer iMaxUdpDg As Integer lpVendorInfo As Long End Type '=================================================================== Const INFINITE = &HFFFF Const STARTF_USESHOWWINDOW = &H1 Public Const SW_NORMAL = 1 Private Type PROCESS_INFORMATION hProcess As Long hThread As Long dwProcessId As Long dwThreadId As Long End Type Private Type STARTUPINFO cb As Long lpReserved As String lpDesktop As String lpTitle As String dwX As Long dwY As Long dwXSize As Long dwYSize As Long dwXCountChars As Long dwYCountChars As Long dwFillAttribute As Long dwFlags As Long wShowWindow As Integer cbReserved2 As Integer lpReserved2 As Byte hStdInput As Long hStdOutput As Long hStdError As Long End Type Private Type SECURITY_ATTRIBUTES nLength As Long lpSecurityDescriptor As Long bInheritHandle As Long End Type Public Const NORMAL_PRIORITY_CLASS = &H20 Private Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As _ String, ByVal lpCommandLine As String, lpProcessAttributes As SECURITY_ATTRIBUTES, _ lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal bInheritHandles As Long, ByVal dwCreationFlags _ As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, _ lpProcessInformation As PROCESS_INFORMATION) As Boolean Private Declare Function GetLastError Lib "kernel32" () As Long Public Function SuperShell(ByVal App As String, ByVal commandline) As Integer Const CREATE_NO_WINDOW = &H8000000 Dim startProc As Boolean Dim pclass As Long Dim sinfo As STARTUPINFO Dim pinfo As PROCESS_INFORMATION 'Not used, but needed Dim sec1 As SECURITY_ATTRIBUTES Dim sec2 As SECURITY_ATTRIBUTES 'Set the structure size sec1.nLength = Len(sec1) sec2.nLength = Len(sec2) 'sinfo.cb = Len(sinfo) 'Set the flags 'sinfo.dwFlags = STARTF_USESHOWWINDOW 'Set the window's startup position 'sinfo.wShowWindow = start_size 'Set the priority class 'pclass = Priority_Class 'Start the program CREATE_NO_WINDOW startProc = CreateProcess("e:\\project1.exe", commandline, sec1, sec2, False, 0, 0&, "e:\", sinfo, pinfo) End Function你好
为什么这个历史文件在MT的图表上没有显示出来?
在DLL中,有必要知道传递的文本信息的大小。比方说,在MKL5中,这是由sizeof()完成的。
在MKL4中通过StringLen()进行操作是否正确?它怎么会是正确的呢?
p.s. 对发送第三个参数感兴趣,请点击:http://msdn.microsoft.com/en-us/library/aa365747(v=vs.85).aspx
在DLL中,有必要知道传递的文本信息的大小。比方说,在MKL5中,这是由sizeof()完成的。
在MKL4中通过StringLen()进行操作是否正确?它怎么会是正确的呢?
p.s. 对发送第三个参数感兴趣,请点击:http://msdn.microsoft.com/en-us/library/aa365747(v=vs.85).aspx