IRC Log Viewer » #firebreath » 2011-01-24

IRC Nick Time (GMT-7) Message
Ed____ 09:01 Ayup. I am struggling to add extra dependant dll to my Wix install..
I keep hitting ICE38. I can fix it for my dlls by specifying a regkey, but the the plugin dll itself fails ICE38.
If the plugin does not link to the Dlls, I get no ICE38 error..
Ed____ 09:01 Looks like a commonly known issue related to per-user install. I take it no-one has found a way around this yet?
if I put the all users property into CMakeLists.txt, The MSI builds fine..
taxilian 09:01 Ed____: Yes, this is a known issue with ATL 8 and older
Ed____ 09:01 DoH!
So, does VS10 get me any further?
taxilian 09:01 Yes, 2008 and 2010 don't have this issue
There is also a proposed fix
But I haven't had time
Basically in dllregisterserver check the name of the process and if heat.exe don't redirect
Ed____ 09:01 Ok. I am VS 2008. Have platform SDK 7.0 too.
taxilian 09:01 You must be inadvertently using ATL from platform ask
Grr. Sdk not ask
Dumb autocorrect
Will be online on computer in 20-25 min
On iPhone now
Ed____ 09:01 Cool. So, I can point it back to the ATL in 5.0 or 6.0A?
taxilian 09:01 No idea
Ed____ 09:01 Looks like WinSDK include is lower in list that VCInstall includes
Ah, could be DDK related..
taxilian 10:01 yeah, if the lib dirs and include dirs for winsdk or ddk are pre-empting the packaged ATL it would definitely do it
FireBreath tries to find the correct version, but the global include dirs will probably take precedence in this case
I am now on a real computer =]
Ed____ 10:01 Cool. I have uninstalled the DDK - I dont actually need on this PC anyway.
Building now to see it this will play.
The prep2008 does find atlmfc/include in the VC9 dir, so hopefully, I can tweak the directory list as a next attempt.
taxilian 10:01 that should fix it
Ed____ 10:01 Might be worth this going on the WiX build page as a note that this will show as an ICE38 error..
taxilian 10:01 it does it based on a #define in the ATL headers
Ed____ 10:01 (days in the hour again though..)
taxilian 10:01 be my guest =]
it's pretty easy to edit the docs
Ed____ 10:01 yep. If I get straight, I'll update..
taxilian 10:01 cool, thanks
Ed____ 10:01 Still showing error at the mo.
End of the day here, so I shall look at it fresh tomorrow
taxilian 10:01 okay
wolfmanfx 11:01 hi
taxilian i build a new plugin and packed it into an crx plugin which downloads the setup, also the progress is shown via jquery progress bar
so xpi/cab is missing :)
taxilian 11:01 wolfmanfx: cool! would be neat to see an example/instructions on doing the CRX plugin install method somewhere
wolfmanfx 11:01 you mean how to pack the plugin inside an crx file?
taxilian 11:01 right
wolfmanfx 11:01 np as mentioned when i am done with the xpi/cab i will share my overall experince :)
taxilian 11:01 okay =]
kylehuff 11:01 crx being a chrome extension package?
I started a rough overview with a link to the chrome docs about that on the wiki;
wolfmanfx 12:01 do you know this wix error error LGHT0204: ICE38: Component Engine installs to user profile. It must use a registry
taxilian 12:01 yes
wolfmanfx 12:01 atm i am using nsis but i want to try the wix stuff
taxilian 12:01 what compiler are you using?
wolfmanfx 12:01 vs2010
taxilian 12:01 hmm. you shouldn't be seeing that error, then; do you have platform SDK installed?
wolfmanfx 12:01 i installed wix toolset 3.6
so no
taxilian 12:01 usually that error comes from using an older version of ATL
has nothign to do with WiX
could come from the DDK or the windows platform SDK
vs2010 (not express) shouldn't have that issue, though
wolfmanfx 12:01 its not express
taxilian 12:01 do you have that issue when you try to build FBTestPlugin?
wolfmanfx 12:01 i do not build the testplugin
taxilian 12:01 try it
and see if it works
because if it does, then the problem specific to your plugin
wolfmanfx 12:01 but why my plugin builds
and just the wix project do not
taxilian 12:01 that error is indicating that for whatever reason it couldn't capture the dllregisterserver data
which might be something specific to your setup or it could be something specific to your plugin
the easiest way to know for sure (as opposed to speculating wildly) is for you to try building hte example plugin
and see if that works
wolfmanfx 12:01 k
taxilian 12:01 if it doesn't, it's something to do with your system
wolfmanfx 12:01 I have the Microsoft Windows SDK for Windows Server 2008 installed
taxilian 12:01 ok; that would do it
wolfmanfx 12:01 i am trying to uninstall it maybe it works then?
taxilian 12:01 you probably have the include search directories set so that it is using the ATL headers from the platform SDK instead of the correct ones from vs2010
that would be one option
or you could fix the include path order
wolfmanfx 12:01 ok trying the order thing
atm you wrinting a fb app?
does FB support native plugins? i mean do the like it?
taxilian 12:01 not sure I understand the question
wolfmanfx 12:01 you mentioned that you write an facebook plugin
taxilian 12:01 yes, I am working on a facebook plugin
wolfmanfx 12:01 i was just interested how its going and how FB supports native plugins
taxilian 12:01 well, they don't currently have any deployed
but there is one that will be deployed soon
and this one may or may not be deployed; it's still up in the air
I'm about to send the first version for testing this week
wolfmanfx 12:01 ah so its the first try :)
hope the give a go
taxilian 12:01 well, second try actually
the first try they didn't use FireBreath and it wasn't stable
wolfmanfx 13:01 i fixed the error
taxilian 13:01 what did you do?
wolfmanfx 13:01 by moving my files into InstallDirComp tag
so it was no header fault
taxilian 13:01 ahh
looks just like the other error =]
wolfmanfx 13:01 :)
maybe you should change the wix template
<Directory Id="INSTALLDIR" Name="${PLUGIN_NAME}">
<Component Id="InstallDirComp" Guid="{75d2a359-9dce-59b3-97bd-1ca5b8270a3e}">
<RemoveFolder Id="RemoveInstallDir" On="uninstall" />
<RegistryValue Root="HKCU" Key="SOFTWARE\${COMPANY_NAME}\${PLUGIN_NAME}" Name="Uninstall" Type="string" Value="${FBSTRING_PLUGIN_VERSION}" KeyPath="yes" />
<!-- Put Additional files here: -->
<!-- example:
<File Id="uniqueFileId" KeyPath="yes" Source="SourceDir\filename.ext" />
<!-- -->
taxilian 13:01 could you send me a diff so I can see exactly what the changes you're suggesting are?
wolfmanfx 13:01 it seems that every component needs an registry key
taxilian 13:01 hmm
wolfmanfx 13:01 you know thats my first wix try
taxilian 13:01 yeah; I haven't actually used WiX since I created the FB integration… a year ago
almost exactly
but I'm digging back into it now
wolfmanfx 13:01 ah :)
wolfmanfx 14:01 the HWND i get from onWindowAttached is not a windows (IsWindow fails)
did you changed something (i updated today)
taxilian 14:01 what browser?
wolfmanfx 14:01 all
is tested :)
taxilian 14:01 hmm. is it NULL?
wolfmanfx 14:01 no
taxilian 14:01 is it definitely a PluginWindowWin object? how are you doing the cast/
wolfmanfx 14:01 its a pointer but its not a valid window
taxilian 14:01 ?
wolfmanfx 14:01 yep it worked before
but after the last update
taxilian 14:01 that's not what I ask
is it *still* a pluginwindowwin?
how are you doing the cast?
wolfmanfx 14:01 FB::PluginWindowWin* pNativeWin = m_pWnd->get_as<FB::PluginWindowWin>();
taxilian 14:01 hmm. and it's not throwing an exception?
wolfmanfx 14:01 no
taxilian 14:01 very weird… when was the last time you updated before this?
wolfmanfx 14:01 before the weekend
taxilian 14:01 let me see if I can find anything
wolfmanfx 14:01 maybe has todo with your windowless stuff
taxilian 14:01 you don't have FB_GUI_DISABLED set or anything silly like that, right?
wolfmanfx 14:01 nope
i do not pass any params to the prpe scripts
taxilian 14:01 and you have actually stepped through to see that it's hitting the paths you think it's hitting?
that wouldn't need to be passed to the prep script; it would be set in your PluginConfig.cmkae
wolfmanfx 14:01 i am right now in the debugger the cast is ok and i also get something back on getHWND()
taxilian 14:01 ok
let me see if I can reproduce it
I ask because once I spent time trying to help someone debug something and it wasn't even hitting the path he thought =]
hypothetically if it were a windowless problem then it would be a PluginWindowlessWin instead of a PluginWindowWin
wolfmanfx 14:01 ok i just thought maybe you touched something while you worked on the windowless feature
Maybe you should add an assert in NPP_SetWindow
taxilian 14:01 there should be all the checks we need. I'm stepping through it now
wolfmanfx 14:01 and check IsWindow((HWND)window->window)
taxilian 14:01 hmm. something weird is definitely going on
wolfmanfx 14:01 puh :) so i am not alone
taxilian 14:01 nope
I have a theory, give me a few
glad you saw this
wolfmanfx 14:01 but maybe this assert helps on windows
to catch such an error
taxilian 14:01 yeah; I will think on it
probably will add it
there is another assert that I have added
that should prevent this from happening again
wolfmanfx 14:01 i love asserts :)
taxilian 14:01 but that wouldn'lt be a bad additional sanity check
give me just a minute and I should have a fix for you
wolfmanfx 14:01 k i will try it asap
FB_GitHubBot 15:01 FireBreath: firebreath-1.4 Richard Bateman * f297487 (2 files in 2 dirs): Fixed bug in window handling for windowed plugins -
FireBreath: master Richard Bateman * f297487 (2 files in 2 dirs): Fixed bug in window handling for windowed plugins -
taxilian 15:01 try that
wolfmanfx 15:01 k
so its working again thx :)
taxilian 15:01 thank you for letting me know; might need to put out b3, since that was in b2 :-/
wolfmanfx 15:01 uh yep true its hard bug
you dont have unit test regarding rendering?
taxilian 15:01 it's not an easy thing to unit test
wolfmanfx 15:01 or using the hwnd to render something on it?
taxilian 15:01 FBTestPlugin does, but it was set to windowless
wolfmanfx 15:01 ah
taxilian 15:01 I need to probably change the FBTestPlugin page to instantiate it both with and without a window
wolfmanfx 15:01 its an good idea
taxilian 15:01 gotta run
be back in an hour or so
wolfmanfx 15:01 k cu
taxilian 22:01 wow… the IRC room is sure quiet lately
maybe it's something I said… ;-)