📄 2003-april.txt
字号:
--------------------------------------------------------------------------------This isn't really a issue. What it means is a dll got loaded, the debugger cannot find any symbols for the associated dll. If you want to have the symbols (highly recommended) then go to msdn.microsoft.com and look up symbols. Download the ones for your platform and make the necassary mod's like setting:_NT_SYMBOL_PATH=(install path)quote:--------------------------------------------------------------------------------, the other is "{2984} client block at 0x049D2E00, subtype 0, 88 --------------------------------------------------------------------------------Use long _CrtSetBreakAlloc( long lBreakAlloc ); where lBreakAlloc is the number inclosed in the {} to determine where your memory leaks are occuring. You can dynamically break in the watch window also. Read up on the _CrtxXX functions in MSDN.I have questions according to your answer Thank you Mick_2002 and rsmemphis,I have some questions/answers according to your answer:1. IgesAcis is a new class I built, its base class is CDocument. I add some codes to translate the data between ACIS and IGES. ACIS is a graphics platform and base on Visual C++. So I think this sentence is right: IMPLEMENT_DYNCREATE(IgesAcis, CDocument)2. Should I download symbols from this website "http://www.microsoft.com/ddk/debugging/installx86.asp"? I can download "debugging tools for windows" from there. How to use it?3. I am a beginner of VC. Can you tell me how to use _CrtSetBreakAlloc to check memory leaks? Can you give me the code?4. I have some additional information about my project. I have a win32 console application which is a single cpp document. It include some functions and an main() function. I build a MFC, and want to move the console application into my project. So I build a new class IgesAcis, and build some functions(they have the same name and code as the relevant functions in the cpp file) in the new class. So some problem occured. Because of the quit mode between console application and MFC is different, my project will pop up error messege when I close the window. I can not use printf() to output some information. Maybe my project have some memory leaks,but I can not find them. These are all the information I know now about my program.Can you help me to solve the problem? I do not know if my statement is clear. Can you understand me?with regards,lzguo2003-4-11Re: I have questions according to your answer quote:--------------------------------------------------------------------------------Originally posted by lzguo 2. Should I download symbols from this website "http://www.microsoft.com/ddk/debugging/installx86.asp"? I can download "debugging tools for windows" from there. How to use it?--------------------------------------------------------------------------------When you download the symbols and install them and set the _NT_SYMBOL_PATH the IDE will be able to load the symbols when you are debugging for system dll's etc. That is you'll be able to see which Kernel32 call was made etc. It's just very helpful after you have gained enough experience to deduce what is going on.quote:--------------------------------------------------------------------------------3. I am a beginner of VC. Can you tell me how to use _CrtSetBreakAlloc to check memory leaks? Can you give me the code?--------------------------------------------------------------------------------Bear with me, I haven't had a need to use MFC since 1999.When your program exits (and _CrtDumpMemoryLeaks() is called for you by MFC depending on marcos being set whichever).If you have memory leaks this will output to your output window in the debugger:Data: < P > E0 50 8D 02 03 00 00 00 03 00 00 00 01 00 00 00 {92} normal block at 0x028D5040, 3 bytes long.The number in {} is the allocation block which are generally static. Early in your code (init code) add: _CrtSetBreakAlloc(92);Recomplie and start debugging.When whatever piece of code allocates for block 92 it will break and you can see which piece of code is leaking memory, fix it.quote:--------------------------------------------------------------------------------4. I have some additional information about my project. I have a win32 console application which is a single cpp document. It include some functions and an main() function. I build a MFC, and want to move the console application into my project. So I build a new class IgesAcis, and build some functions(they have the same name and code as the relevant functions in the cpp file) in the new class. So some problem occured. Because of the quit mode between console application and MFC is different, my project will pop up error messege when I close the window. I can not use printf() to output some information. Maybe my project have some memory leaks,but I can not find them. These are all the information I know now about my program.--------------------------------------------------------------------------------Without you zipping up your project and posting here I can't really tell, beause your problem is generic.As far as debugging. MFC has a TRACE macro you can look this up in the IDE help. Or you can use the <crtdbg.h> functions like _RPT0() to output debug strings to your debuggers output window which is what TRACE wraps as far as I remember.-------------- next part --------------A non-text attachment was scrubbed...Name: MyMFC.rarType: application/octet-streamSize: 252325 bytesDesc: not availableUrl : http://lists.cs.columbia.edu/pipermail/acis-alliance/attachments/20030414/0455ec2d/MyMFC-0001.objFrom muthler at bv.tum.de Mon Apr 14 09:17:22 2003From: muthler at bv.tum.de (Alexander Muthler)Date: Mon Apr 14 02:19:37 2003Subject: [Acis-alliance] a question about InterOpIn-Reply-To: <002201c3022e$0b516260$af501e0a@t6>Message-ID: <OIEEJLMIJOEBJHANNPMHGEKOCFAA.muthler@bv.tum.de>Hi Liu,it is very important to link only the iges-libs of interop with your code,not the iges-libs of ACIS R8. This could cause the error. Check yourmakefile, resp. the compiler-settings.Greetings,Alex-----Original Message-----From: acis-alliance-bounces@ground.cs.columbia.edu[mailto:acis-alliance-bounces@ground.cs.columbia.edu]On Behalf Of lzguoSent: Monday, April 14, 2003 4:32 AMTo: acis-alliance@ground.cs.columbia.eduSubject: [Acis-alliance] a question about InterOpDear acis-alliance members, I am Liu zhiguo from Jilin University in China. Now I have installedInterOp R10 and ACIS R8. I have compiled a project to translate *.sat fileto *.IGS file. The code is mainly the sample file of InterOp on ACIS toIGES. What I have done is only copy the code to my project. I have establisha new class IgesAcis in my project and put all the sample codes in thatclass. I have passed the compiling and linking. When I run the program, Ican read a sat file and found a igs file by checking AcistoIges inTranslator. But when I want to quit the program, the program will pop up aerror message of memory. I have visited http://www.codeguru.com/, and seeked help. Everyone saidthis a problem of memory leaks. But I can not find any memory leaks in thecodes(the only possible place will be class IgesAcis). Now I paste thequestion and answer in codeguru(question.txt) and my code(mymfc.rar) here. I except to receive your help, thank you very much.Liu zhiguo2003-4-14From gp at beta-cae.gr Mon Apr 14 14:17:23 2003From: gp at beta-cae.gr (G. Pentsas)Date: Mon Apr 14 06:17:42 2003Subject: [Acis-alliance] ACIS memory managementMessage-ID: <1050315444.27869.3.camel@asterix>Hello to all,I am trying to develop an application on an SGI machine. The mainproblem I have is with the memory and error handling of ACIS. Is there away to completely disable error handling by ACIS ? I don't want it totrap signals because when my code generates a segmentation fault, itdoesn't crash but instead generates an error and the system kills theprocess without writing core. Any help would be appreciated.I am usingACIS R10 SP4 but I'm sure the error trapping mechanism is the same witholder versions (or at least very similar).Thanks in advanceGeorge PentsasFrom weigang_wg at 163.com Tue Apr 15 15:05:40 2003From: weigang_wg at 163.com (weigang)Date: Tue Apr 15 02:09:40 2003Subject: [Acis-alliance] Message-ID: <20030415060825.730641CBC6322@sm181.163.com>Dear Acis Alliance:I just began to build software with ACIS.I wrote a application with ACIS appwizard(AMFC) and wanted to draw lines with LineTool,but the lines disappeared after the second point was put.But the block and sphere would not disappear.How can I display the lines,arcs,circles ,etc with the 3d solids?Thank you!WeiGangFrom gp at beta-cae.gr Tue Apr 15 16:30:38 2003From: gp at beta-cae.gr (G. Pentsas)Date: Tue Apr 15 08:30:52 2003Subject: [Acis-alliance] ACIS error trapingMessage-ID: <1050409841.30917.10.camel@asterix>Hi to all, I got your answer for error traping in ACIS and although it made itmuch clearer, I cannot find a way to effectively place theapi_set_int_option("crash", TRUE) function call. No matter where I useit I can't get core written. Since this is vital for debugging (theerror has been placed deliberately to try the crash option) it doesn'tlet me continue with development. The documentation is vague and Icouldn't find any reference of what you referred to in the texts.Although unexpected results should be handled, it prevents theprogrammer from finding out the cause of the problems. Any othersuggestions? On my SGI the application is killed and the OS informs me that "theapplication has generated a trap but has signal 10 held or ignored". OnWindows it says in the debugger that "a user breakpoint has been called"from some address which I cannot follow to find out where was the lastfunction called.Thanks a lot once moreGeorge PentsasFrom zhengshu.shen at asu.edu Mon Apr 21 18:37:28 2003From: zhengshu.shen at asu.edu (shen)Date: Mon Apr 21 20:37:51 2003Subject: [Acis-alliance] Urgent help? portable ACIS applicationsMessage-ID: <3EA48EC8.AABE9FA3@asu.edu>Hello!Does anybody know how to build portable ACIS-MFC EXE application, sothat i can run this application on other machines that have no ACISinstalled at all?Thank you so much!ShenFrom akcrawford at gscad.com Mon Apr 28 12:04:01 2003From: akcrawford at gscad.com (akcrawford@gscad.com)Date: Mon Apr 28 11:05:08 2003Subject: [Acis-alliance] api_check_face_clearanceMessage-ID: <9BC689DBCB969642B931BF1D87B3E16E2C7DE5@postman.grad>I understand that api_check_face_clearance uses a faceted approximation toaid it in finding a point of miminum clearance between two faces (or a pointwhere they are closer than the specified tolerance). However, are thereturned points and distance based on the facets or on the actual geometry?In other words, if I specify a large facet tolerance, could the distance bein error up to twice that facet tolerance (in the worst case)?-------------- next part --------------A non-text attachment was scrubbed...Name: not availableType: application/ms-tnefSize: 1973 bytesDesc: not availableUrl : http://cs.columbia.edu/pipermail/acis-alliance/attachments/20030428/4d31a5e5/attachment.bin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -