exponenta event banner

GetWorkspaceData

Данные из рабочей области сервера автоматизации

Резюме

Подпись метода IDL

HRESULT GetWorkspaceData([in] BSTR varname, [in] BSTR workspace,
    [out] VARIANT* pdata)

Клиент Microsoft Visual Basic

GetWorkspaceData(varname As String, workspace As String) As Object

Клиент MATLAB

D = GetWorkspaceData(h,'varname','workspace')

Описание

D = GetWorkspaceData(h,'varname','workspace') получает данные, сохраненные в переменной varname из указанного workspace сервера, подключенного к дескриптору h и возвращает его в выходном аргументе D. Значения для workspace являются base или global. Используйте этот синтаксис при написании кода VBA.

Использовать GetWorkspaceData вместо GetFullMatrix и GetCharArray для получения числовых данных и данных символьного массива соответственно. Не использовать GetWorkspaceData на разреженных массивах, структурах или дескрипторах функций.

Для клиентов VASEcript используйте GetWorkspaceData и PutWorkspaceData для передачи числовых данных в рабочую область MATLAB ® и из нее. Эти функции используют variant вместо типа данных safearray тип данных, используемый GetFullMatrix и PutFullMatrix. VASEcript не поддерживает safearray.

Примеры

развернуть все

В этом примере показано, как использовать клиент Visual Basic ® .NET для чтения данных с сервера MATLAB Automation.

type getworkspacedata.vb
Dim Matlab As Object
Dim C2 As Object
Dim Result As String
Matlab = CreateObject("matlab.application")
Result = MatLab.Execute("C1 = {25.72, 'hello', rand(4)};")
MsgBox("In MATLAB, type" & vbCrLf & "C1")
Matlab.GetWorkspaceData("C1", "base", C2)
MsgBox("second value of C1 = " & C2(0, 1))

В этом примере показано, как использовать клиент VBA для чтения данных с сервера MATLAB Automation.

type getworkspacedata.vba
Dim Matlab As Object
Dim C2 As Variant
Dim Result As String
Set Matlab = CreateObject("matlab.application")
Result = MatLab.Execute("C1 = {25.72, 'hello', rand(4)};")
MsgBox("In MATLAB, type" & vbCrLf & "C1")
X = Matlab.GetWorkspaceData("C1", "base", C2)
MsgBox("second value of C1 = " & C2(0, 1))
Представлен до R2006a