static OSErr PrintKind (FSRef *fileRef) { OSErr err = noErr; CFStringRef kindString; char cKindStr[1024]; err = LSCopyKindStringForRef(fileRef, &kindString); if (err) return err; CFStringGetCString(kindString, (char *)&cKindStr, 1024, CFStringGetSystemEncoding()); printf("%s\n", cKindStr); return 0; }
static PyObject *Launch_LSCopyKindStringForRef(PyObject *_self, PyObject *_args) { PyObject *_res = NULL; OSStatus _err; FSRef inFSRef; CFStringRef outKindString; if (!PyArg_ParseTuple(_args, "O&", PyMac_GetFSRef, &inFSRef)) return NULL; _err = LSCopyKindStringForRef(&inFSRef, &outKindString); if (_err != noErr) return PyMac_Error(_err); _res = Py_BuildValue("O&", CFStringRefObj_New, outKindString); return _res; }