繁体   English   中英

尝试打印时出现 EXC_BAD_ACCESS

[英]EXC_BAD_ACCESS when trying to print

所以,我正在尝试测试打印 function ,但我不断收到EXC_BAD_ACCESS错误,指出我在代码的这一部分:

[op runOperationModalForWindow:(NSWindow*)[core window]
                      delegate:self
                didRunSelector:
 @selector(printOperationDidRun:success:contextInfo:)
                   contextInfo:NULL];

上面的代码直接来自 Apple 的开发者文档。

我在这个代码块之前放置了一个断点,看起来[core window]绝对不是NULL并且已分配。

那么,怎么了? 有任何想法吗?


更新:

试过这个:

[self setPrintView:[[[NSTextView alloc] initWithFrame:NSMakeRect(0,0,200,200)]
  retain]];

[[self printView] setString:[[[[core editor] currentDocument] editorView] string]];
[[self printView] setHidden:NO];

NSPrintOperation *op = [NSPrintOperation
                        printOperationWithView:[[self printView] retain]
                        printInfo:nil];

[op setCanSpawnSeparateThread:YES];
[op setShowsPrintPanel:NO];
[op runOperation];

我现在得到:

*** -[NSStorage insertElement:atIndex:]: message sent to deallocated instance 0x121267ff0

我刚找到它:

诀窍是在打印NSTextView结束时release我的 NSTextView。

       ...
       [printView release];
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM