NetTalk Central

Author Topic: Multi-Dll build goes belly up  (Read 4330 times)

ccordes

  • Sr. Member
  • ****
  • Posts: 384
    • View Profile
    • Email
Multi-Dll build goes belly up
« on: August 22, 2010, 12:36:43 PM »
Building a portion of my multi-dll app and the build stops when it reads the _ni.clw file of the included dll app.
The ide still works, but the build stops and sits there. I can't close the IDE - the build is running and I can't stop the build. :(
This was going pretty well, too. I had built the app and have it working so I think I am missing something simple.

I tried removing the sln file and opening the app to recreate it.
I deleted the _ni.clw file in the child app re-generated and compiled, build the parent - no joy.
this is happening in the webserver app (the one that exports the webserver)

I have the following structure -
Main-app - main.exe
uses data.lib, webserver.lib and inventory.lib
Has one procedure - Websever - External.
-----------------
webserver app - webserver.dll
uses data.lib, inventory.lib
Has websever - exported
 ---  webhandler - exported
 --- --- IndexPage (Netwebpage)
 --- --- --- PageHeader (Netwebsource) - with the menu extension
 --- --- --- PageFooter (NetWebSource)
 --- BrowseInventory - External
 --- UpdateInventory - External
---------------------
Inventory app - Inventory.lib
uses data.lib
Has WebServer (not exported)
 ---  WebHandler
 --- --- IndexPage
 --- --- --- PageHeader (Netwebsource) - with the menu extension
 --- --- --- PageFooter (NetWebSource)
 --- BrowseInventory - Exported
 --- UpdateInventory - Exported
---------------------

Chris c










Real programmers use copy con newapp.exe

kevin plummer

  • Hero Member
  • *****
  • Posts: 1195
    • View Profile
    • Production Accounting and Software Payroll
Re: Multi-Dll build goes belly up
« Reply #1 on: August 22, 2010, 07:09:38 PM »
What version of NTW and Clarion are you running?

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: Multi-Dll build goes belly up
« Reply #2 on: August 22, 2010, 11:30:04 PM »
does the example compile for you ok?

ccordes

  • Sr. Member
  • ****
  • Posts: 384
    • View Profile
    • Email
Re: Multi-Dll build goes belly up
« Reply #3 on: August 23, 2010, 04:36:44 AM »
NT 29, clarion 7.2,7350

The example works which is why I was wondering what went wrong <g>
I've gotten it down to this - the generation of the _ni.clw file.
  I want to be able to build and test modules on their own so I put each app in its own work directory and the complete solution in it own. When a module is released it copies the release DLL to the top directory for the others to use.
  In order for this to work, each module would need to have its own Webserver, handler and indexpage. I think this is where the trouble is. When this sub-app is generated, the _ni.clw file includes the index page and references to the pageheader and footer as well. When I remove everything from the sub-app except the procedures being exported, it works fine.
  I really don't want to tinker with the templates, but I would say that if the section that creates the _ni.clw file were to have an #IF(ProcedureExported) stuck in there, the _ni file would only have references to the exported bits.
It is really handy to be able to test sections in isolation when I'm dealing with CSS code.
Real programmers use copy con newapp.exe

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: Multi-Dll build goes belly up
« Reply #4 on: August 24, 2010, 10:23:13 AM »
>> I want to be able to build and test modules on their own so I put each app in its own work directory and the complete solution in it own.

If you want to do that, then that's up to you. I personally don't do it that way so I can't really comment on whether that works or not.

>> In order for this to work, each module would need to have its own Webserver, handler and indexpage. I think this is where the trouble is.

yes, you definitely can't have multiple web server procedures. So that's out for starters. That also implies not multiple web handlers.

>> It is really handy to be able to test sections in isolation when I'm dealing with CSS code.

I have no idea how multiple handlers or servers affects CSS. You can alter the CSS without so much as recompiling.

Chris, I think you have some master plan of how it will ultimately pan out, but I also think you may be way ahead of yourself right now. You might be well advised to start by making a single-app for now, and then breaking it into multiple dll's later on when you have more familiarity with the architecture, and how it fits together.

I also strongly recommend you think about attending the training, either on-site, or on-line, in Denver in October. (see here http://forums.capesoft.com/BrowseEntries?Topic=31)

There's a learning curve involved here as lots of new technologies come together, and I think the training will help you climb the learning curve very quickly.


ccordes

  • Sr. Member
  • ****
  • Posts: 384
    • View Profile
    • Email
Re: Multi-Dll build goes belly up
« Reply #5 on: August 24, 2010, 10:44:10 AM »
If I get this working, I will have the money to go. :D
I've got the multi-dll stuff worked out well enough so that I can continue working with multple apps in one or more solutions and bring them together for the completed server. Not sure what happens when I introduce the Odd Job stuff to bring in the PHP parts or for multiple servers.
I thought that the rec not found error was connected with the multi-dll issues but apparently, it isn't, so I'm moving forward with the in-line buttons. I don't like ignoring a problem as basic as that, but I'm stumped. Hoping someone will mention something I haven't tried yet.  ::)

chris c
Real programmers use copy con newapp.exe

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: Multi-Dll build goes belly up
« Reply #6 on: August 24, 2010, 10:32:23 PM »
you need to add OddJob to the Data DLL - because that's where the NetTalk code is, for PHP support.

cheers
Bruce