Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 更改smjobbless对话框KauthorizationEnvironment提示符的文本_Objective C_Authorization - Fatal编程技术网

Objective c 更改smjobbless对话框KauthorizationEnvironment提示符的文本

Objective c 更改smjobbless对话框KauthorizationEnvironment提示符的文本,objective-c,authorization,Objective C,Authorization,SMJobBless有一个对话框提示,告诉用户它正在安装帮助工具,并键入密码继续。我想更改文本 下面的代码没有更改文本,而是将我的自定义文本放在开头,并且仍然显示默认文本。我错过了什么或做错了什么 // Creating auth item to bless helper tool and install framework AuthorizationItem authItem = {kSMRightBlessPrivilegedHelper, 0, NULL, 0}; // Creating

SMJobBless有一个对话框提示,告诉用户它正在安装帮助工具,并键入密码继续。我想更改文本

下面的代码没有更改文本,而是将我的自定义文本放在开头,并且仍然显示默认文本。我错过了什么或做错了什么

// Creating auth item to bless helper tool and install framework
AuthorizationItem authItem = {kSMRightBlessPrivilegedHelper, 0, NULL, 0};

// Creating a set of authorization rights
AuthorizationRights authRights = {1, &authItem};

NSString *promptText = @"Customized Text. Privilege?\n\n";

AuthorizationItem dialogConfiguration[1] = { kAuthorizationEnvironmentPrompt, [promptText length], (char *) [promptText UTF8String], 0 };

AuthorizationEnvironment authorizationEnvironment = { 0 };
authorizationEnvironment.items = dialogConfiguration;
authorizationEnvironment.count = 1;

// Specifying authorization options for authorization
AuthorizationFlags flags = kAuthorizationFlagDefaults | kAuthorizationFlagInteractionAllowed | kAuthorizationFlagExtendRights;

// Open dialog and prompt user for password
OSStatus status = AuthorizationCreate(&authRights, &authorizationEnvironment, flags, authRef);`

使用kAuthorizationRightExecute而不是kSMRightBlessPrivilegedHelper将获得一个只要求输入密码的短文本。。并使用kAuthorizationEnvironmentPrompt,因为环境可以在提示的开头添加其他文本