<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to pass 2 dimensional arrays of strings from Visual Basic to Visual Fortran in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-pass-2-dimensional-arrays-of-strings-from-Visual-Basic-to/m-p/883173#M75885</link>
    <description>&lt;P&gt;Hello!&lt;BR /&gt;&lt;BR /&gt;I understand that this topic has alreadybeen dealt with and I found the newsletter by Steve Lionel very useful (thank you) but I now would like adapt the code and pass a 2-dimensional array.As Steve Lionel shows, passing a vector works well and I was able to replicate thatbut with a 2-dimensional arraythis call:&lt;BR /&gt;&lt;BR /&gt;iRes = SafeArrayGetElement(VBArray,i, LOC(StringPtr))&lt;BR /&gt;&lt;BR /&gt;becomes problematic for me. I had hopedI couldchanged it to something where the "i" becomes an array such as for example(/2,2/). So I declared rgIndices(2)andusedthis:&lt;BR /&gt;&lt;BR /&gt;iRes = SafeArrayGetElement(VBArray,rgIndices, LOC(StringPtr))&lt;BR /&gt;&lt;BR /&gt;Unfortunately I got this error message "The shape matching rules of actual arguments and dummy arguments have been violated". So I tried to use:&lt;BR /&gt;&lt;BR /&gt;iRes = SafeArrayGetElement(VBArray,rgIndices(1), LOC(StringPtr))&lt;BR /&gt;&lt;BR /&gt;and that compiles but does not seem to work. Note that I tried to send 0-based positions and tried to have the second dimension in rgIndices(1) and the first dimension in rgIndices(2) etc... but it seems that I am just unable to pass the right location in the expected format so neverretrieve any pieces of text in VBarray.&lt;BR /&gt;&lt;BR /&gt;I appreciate your help, thank you,&lt;BR /&gt;Pierre&lt;/P&gt;</description>
    <pubDate>Sun, 30 Aug 2009 00:39:32 GMT</pubDate>
    <dc:creator>uldry__pierre</dc:creator>
    <dc:date>2009-08-30T00:39:32Z</dc:date>
    <item>
      <title>How to pass 2 dimensional arrays of strings from Visual Basic to Visual Fortran</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-pass-2-dimensional-arrays-of-strings-from-Visual-Basic-to/m-p/883173#M75885</link>
      <description>&lt;P&gt;Hello!&lt;BR /&gt;&lt;BR /&gt;I understand that this topic has alreadybeen dealt with and I found the newsletter by Steve Lionel very useful (thank you) but I now would like adapt the code and pass a 2-dimensional array.As Steve Lionel shows, passing a vector works well and I was able to replicate thatbut with a 2-dimensional arraythis call:&lt;BR /&gt;&lt;BR /&gt;iRes = SafeArrayGetElement(VBArray,i, LOC(StringPtr))&lt;BR /&gt;&lt;BR /&gt;becomes problematic for me. I had hopedI couldchanged it to something where the "i" becomes an array such as for example(/2,2/). So I declared rgIndices(2)andusedthis:&lt;BR /&gt;&lt;BR /&gt;iRes = SafeArrayGetElement(VBArray,rgIndices, LOC(StringPtr))&lt;BR /&gt;&lt;BR /&gt;Unfortunately I got this error message "The shape matching rules of actual arguments and dummy arguments have been violated". So I tried to use:&lt;BR /&gt;&lt;BR /&gt;iRes = SafeArrayGetElement(VBArray,rgIndices(1), LOC(StringPtr))&lt;BR /&gt;&lt;BR /&gt;and that compiles but does not seem to work. Note that I tried to send 0-based positions and tried to have the second dimension in rgIndices(1) and the first dimension in rgIndices(2) etc... but it seems that I am just unable to pass the right location in the expected format so neverretrieve any pieces of text in VBarray.&lt;BR /&gt;&lt;BR /&gt;I appreciate your help, thank you,&lt;BR /&gt;Pierre&lt;/P&gt;</description>
      <pubDate>Sun, 30 Aug 2009 00:39:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-pass-2-dimensional-arrays-of-strings-from-Visual-Basic-to/m-p/883173#M75885</guid>
      <dc:creator>uldry__pierre</dc:creator>
      <dc:date>2009-08-30T00:39:32Z</dc:date>
    </item>
    <item>
      <title>Re: How to pass 2 dimensional arrays of strings from Visual Bas</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-pass-2-dimensional-arrays-of-strings-from-Visual-Basic-to/m-p/883174#M75886</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
There's a provided sample, VB.NET-Safearrays, which illustrates how to access a multidimensioned array from VB.&lt;BR /&gt;</description>
      <pubDate>Sun, 30 Aug 2009 12:31:50 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-pass-2-dimensional-arrays-of-strings-from-Visual-Basic-to/m-p/883174#M75886</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2009-08-30T12:31:50Z</dc:date>
    </item>
    <item>
      <title>Re: How to pass 2 dimensional arrays of strings from Visual Bas</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-pass-2-dimensional-arrays-of-strings-from-Visual-Basic-to/m-p/883175#M75887</link>
      <description>&lt;DIV style="margin:0px;"&gt;Hi Steve,&lt;BR /&gt;&lt;BR /&gt;I see, thank you for your help. Now I also got the "old" way to workand I was wondering about the differences between the two pieces of code. Is the new way, using ifcom and then replacing SysStringByteLen()byConvertBSTRToString() and getting rid of the interface more efficient?&lt;BR /&gt;&lt;BR /&gt;Thank you,&lt;BR /&gt;Pierre&lt;/DIV&gt;
&lt;BR /&gt;</description>
      <pubDate>Tue, 01 Sep 2009 19:33:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-pass-2-dimensional-arrays-of-strings-from-Visual-Basic-to/m-p/883175#M75887</guid>
      <dc:creator>uldry__pierre</dc:creator>
      <dc:date>2009-09-01T19:33:13Z</dc:date>
    </item>
    <item>
      <title>Re: How to pass 2 dimensional arrays of strings from Visual Bas</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-pass-2-dimensional-arrays-of-strings-from-Visual-Basic-to/m-p/883176#M75888</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
I don't know - am not entirely sure what the "old way" was. I can't get terribly excited about "efficiency" of this aspect of things - it will be overwhelmed by everything else. &lt;BR /&gt;</description>
      <pubDate>Tue, 01 Sep 2009 19:37:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/How-to-pass-2-dimensional-arrays-of-strings-from-Visual-Basic-to/m-p/883176#M75888</guid>
      <dc:creator>Steven_L_Intel1</dc:creator>
      <dc:date>2009-09-01T19:37:20Z</dc:date>
    </item>
  </channel>
</rss>

