小编And*_*yer的帖子

在Objective-C中获取路由器mac(没有ARP系统调用)

好的 - 我正在Objective C中编写一个守护进程,它每5秒检查一次连接的路由器mac地址.

我对目标C完全不熟悉,我正在寻找一种更好的方法来做我已经在做的事情.

我正在调用"arp -a"并通过"Task"解析结果:

NSTask *task;
task = [[NSTask alloc] init];
[task setLaunchPath: @"/usr/sbin/arp"];

NSArray *arguments;
arguments = [NSArray arrayWithObjects: @"-a", nil];
[task setArguments: arguments]; 

NSPipe *pipe;
pipe = [NSPipe pipe];
[task setStandardOutput: pipe];

NSFileHandle *file;
file = [pipe fileHandleForReading];

[task launch];

NSData *data;
data = [file readDataToEndOfFile];
Run Code Online (Sandbox Code Playgroud)

我担心这不是很有效率.

有什么建议?我每5秒运行一次这个代码块.

macos bash xcode objective-c

6
推荐指数
1
解决办法
1万
查看次数

NSNotification检测其他程序的崩溃

我正计划编写一个小的守护程序,以检测另一个应用程序是否崩溃,并一直在思考系统将发送NSWorkspaceDidTerminateApplicationNotification,但事实并非如此。

假设我不想创建已启动的过程来简单地重新启动崩溃的应用程序,是否可以通过其他方式检测到崩溃?

也许我可以监视系统日志?这似乎是不适当的负担。

crash macos cocoa launchd nsnotification

5
推荐指数
1
解决办法
329
查看次数

听取所有Apple活动的方式?

我正在寻找一种方法来收听任何程序发送到任何其他程序的所有Apple Events.有一个应用程序,AEMonitor,曾经这样做,但它现在是放弃软件.

有没有一种已知的方法可以通过可可,碳等来做到这一点?

任何帮助很多人赞赏.

-

目标操作系统是10.6

-

Carification:我希望监控所有苹果活动,或至少监测其中的大部分活动.我知道,有可能推出一个应用程序,并听取其不良这样.

macos cocoa applescript macos-carbon appleevents

5
推荐指数
1
解决办法
854
查看次数

sortUsingSelector未排序NSStrings数组

这对我来说很困惑.我有一个功能,这样做:

void ListAllStoredLocations(NSString *SearchTerm){  
NSMutableDictionary *item;  
NSString* filePath = [[NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingString:@"/Preferences/yourprogram.plist"];

item = [[[NSMutableDictionary alloc] initWithContentsOfFile:filePath] mutableCopy]; 

NSMutableArray *ReadStoredArray = [item objectForKey:SearchTerm];
NSMutableArray *SortedArray = [[NSMutableArray alloc] init];
NSString *CurrentResult=@"";

for (int i = 0; i< [ReadStoredArray count]; i++){
    CurrentResult=(NSString *)[ReadStoredArray objectAtIndex:i];
    [SortedArray addObject:CurrentResult];
}

[SortedArray sortUsingSelector:@selector(compare:)];

for (int i = 0; i< [SortedArray count]; i++){
    NSLog(@"%@",[SortedArray objectAtIndex:i]);
}


[item release];
Run Code Online (Sandbox Code Playgroud)

}

哪个在第一个for循环中找到输出NSStrings,如下所示:

LOCATION1

LOCATION2

不是一个位置

LOCATION2

LOCATION3

LOCATION2

我希望输出是按字母顺序排列的:

LOCATION1

LOCATION2

LOCATION2

LOCATION2

LOCATION3

不是一个位置

但是,无论如何,"[SortedArray …

sorting macos objective-c nsmutablearray

4
推荐指数
1
解决办法
9317
查看次数

OSX的网络连接NSNotification?

我只需要在分配有效的IP地址时发布通知.我已尝试通过SCReachability进行轮询,但这似乎效率低下.

有什么建议?这似乎应该很简单,但我已经挣扎了几个小时才能得到任何工作.

macos cocoa objective-c nsnotifications

3
推荐指数
1
解决办法
2698
查看次数

iTextSharp - 如何从项目资源输入图像(PNG)?

我有iTextSharp在VB.net中为我创建一个pdf.一切都在着名,除了现在我想嵌入一个图像.我试过这个:

Dim test = My.Resources.MyImage
Dim logo = Image.GetInstance(test)
Run Code Online (Sandbox Code Playgroud)

这是一个错误:

无法使用这些参数调用"GetInstance"

看起来好像它需要一个路径,并且正在获得System.Drawing.Bitmap类型.

有什么办法可以将项目资源图像添加到我的PDF中吗?提前致谢!

vb.net pdf resources itextsharp embedded-resource

3
推荐指数
1
解决办法
1万
查看次数

Bash输出为Applescript列表问题

这只是让我疯了.我试图用bash读取文件,删除重复项,排序,然后通过applescript显示"列表选择"窗口.

我的$ DATALOG文件的格式如下:

field1 field2

field1 field3

field1 field4

等等...

AppleScript的=awk '{print $2}' $DATALOG | awk ' !x[$0]++' | sort -u | tr "_" " "| sed 's/^/\"/' | sed 's/$/\"/' | tr "\n" "," | sed 's/.$//'

现在,这条线路很棒.在$ Applescript中,我得到这样的输出:

"场2","场3","场4"

这正是我想要的.

现在,我接受输出,并在引号和applescript部分之前添加反斜杠.

Applescript=`echo "tell application \"System Events\" to return (choose from list {$Applescript})"| sed 's/\"/\\\"/g'`
Run Code Online (Sandbox Code Playgroud)

这让我得到了我想要的东西:

告诉应用程序\"系统事件\"返回(从列表{\"字段2 \",\"字段3 \",\"字段4 \"}中选择)

现在,我尝试osascript命令:

osascript -e $ Applescript

我收到一个错误:

4:4:语法错误:预期的表达式但发现脚本结束.(-2741)


所以,我添加引号:

osascript -e"$ Applescript"

我收到一个错误:

17:18:语法错误:预期的表达式,属性或密钥形式等,但发现未知令牌.(-2741)

我不知道这里到底发生了什么,所以我决定复制$ Airport的回声并尝试将其作为一个变量.

机场=tell application …

macos bash applescript sed list

1
推荐指数
1
解决办法
3143
查看次数