попробуйте в коде агента заменить "agent:select:" на "agent:open:"
Пользователь решил продолжить мысль [time]23 Декабрь 2015, 23:38:54[/time]:
Ну или "допилить" url перед передачей программе-открывашке с помощью sed. По крайней мере у меня подобная команда вполне работает:
totem "$(echo 'agent:open:\\infolan.by\fs\vika\s206d0\128 ударов сердца в минуту (We Are Your Friends).2015.Sun.avi' | sed -e 's/\\/\//g' -e 's/agent:open/smb/' -e 's/\/vika\//\/ViKa\//')"
Другой разговор, что кроме Totem (у меня Gnome) никто (ни smplayer, ни gnome-player) не захотел воспроизводить файлы, чей адрес начинается с "smb://". Скорее всего в идеале было было сначала смонтировать куда-нибудь шару, а потом открывать файл.
Пользователь решил продолжить мысль [time]24 Декабрь 2015, 02:27:56[/time]:
Посмотрел исходники, которые Вы прикрепили:
в main.cpp:
int main(int argc, char *argv[])
{
...
Agent w;
w.getCmdLine(args);
...
}
в agent.cpp:
void Agent::getCmdLine(QStringList s)
{
QString st;
if (s.length()>1) {
st = s.at(1);
if (st.contains(QRegExp("^agent:open:")))
{
st.replace(QRegExp("^agent:open:"), "smb:");
st.replace("\\","/");
st.replace("/vika/","/ViKa/");
QString extracted;
QRegExp regexp;
int pos;
regexp.setPattern("smb://.*/.*/.*/.*/.*");
pos = regexp.indexIn(st);
if (pos > -1)
{
extracted = regexp.cap(0);
}
//QMessageBox::information(this,trUtf8("Домашний агент"),trUtf8("Открытие файла:\n \"%1\"").arg(extracted));
QSystemTrayIcon::MessageIcon ic = QSystemTrayIcon::MessageIcon(QSystemTrayIcon::Information);
trayIcon->showMessage(trUtf8("Домашний агент"), trUtf8("Открытие файла:\n \"%1\"").arg(extracted), ic, 5000);
QProcess *proc = new QProcess;
proc->start(QString("/usr/bin/vlc \"%1\"").arg(extracted));
}
}
}
т.е.
1. Код отличается от того, которые Вы написали в первом сообщении.
2. Для открытия файла используется VLC.
Попробуйте перекомпилировать программу из этих исходников или привести свою в соответствие с этими исходниками ("agent:select" замените на "agent:open", а вместо nautilus вызывайте vlc).