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
-
Can't you just pull the code out of the console app, stick in a win form app, and solve your current issue that way? -
Sadly not because its maintained and owned by somebody else.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
- How IR35 inflated an £8.5bn consultancy bill — and tests Burnham at the Budget Aug 28 07:47
- Autumn Budget 2026: FCSA’s 5 contractor asks of John Healey Aug 27 04:15
- Andy Burnham's Zoom gripe doesn’t apply to IT contractors, say recruiters Aug 26 03:41
- Check your Loan Recall paperwork for the Isle of Man: it could matter Aug 25 03:27
- Budget 2026: Contractor advisers ask for ‘IR35 reset’ Aug 24 04:57
- Why might an umbrella company fail to pay its total tax bill to HMRC? Aug 18 06:08
- Contractors, here are the late payment fixes that the Lords just turned down Aug 17 08:03
- How will HMRC's Direct Debit plan affect contractors paying VAT and PAYE? Aug 13 23:54
- HMRC's new 'reckless' tax offence: an IR35 game-changer for contractors? Aug 13 13:50
- “I’m not a Machiavellian overlord”: Adrian Sacco breaks his silence on the Contractor Loan Recalls Aug 13 06:50

Comment