Слегка измененная версия @PercyPercy - она не генерирует и просто возвращает ноль, если что-то идет не так :
public String getPathFromMediaUri(Context context, Uri uri) {
String result = null;
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = context.getContentResolver().query(uri, projection, null, null, null);
int col = cursor.getColumnIndex(MediaStore.Images.Media.DATA);
if (col >= 0 && cursor.moveToFirst())
result = cursor.getString(col);
cursor.close();
return result;
}
Взгляните на журнал System
Windows EventViewer ( eventvwr
из командной строки).
Вы должны увидеть записи с источником как «Service Control Manager». например, на моей машине WinXP,
Event Type: Information
Event Source: Service Control Manager
Event Category: None
Event ID: 7036
Date: 7/1/2009
Time: 12:09:43 PM
User: N/A
Computer: MyMachine
Description:
The Background Intelligent Transfer Service service entered the running state.
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Наиболее вероятное место, где можно найти такую информацию, находится в средстве просмотра событий (в разделе «Инструменты администрирования в XP» или при запуске eventvwr). где большинство служб регистрируют предупреждения об ошибках и т. д.