Den 21-10-2015 kl. 11:48 skrev NoMercy: > Hello everyone and thanks for you replies, > > I've a rather advaced question about QThreads (well advanced to my > knowledge anyways) > > I have a Windows service that runs under System user (naturally) but I > want to create and run a thread from within that service and change the > token of that thread so it runs in user evironment. > > and to do so, I thought of something like this; > get QThread::currentThreadId -- Documentation says do not use it but? > get handle of that thread by OpenThread(threadID) > and use SetThreadToken to move thread to user space. > > I'm using 4.8.6 btw > > do you think it is possible? > is this approach safe? > would it be stable? > any possible implications? > if it works, would my main thread can still comunicate through > signals/slots?
If you are going to do native stuff to the threads, then I think you would be wise to create the thread with the native windows calls for it instead of trying to bend a QThread to the rules. The whole notion of threads running as a separate user feels like such a dirty solution anyway, and QThread might muddy the waters even more. For example, signal from one user thread to a slot in a thread running as another user... It just gets weird. Keep it simple, create the thread yourself and separate this completely. Bo Thorsen, Director, Viking Software. -- Viking Software Qt and C++ developers for hire http://www.vikingsoft.eu _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest