void PathHelper::RemoveFromPath(CStdString sPath) { CStdString sFullPath = GetProcessPath(); sFullPath.ToLower(); sPath.ToLower(); if ( sPath.Right(1) == _T("\\") ) { sPath = sPath.Left(sPath.length() - 1); } int nStart = (x64_int_cast)sFullPath.find(sPath); while (nStart >= 0) // there may be multiple copies { int nEnd = nStart + (x64_int_cast)sPath.length() + 1; sFullPath = sFullPath.Left(nStart) + sFullPath.Right(sFullPath.length() - nEnd ); sFullPath.TrimRight(); sFullPath.TrimLeft(); if (sFullPath.Left(1) == _T(";")) sFullPath = sFullPath.Mid(1); sFullPath.Replace(_T(";;"),_T(";")); nStart = (x64_int_cast)sFullPath.find(sPath); } SetProcessPath(sFullPath); }
void PathHelper::RestoreOriginalPath() { SetProcessPath(m_sOriginalPath); }
GarageThread::GarageThread(QString processPath) { processRuning = 0; qDebug()<<processRuning; SetProcessPath(processPath); }
void GarageThread::Run(QString processPath) { SetProcessPath(processPath); run(); }