Originally posted by ASB
View Post
- Visitors can check out the Forum FAQ by clicking this link. You have to register before you can post: click the REGISTER link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. View our Forum Privacy Policy.
- Want to receive the latest contracting news and advice straight to your inbox? Sign up to the ContractorUK newsletter here. Every sign up will also be entered into a draw to WIN £100 Amazon vouchers!
Create a form from a worker thread .net
Collapse
X
-
-
Originally posted by jmo21 View PostCan't you just pull the code out of the console app, stick in a win form app, and solve your current issue that way?Comment
-
Have to second (or third or fourth) the new app interop idea.
An alternative way to do that is to communicate through stdin/out rather than pipes... I didn't read all the details to know if that might alleviate some of the problems but it's quite a viable option if they are running on the same box.Originally posted by MaryPoppinsI'd still not breastfeed a naziOriginally posted by vetranUrine is quite nourishingComment
-
Well, the upshot of it is that I have created a wrapper for the public interface of the naughty components. This creates a worker thread on on the it creates a form and then runs a message loop. This gives me an ISynchronizeInvoke from the form a synchronization context.
This expose an identical public interface. When the functions are called the methods are then called via the IsynchronizeInvoke and then they are on the new UI thread.
This seems to work (so far). Bit of a pain because the interface style is lots of parameters into each method call so a fair amount of grunge code to pack and unpack the parameters into objects (ok didn't strictly need to do this but it makes it easier).
Final issue to be resolved was that a bunch of parameters were byref so these need to be manually marshalled back.
There is of course a potential lurking issue if any threads in the client APP are accessing the by ref parameters and expecting to see the values change. But that would be fairly naughty since there is no thread synchronization.
Meanwhile negotiating with the developers of the misbehaving application for a future release which has a less assumptive threading model.
If I do find I'm still stuffed at least I now have the ability to parcel the wrapping code up into a seperate winforms app and communicate with that through remoting or whatever for of IPC I feel like. Also the code is positioned suitablt centrally that I could now do that with zero impact on the client app.Comment
- Home
- News & Features
- First Timers
- IR35 / S660 / BN66
- Employee Benefit Trusts
- Agency Workers Regulations
- MSC Legislation
- Limited Companies
- Dividends
- Umbrella Company
- VAT / Flat Rate VAT
- Job News & Guides
- Money News & Guides
- Guide to Contracts
- Successful Contracting
- Contracting Overseas
- Contractor Calculators
- MVL
- Contractor Expenses
Advertisers
Contractor Services
CUK News
- Streamline Your Retirement with iSIPP: A Solution for Contractor Pensions Sep 1 09:13
- Making the most of pension lump sums: overview for contractors Sep 1 08:36
- Umbrella company tribunal cases are opening up; are your wages subject to unlawful deductions, too? Aug 31 08:38
- Contractors, relabelling 'labour' as 'services' to appear 'fully contracted out' won't dupe IR35 inspectors Aug 31 08:30
- How often does HMRC check tax returns? Aug 30 08:27
- Work-life balance as an IT contractor: 5 top tips from a tech recruiter Aug 30 08:20
- Autumn Statement 2023 tipped to prioritise mental health, in a boost for UK workplaces Aug 29 08:33
- Final reminder for contractors to respond to the umbrella consultation (closing today) Aug 29 08:09
- Top 5 most in demand cyber security contract roles Aug 25 08:38
- Changes to the right to request flexible working are incoming, but how will contractors be affected? Aug 24 08:25
Comment