<?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 Re: moving 8.1 projects to 9.0 in Archicad C++ API</title>
    <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22670#M7964</link>
    <description>&lt;BLOCKQUOTE&gt;Andras wrote:&lt;BR /&gt;My guess is that a compiler or linker flag is at fault. Try generating a default project with the AppWizard and compare the flags with the flags in your project. &lt;BR /&gt;
 &lt;BR /&gt;
If nothing else works, try creating a new API project, adding your files to it and recompiling.&lt;/BLOCKQUOTE&gt;

This advice is what was most useful to me in the past when moving projects from one release to another and encountering build errors.&lt;BR /&gt;
&lt;BR /&gt;
I actually took the latter route: using AppWizard to create a blank project and adding my files to it. Was the least effort compared to tracking down all of the settings.  (Life was easier with old fashioned makefiles in some ways.)&lt;BR /&gt;
&lt;BR /&gt;
Karl</description>
    <pubDate>Sat, 19 Feb 2005 05:32:49 GMT</pubDate>
    <dc:creator>Karl Ottenstein</dc:creator>
    <dc:date>2005-02-19T05:32:49Z</dc:date>
    <item>
      <title>moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22660#M7954</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;Time has come for my API tools to get upgraded to 9.&lt;BR /&gt;&lt;BR /&gt;New CPU, new VS (.net 2003), new apidevkit (6.1).&lt;BR /&gt;&lt;BR /&gt;The standard examples seem to compile well, HOWEVER, my existing projects have some problems (and I only started the windows side:)&lt;BR /&gt;&lt;BR /&gt;The first hurdles were relatively easy (the earlier wizard created absolute path references, so GRC compiler, the Support/Modules, etc had to be corrected for the custom build step/ additional source folders list...&lt;BR /&gt;&lt;BR /&gt;Some puzzles still remain:&lt;BR /&gt;&lt;BR /&gt;Project 1:&lt;BR /&gt;-------------------&lt;BR /&gt;link errors: unresolved external symbol:&lt;BR /&gt;_WriteReport&lt;BR /&gt;@ErrorBeep@8&lt;BR /&gt;_WriteReportAlert&lt;BR /&gt;@ClickAnElem@24&lt;BR /&gt;_WriteReport_End&lt;BR /&gt;&lt;BR /&gt;These from modified versions of DumpBody, Do_TriangulateSlab, Do_Get3DOfClickedElem routines which were snipped (for 8.0-8.1) from the 3DUtilities example.&lt;BR /&gt;&lt;BR /&gt;Project2:&lt;BR /&gt;--------------------&lt;BR /&gt;&lt;BR /&gt;error C2248 'Geometry::Real::value' cannot access private member declared in class 'Geometry::Real' c;\api61\support\modules\geometrylib\real.hpp(253): see declaration of Geometry::Real::value Line 393, 399, etc.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;(sorry being libearal with the uppercase/lowercase but I'm typing this on a powerbook, watching the windows xp pro screen. (that machine is safely off the internet)&lt;BR /&gt;&lt;BR /&gt;Any ideas anybody?&lt;BR /&gt;(and I thought it will be a "simple" recompile.... (:&lt;/DIV&gt;</description>
      <pubDate>Tue, 13 Dec 2022 21:34:55 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22660#M7954</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-12-13T21:34:55Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22661#M7955</link>
      <description>&lt;BLOCKQUOTE&gt;Ferenc wrote:&lt;BR /&gt;Any ideas anybody?&lt;BR /&gt;
(and I thought it will be a "simple" recompile.... (:&lt;/BLOCKQUOTE&gt;

I can not help actually. I feel that reasons of both are simple, but it is hard to assume something certain.&lt;BR /&gt;
Project1. I think you need attentively make sure that CPP source codes  of these functions are really included to the project.&lt;BR /&gt;
Project2. It is strange. I have just tried "IsNear" function with "Real" arguments. It was compiled.&lt;BR /&gt;
I have just one fantastic idea if you somewhere have casually redefined the _MSC_VER value less than 1310 which should be for VS2003.</description>
      <pubDate>Wed, 16 Feb 2005 18:34:06 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22661#M7955</guid>
      <dc:creator>Oleg</dc:creator>
      <dc:date>2005-02-16T18:34:06Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22662#M7956</link>
      <description>Thanks Oleg,&lt;BR /&gt;
&lt;BR /&gt;
After sleeping on it, the Project1 problem is coming from a using a code segment from a 5.1 (4.2)  api example, and probably I was using a deprecated method to write into the report window. (I might need to check out the @Clicked2D element and similar..), but that should be easy to fix.&lt;BR /&gt;
&lt;BR /&gt;
On Project2 I will check the MSC_VER thing by finding and comparing to the 6.1 examples. that would be neat if it were that easy. It is not that I have it overwritten, but (since these are coming from 7.0-8.0-8.1 where VC 6.0 was what the doctor ordered) I need to update these.&lt;BR /&gt;
&lt;BR /&gt;
That also would be an easy fix, maybe it should be mentioned somewhere in the dev doc. Where did you find it?&lt;BR /&gt;
&lt;BR /&gt;
migrating to VS.net 2003 has another inconvenience- it looks like the vc7 libraries are incompatible with the mso9.dll, excel9.dll, vbeext6.dll which is necessary to drive Excel 2000. I'm trying to track this down on the MSDN forums...</description>
      <pubDate>Wed, 16 Feb 2005 18:54:28 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22662#M7956</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2005-02-16T18:54:28Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22663#M7957</link>
      <description>&lt;BLOCKQUOTE&gt;Ferenc wrote:&lt;BR /&gt;
That also would be an easy fix, maybe it should be mentioned somewhere in the dev doc. Where did you find it?
&lt;/BLOCKQUOTE&gt;

I didnot find it anywhere. It was just just idea after i tried to reproduce the error. I have defined MSC_VER and then this errors arised.&lt;BR /&gt;
Actually MSC_VER never defined by hand as it is special macro defined by the compiler at compilation. Therefore the idea ptactically unreal.&lt;BR /&gt;
But .... life is life all happens.</description>
      <pubDate>Wed, 16 Feb 2005 19:12:15 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22663#M7957</guid>
      <dc:creator>Oleg</dc:creator>
      <dc:date>2005-02-16T19:12:15Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22664#M7958</link>
      <description>So which file should it be in (rc2?), to edit it manually?</description>
      <pubDate>Wed, 16 Feb 2005 19:41:59 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22664#M7958</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2005-02-16T19:41:59Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22665#M7959</link>
      <description>&lt;BLOCKQUOTE&gt;Ferenc wrote:&lt;BR /&gt;So which file should it be in (rc2?), to edit it manually?&lt;/BLOCKQUOTE&gt;

Try before a small experiment to check MSC_VER value.&lt;BR /&gt;
Try to add temporary following to the CPP where you use the Geometry::Real and Geometry::IsNear ( source the errors ).&lt;BR /&gt;
After other includes especially Geometry.hpp or Real.hpp.&lt;BR /&gt;
&lt;BR /&gt;
#if _MSC_VER &amp;lt; 1310&lt;BR /&gt;
#error "Wrong"&lt;BR /&gt;
#else&lt;BR /&gt;
#error "Valid"&lt;BR /&gt;
#endif&lt;BR /&gt;
&lt;BR /&gt;
And compile that CPP. You got the error anyway. The debug output window will contain Wrong or Valid string, so you will check MSC_VER settings.&lt;BR /&gt;
If it is Valid then a reason is not MSC_VER.</description>
      <pubDate>Wed, 16 Feb 2005 20:07:09 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22665#M7959</guid>
      <dc:creator>Oleg</dc:creator>
      <dc:date>2005-02-16T20:07:09Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22666#M7960</link>
      <description>Well,&lt;BR /&gt;
&lt;BR /&gt;
fatal error C1189: #error: "valid"&lt;BR /&gt;
&lt;BR /&gt;
.....</description>
      <pubDate>Wed, 16 Feb 2005 22:18:15 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22666#M7960</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2005-02-16T22:18:15Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22667#M7961</link>
      <description>&lt;BLOCKQUOTE&gt;Ferenc wrote:&lt;BR /&gt;Well,&lt;BR /&gt;
&lt;BR /&gt;
fatal error C1189: #error: "valid"&lt;BR /&gt;
&lt;BR /&gt;
.....&lt;/BLOCKQUOTE&gt;

Then the idea on MS_VER was false and it is not that reason.&lt;BR /&gt;
Sorry, I have no another idea.  &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_sad.gif" style="display : inline;" /&gt;</description>
      <pubDate>Thu, 17 Feb 2005 06:06:36 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22667#M7961</guid>
      <dc:creator>Oleg</dc:creator>
      <dc:date>2005-02-17T06:06:36Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22668#M7962</link>
      <description>My guess is that a compiler or linker flag is at fault. Try generating a default project with the AppWizard and compare the flags with the flags in your project. &lt;BR /&gt;
 &lt;BR /&gt;
If nothing else works, try creating a new API project, adding your files to it and recompiling. &lt;BR /&gt;
 &lt;BR /&gt;
HTH.</description>
      <pubDate>Thu, 17 Feb 2005 13:35:48 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22668#M7962</guid>
      <dc:creator>Andras Babos</dc:creator>
      <dc:date>2005-02-17T13:35:48Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22669#M7963</link>
      <description>Oleg, thanks for the help, don't worry, I've found you try about 7-10 things which don't work during troubleshooting a problem.&lt;BR /&gt;
&lt;BR /&gt;
I will try the compiler flags too, but the since I got Project1 up and running now (same general vintage VC6 project), I doubt that is the problem. I've created the baseline empty project now, but it is major code cut and paste, and in an ideal world I like to keep code revisions and version upgrades separate (orthonormal:) to ease troubleshooting.&lt;BR /&gt;
&lt;BR /&gt;
If all else fails, I will do the code cleanup and version switch together, but it is generally easier when only ONE thing changes (API version, OR VS version). &lt;BR /&gt;
&lt;BR /&gt;
The incompatibility between Office 2000 and VS.net 2003 libraries is bigger concern at the moment. I will try with Office XP, but there is a chance that Microsoft deprecated the COM interaction method, (go XML- .net ...)&lt;BR /&gt;
&lt;BR /&gt;
Anyway, please share tidbits you've discovered during upgrade process (intra GS or extra GS), why suffer twice....</description>
      <pubDate>Thu, 17 Feb 2005 17:21:57 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22669#M7963</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2005-02-17T17:21:57Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22670#M7964</link>
      <description>&lt;BLOCKQUOTE&gt;Andras wrote:&lt;BR /&gt;My guess is that a compiler or linker flag is at fault. Try generating a default project with the AppWizard and compare the flags with the flags in your project. &lt;BR /&gt;
 &lt;BR /&gt;
If nothing else works, try creating a new API project, adding your files to it and recompiling.&lt;/BLOCKQUOTE&gt;

This advice is what was most useful to me in the past when moving projects from one release to another and encountering build errors.&lt;BR /&gt;
&lt;BR /&gt;
I actually took the latter route: using AppWizard to create a blank project and adding my files to it. Was the least effort compared to tracking down all of the settings.  (Life was easier with old fashioned makefiles in some ways.)&lt;BR /&gt;
&lt;BR /&gt;
Karl</description>
      <pubDate>Sat, 19 Feb 2005 05:32:49 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22670#M7964</guid>
      <dc:creator>Karl Ottenstein</dc:creator>
      <dc:date>2005-02-19T05:32:49Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22671#M7965</link>
      <description>This project imports the Excel type libraries for some COM operations (Driving Ms Excel:) and that seemed to conflict with the VC7 type libraries.&lt;BR /&gt;
&lt;BR /&gt;
The problem was partially solved by commenting out the #include &amp;lt;atlbase.h&amp;gt; line. That misteriously solved seemingly unrelated (real.h) error messages too.  I meant to use some map, collection, etc. templates, but not yet implemented in this project. &lt;BR /&gt;
&lt;BR /&gt;
Starting afresh with new API versions is last resort, usually I try to change one thing at a time. I wonder if the Examples are updated the same way.&lt;BR /&gt;
This kind of stuff makes development more of a puzzlesolving than a planned and organized craft. The causes and effects are not clearly identified and separated. I think this API DLL development is not in the mainstream of the VS.net target and the peripheral of the apps are not very well/done tested.&lt;BR /&gt;
&lt;BR /&gt;
Currently the only mistery left is that the pSheets= pBook-&amp;gt;Worksheets; &lt;BR /&gt;
statement returns 0x0000 in pSheets, while it was working with VC6 version, and pXL-&amp;gt;Workbook and pXL-&amp;gt;ActiveSheet returns the correct book and worksheet respectively.</description>
      <pubDate>Sat, 19 Feb 2005 18:14:40 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22671#M7965</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2005-02-19T18:14:40Z</dc:date>
    </item>
    <item>
      <title>Re: moving 8.1 projects to 9.0</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22672#M7966</link>
      <description>Happy (kinda) end: solved the excel mistery, so it is working now.&lt;BR /&gt;
The debug runtime complains about some corrupted stack around qSlab, qFill, qMesh property variables, so ACAPI_Get_Property calls might have some sideffect, but luckily it doesn't seem to be a problem there.&lt;BR /&gt;
Projects are updated -at least on the windows side: mac to follow as time allows. &lt;BR /&gt;
&lt;BR /&gt;
In summary version update meant:&lt;BR /&gt;
-weeding out WriteReport and ErrorBeep deprecated function calls&lt;BR /&gt;
-update references in the project properties/Additional Includes to find {API}/Support, /Support/Modules  and  {Compiler}/Include, {Compiler}/PlatformSDK/Include etc.&lt;BR /&gt;
-update target applications/exe s&lt;BR /&gt;
-Change some 81s to 9 in the target names&lt;BR /&gt;
&lt;BR /&gt;
The rest was Microsoft (VS/Office) related mess/confusion.</description>
      <pubDate>Sun, 20 Feb 2005 04:51:57 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/moving-8-1-projects-to-9-0/m-p/22672#M7966</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2005-02-20T04:51:57Z</dc:date>
    </item>
  </channel>
</rss>

