|IRC Nick||Time (GMT-7)||Message|
|kai__||03:08||Set TabProcGrowth to 0 cause IE 10 failed to load Plugin,is it a problem?
I use firebreath to make a plugin,It works well while I open it in IE 10
then I create a new website project in visual studio 2010,add the html which hosts the plugin into the project
when debugging the project,weird things happen
the plugin failed to load
then I try to new ActiveXObject but get "automation server can't create object" error
but if I open an new IE 10 window,it works well
even call new ActiveXObject in script works
|McEasy||10:08||Hey, have a question regarding updating the plugin. I read through the wiki and this SO question (http://stackoverflow.com/questions/7031125/can-i-install-plugin-without-restarting-the-browser-and-machine) and came to the conclusion that there isn't a cross platform standard to check for updates to the plugin. Omaha and the update engine exist, but they're platform specific. Is there any other way to more standardize the updating or are these the best opt|
|taxilian||10:08||those are the best options I know|
|McEasy||10:08||Fair enough, another question then. How did you name the folder and file for the windows plugin? Or did you not use wix's auto created installer for that and did it yourself.|
|taxilian||10:08||I changed the wix installer
well, back in the day I used a different type of installer
but you can change the wix installer
it isn't hard
just remember to change the template and rerun the prep script so it regenerates it
(*not* fbgen, just the prep script)
|McEasy||10:08||hah, yup, never fbgen ;)
The wix template you're referring to, is that the file in projectname/win/wix/?
|McEasy||10:08||Awesome, I'll look into doing that! I noticed there's no mention of linux for an installer or updater.. is that because Linux has no way of doing these tasks (well)?|
|taxilian||10:08||it's because I don't develop plugins for linux and nobody else has bothered to write one|
|McEasy||11:08||Fair enough, thanks for the help (and prompt response)!|
|kylehuff||11:08||the lack of a linux installer is probably because there really isn't much to it. all that is required is to copy the .so and create any desired links. wham, bam, done.|
|McEasy||11:08||Wham bam thank you ma'am. But yeah that's what I've gathered.. just a simple copy script and call it good.|
|McEasy||14:08||Back to the whole updating thing. First, how do you set the plugin version? I haven't noticed anywhere that lets you specify version #.|
|McEasy||15:08||grep saves the day! Found it in the pluginconfig.cmake file.|
|mattvv||15:08||anyone had any success compiling with multiple cores on windows
i've triped /mp and /j and both are giving warnings and being dsiabled
ie/ Command line warning D9030 : '/Gm' is incompatible with multiprocessing; ignoring /MP switch
|McEasy||15:08||I'm running a vm of windows on xeons with no issue, so not sure what the multi core problem is. ><|
|mattvv||15:08||my build is just super slow, i'm trying to set the /mp flag in my cmakelists and getting that error
are you using that flag?
i can compile without it just only uses one core and is sooo slow
|McEasy||15:08||I don't think so
oh, yeah my compiling was god awful slow
It still works though, right? Easy solution is deal with it.. but that's just me
|mattvv||15:08||oh weird, looksl ike its to do with debug mode
if i use release for build it compiles fast
so i'm guessing VS is passing this /gm in debug mode
god damnnnit vs
wait the /mp flag works with release but not debug?
Well, glad it works then!
but oh god its fast to compile for release
|McEasy||15:08||now I need to add that flag so I never have to wait 10+ minutes for it.|
|mattvv||15:08||yup, i'm gonna hunt through vs and see if there's a way to turn of /gm for debug mode
i think its for incremental build stuff
|McEasy||15:08||Smart man, let me know if you find it! I'd be more than happy to reduce my compile times|
|mattvv||15:08||will do will do!|
|mattvv||15:08||my collegue is going to kill me though|
|mattvv||15:08||he's been on this project for about 3 months
this is my first day on it
|McEasy||15:08||haha, high 5 for you.|
|mattvv||15:08||the build is like 10minutes
can't wait to see his face when i add this stuff
|McEasy||15:08||"let me just compile this real quick..."|
|McEasy||15:08||That's when you know you're a boss.. bragging about compile times.|
visual studio is a maze of options
|McEasy||15:08||It really is.. I normally develop on linux command line so visual studio is crazy to me. It is super powerful.. but still brand new to me.|
|mattvv||15:08||found the sucker hidden in there, it's under c/c++ and code generations
in the properties menu on your project
unfortunately i don't think theres a way to change that in cmake
so might have to change that each time
|mattvv||15:08||looks like its a visual studio default
i wonder if i can change that somehow
|McEasy||15:08||looking at it now
ah, there it is
and how did you set the /mp flag?
|mattvv||15:08||i did that in my cmake options|
|McEasy||15:08||hmm.. haven't compiled on windows in awhile but can't tell if it's going faster or not ><|
what vm software you running
did you dedicate all our cores
|McEasy||16:08||oh geez.. good point.|
|McEasy||16:08||1 of 16.. herp derp|
|mattvv||16:08||there ya go hehe|
|McEasy||16:08||well, knowledge for the future!|
|mattvv||16:08||could have been mining bitcoin on those cores the whole time
|McEasy||16:08||my company might frown on that.. but at the same time if I split the profit I don't think they'd care
but also have no idea what that really is.. all I know is that bitcoin is a virtual currency and there are a set amount in existence..
basically you can 'earn' bitcoins by dedicating processing power
but you really only can get anything valuable with it with a rediculous amount of processing power
|McEasy||16:08||I think dual xeons with hyperthreading fits the bill!|
|mattvv||16:08||haha it's better then whatever i have
i have whatever last years mac retina laptop is
|mattvv||16:08||yeah something laptoppy
|McEasy||16:08||intel mobile, done!|
|grok||16:08||Can I pass a Uint8ClampedArray to my plugin and read it as a byte array?|
|mattvv||16:08||anyone you guys ever used the wix installer?
i'm fighting with it right now hehe
|McEasy||16:08||yup, again haven't run into issues with it
But I had to get a specific version... 3.7 I believe
|mattvv||16:08||yup i'm using 37, did it just work from your generated files?|
|Oneboxjackal||16:08||I am wondering if any of you could help me with my inherited class from PluginWindowWin. I am trying to create my own winproc, but the new class is not being called by onWindowAttached|
|McEasy||16:08||Yeah, after installing 3.7 I just rebuilt the project and the .msi created was perfect. Soooo.. that's the extent of my troubleshooting with it.|
i just regenerated mine so hopefully it will do that
that would be unreal
|McEasy||16:08||rebuilding it will most likely fix it, but cross your fingers anyways
Oneboxjackal: sorry, I'm not nearly knowledgeable enough about this framework to help you out ><
|Oneboxjackal||16:08||Me, neither, obviously... it's quite extensive. Not sure if I grasped all of it yet....|
|McEasy||16:08||No joke, it's crazy how big this project is. Tax (and others) put a loooot of time and effort into it.|
has anyone tried sending and receiving small amounts of binary data with their plugin?
|McEasy||17:08||I have, yes.|
I'm trying to send and receive data from an HID device
|McEasy||17:08||lol, that's exactly what I did
|mattvv||17:08||damn McEasy this wix stuff ain't so easy
i'm getting installs to user profile. It must use a registry key under HKCU as its KeyPath, not a file.i'm getting an error: installs to user profile. It must use a registry key under HKCU as its KeyPath, not a file.
now to figure out how to fix this thing
|McEasy||17:08||really? ouch ><
grok: that help at all?
can you do the regsvr32 way fine?
that works fine
just something up with my wix config i'm gonna mess around
|McEasy||17:08||haha, good luck!|
|grok||17:08||hmm, I was hoping that I could use a Uint8ClampedArray or something.
McEasy, what is your device?
|McEasy||17:08||I'm not claiming I know what's best, but why not just send the information to the plugin and let the plugin deal with it?
|grok||17:08||yeah, I could do that. I was hoping I could make something capable of handling arrays of data.
are you using hidapi? libusb?
|McEasy||17:08||it's been awhile.. I honestly don't remember, sorry ><|
|Oneboxjackal||17:08||Has anyone ever written his own WinProc to receive messages???|
|taxilian||17:08||Oneboxjackal not sure what you mean|
|Oneboxjackal||17:08||I was trying to make my MyPluginWindowWin class take over in onWindowAttached, but then onWindowAttached is apparently not being called.|
|taxilian||17:08||you're trying to subclass the window?|
|Oneboxjackal||17:08||Yes. To write my own WinProc|
|taxilian||17:08||what is your goal?
what are you trying to accomplish?
|Oneboxjackal||17:08||I have a 3D mouse which I need to query via GetMessage to find out which way it's been moved...|
|taxilian||17:08||so you just need to get a specific custom window message?|
|Oneboxjackal||17:08||One specific one for the axes, yes. There is an API to talk to the mouse. Hand in your windows' HWND and get the messages....
You wouldn't have an example like that????
|taxilian||17:08||if you just need a custom windows message just add a handler for WindowsEvent
|Oneboxjackal||17:08||Ok.... I haven't done much WinAPI stuff lately... been a Mac guy for the last 8 years.
I'll have a look at the example, thanks!
|taxilian||17:08||it's not an example, just more info about that
but look at WindowsEvent
it just wraps an event from the winproc
there are ways you can provide your own winprov, but subclassing can cause some issues
|Oneboxjackal||17:08||Where do you add the handler, then?? In PluginWindowsWin?|
|taxilian||17:08||you bascially subclass PluginWindowWin
but it's a pain
and I don't recommend it
|taxilian||17:08||because using WindowsEvent is *really really easy*|
|Oneboxjackal||17:08||For you, perhaps... LOL!|
|taxilian||17:08||add a handler just like the examples for AttachedEvent and DetatchedEvent|
|Oneboxjackal||17:08||I am fighting with it for 3 days now...|
|taxilian||17:08||then go look at the code for WindowsEvent to see what methods to call to get the info you want|
|Oneboxjackal||17:08||I'll check... thanks!|
|mattvv||17:08||anyone know where the projectname_auto.wxs is generated, it looks like the generated file is giving me issues with building wix|
|taxilian||17:08||mattvv it's generated by heat
and most likely your issue is that regsvr32 called on your .dll doesn't work
|mattvv||17:08||taxilian: so the regsvr32 version works
but if i run the wix builder i get an error with building it
|taxilian||17:08||pastebin your _auto.wxs file|
|taxilian||17:08||nope, DllRegisterServer isn't working
so, it could be a few things
1) did you build with a _x64 prep script?
|mattvv||17:08||taxilian: just using the prep2012.cmd, so no just the basic 32|
2) do you have any dependencies on external DLLs?
|mattvv||17:08||Yes, a bunch of c++ dependencies but all of these are handled in the cmakelist
no external DLLs though
everything should be compiled into our own dll
|taxilian||18:08||hmm. well, here is the tool that is failing: http://wix.sourceforge.net/manual-wix3/heat.htm|
thanks for the docs :)
i'll poke around and see whats up
|taxilian||18:08||figure out why that tool isn't able to harvest your COM info and you'll be most of the way there|
|Oneboxjackal||18:08||Hi, I am back
Do you have any pointers on how I would tie in GetMessage() for the message queue?
I don't think I should be using while(GetMessage(...)) as that would probably freeze up
|taxilian||18:08||yeah, that would cause issues. are you sure you need a GetMessage?|
|taxilian||18:08||most likely you'll want to be using a different thread then
I haven't used GetMessage so I'm not 100% sure of details
but you don't control the main thread
so you can't rely on it
|Oneboxjackal||18:08||Main thread as in the browsers'?|
|taxilian||18:08||the main thread as in the thread that all calls come to you on
the one that you didn't create
|taxilian||18:08||you must not ever block it
that means you can't add a loop where you're waiting for a message
you could peekmessage and only get if there is one there, but that doesn't help 'cause you have no way to keep it happening
|Oneboxjackal||18:08||Could do it every 50th of a second...|
|taxilian||18:08||you could do that, using a timer
it might even work
and it might not cause too much slowdown for the browser
|taxilian||18:08||but if you can do it on another thread you're better off|
|Oneboxjackal||18:08||The browser is going to be running Google Earth, though|
|taxilian||18:08||not sure how that changes anything|
|Oneboxjackal||18:08||Oh, just writing out loud. Wondering about the slowdown you mentioned before while GE is running.|
|taxilian||18:08||well, this is stuff I could probably figure out, but I've not done exactly what you're doing, so you'll have to figure it out the way I would: try it out, see what happens
use the debugger
|Oneboxjackal||18:08||Having trouble hooking into the debugger. All I am getting in VS2012 is a red circle with a question mark in it.
I looked at your documentation, but can't do it. Hard to write code when you can't debug and see values...
|taxilian||18:08||vs pro or express?|
|mattvv||18:08||taxilian: looks like my regsvr32 isn't working actually, what's the best way to see whats happening - when i run regsvr32 i get a "failed to load
|taxilian||18:08||mattvv it's most likely a missing DLL dependency that you dont' realize you have
use dependency walker to try to debug it is what I'd do
i'll try that out
|mattvv||18:08||ok taxilian - looks like i found my missing dependencies
i'm using link_directories to load them, but i guess they are not being found
|taxilian||19:08||DLLs don't link in that way|
|mattvv||19:08||sorry i mean a .lib|
|taxilian||19:08||if it were a .lib that wasn't being found, it wouldn't compile
you have a library that has both a .lib and a .dll, and you're linking the .lib?
|mattvv||19:08||yeah it looks like i have a directory that has a bunch of .lib's and .dll's for ffmpeg
that need to be included
(i inherited this project today)
and in dependency walker i'm seeing that those .dll's in the snapshot have an error opening
|taxilian||19:08||right. so you are linking the .lib, but the .lib is just a wrapper to the .dll
it helps make things easier to link against them, but you still need the .dll to be in the output directory when the wix installer builds
|mattvv||19:08||so whats the easiest way to do that in the build process|
add it as a post-build command for the plugin project to copy it into the output dir
|mattvv||19:08||so just copy each dll directly from that source dir to output dir|
|taxilian||19:08||use cmake -E copy to do the copy to keep it cross-platform|
|mattvv||19:08||using custom command|