我想问下嘘禁止想象怎么才能看在VC6.0的MFC的编辑框内输出虚数,例如a+bi。

《》其他试题
您感兴趣的《》试卷
Copyright ? jiaoyu.com Inc. All Rights Reserved. 17教育网站 版权所有 备案号:若=1-bi,其中a,b都是实数,i是虚数单位,则|a+bi|=(  )A.B.C.D.1提示:下载试题将会占用您每日试题的下载次数,建议加入到试题篮统一下载(普通个人用户:3次/天)【知识点】&&&& 类题推荐复数满足条件的复数在复平面上对应点的轨迹为(&& )A.直线B.圆C.椭圆D.双曲线已知,为虚数单位,若为实数,则的值为(&&&)A.4B.3C.2D.1设(为虚数单位),则 (&)A.B.C.D.&试题点评评分:0评论:暂时无评论暂时无评论末页使用过本题的试卷同步试卷相关知识点组卷网 版权所有扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
虚数的绝对值是怎么算出来的?比如我有个复数z=a+ab为实数 i为虚数z的绝对值是(a^2+b^2)的平方根 这是怎么推导出来的?
作业帮用户
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
不是绝对值,是模,只是采用了与绝对值一样的符号.之所以这样规定,是因为绝对值的集合意义相当于数轴上的点与原点的距离.复数由是不何虚部组成,用平面上的点表示,也可以用原点到这点的向量(向径)表示,模就这向径的长度,也可以认为这点到原点的距离,所以也用两根竖线表示,但它是复数的模,不能叫着绝对值.模的公式是规定的,不是推导的.这样规定才和距离公式相合,所以就这样规定了.
为您推荐:
其他类似问题
建立实轴虚轴的坐标系,Z(a,b)Z的绝对值的含义是向量Z的模。PS:i叫做虚数单位
扫描下载二维码下次自动登录
现在的位置:
& 综合 & 正文
VC++中可能遇到的问题收藏
T 如何用程序控制电源管理设置
Q 我们知道在电源选项 属性 里面可以设置
关闭监视器
1分钟之后,...,从不
1分钟之后,...,从不
1分钟之后,...,从不请问这些设置我怎么用程序来实现 比如我现在要把关闭监视器设成 5分钟之后 请问各位大虾,应该怎么办?是不是要调用API?如果是,应该调用什么函数?另外补充说明:如果是调出控制面板让用户自己设置,这种功能我不需要,我要的是在程序里面自动完成这些操作,不需要用户的介入!A
To update an existing power scheme, call the WritePwrScheme,
WriteGlobalPwrPolicy, or WriteProcessorPwrScheme function. Note that
changes to the active power scheme do not automatically take effect.
You must always call SetActivePwrScheme to update the active power
scheme.自己创建一个新的power scheme
(WritePwrScheme)POWER_POLICY中USER_POWER_POLICY结构VideoTimeoutAc VideoTimeoutDc是控制Display 的AC和Battery PowerPower Control Panel中的“关闭监视器”是通过 VideoTimeoutAc 来设置的,单位为秒SpindownTimeoutAc SpindownTimeoutDc控制硬盘
T 当一个USB设备和电脑连接,该USB驱动是系统自动识别的。系统如何能启动一个已经安装的程序呢? Q 这个有点类似数码相机的处理软件,当数码相机和电脑连接后,系统会自动调用一个以前安装的相机处理程序,这个是怎么作到的呢? A 把自己的程序加入可移动介质的自动播放列表
T 问个简单的VC问题 Q VC中打开文件对话框我想再增加一种类型,怎么修改那个资源字符串IDR_MAINFRAME啊,现内容是Person/n/nPerson/nPER File(*.per)/n.per/nPerson.Document/nPerson Document我想加个.txt的 A 横秋的文件对话框教程MFC Document/View documentation and enhancementsHOWTO: How to Support Two File Extensions per MFC Document Type
T 怎样通过SHGetFileInfo取得"桌面"图标? A SHGetFileInfoIShellIcon::GetIconOfITEMIDLIST* pidlDeskTif( S_OK != SHGetSpecialFolderLocation( NULL, CSIDL_DESKTOP, &pidlDeskTop ) ){return FALSE;}SHFILEINFOW fi = { 0 };if( SHGetFileInfoW( ( WCHAR* )pidlDeskTop, 0U, &fi, sizeof( SHFILEINFOW ), SHGFI_PIDL | SHGFI_SYSICONINDEX ) != 0 ){// fi.iIcon 就是桌面图标在 SYSTEM IMAGE LIST 中的序号}IMalloc* pMif( SUCCEEDED( SHGetMalloc( &pMalloc ) ) ){pMalloc-&Free( pidlDeskTop );pMalloc-&Release( );}
T 请问在一个线程中创建的CWnd指针能在另一个线程中使用吗? Q 我在Thread1中建立了一个CEdit对象:class MyClass{static CEdit wndE }然后在Thread2中使用他:UINT MyThread2(LPVOID lp){MyClass::wndEdit.GetWindowText();}居然成功了!但是书上说,一个线程不能使用另一个线程的CWnd,只能使用hwnd然后Attach(),这是怎么回事?到底一个线程能不能使用另一个线程的窗口指针 A 如果只使用其数据成员m_hWnd的话是没问题啦,但是使用其它的函数,例如GetParentFrame就可能出问题。参考蒋老大贴了自己的BLOG文章啊?那我也贴上我自己的。其实都是一个意思。楼主你自己看吧。
T 请教高手:使用AfxBeginThread()创建线程,在线程结束时能使用CloseHandle()关闭该线程的句柄对象吗? Q 程序示例代码如下:CWinThread* pThread = NULL;开启线程函数pThread = AfxBeginThread();结束线程函数WaitForSingleObject( pThread-&m_hThread, INFINITE );CloseHandle( pThread-&m_hThread ); //在调试状态下执行到这一句给出了提示信息:first chance execption in NTDLL : Invalid Handle小弟不知这是什么原因,望高手指点迷津。再
请教一个问题,就是怎样释放 pThread
,每次创建线程它都指向一个新的线程对象,而它是全局变量,这样只到程序退出前它所指向的线程对象都不会释放,而我想在一个线程结束后就能释放该线程对
象,不想让 pThread 在原先的线程对象还没释放时就又指向一个新的线程对象。谢谢了!!!A 看你是否将pThread-&m_bAutoDelete置为了true.如果置为了true,那么需要自己CloseHandle(pThread-&m_hThread);delete pT如果没有,那么pThread会自己销毁,并且在析构函数中CloseHandle的。
T 关于随机数的问题`` Q srand((unsigned)time(NULL)+100000);经常会生成相同的数,即生成的随机数序列里,常会出现几个相同的在一起,怎样才能生成更随机化的序列? A srand((unsigned)time(NULL)+100000);The time function returns the number of seconds elapsed since midnight 也就是说,在同一秒内连续两次调用time这个函数的话会得到同样的结果。用gettickcount可以获得毫秒级别的时间
T 哪位大侠有关于智能指针的资料 Q
我刚学VC+ADO,却遇到“智能指针”这个难题。而在MSDN 2001
oct版中却查不到_ConnectionPtr、_CommandPtr、_RecordsetPtr
这些资料。所以请问有哪位大侠知道智能指针的资料,请告诉我一下,我不胜感激。谢了!!! A Sample: ADOVC1 Simple ADO/VC++ Application
T 怎样清空History历史记录文件夹下的数据? Q 例如路径“C:/Documents and Settings/Admin/Local Settings/History”由于里面不是文件,所以无法用kill命令删除,请问如何用代码清除。。(以前的帖子我搜索了一下,好像没有解决的,所以不要简单粘贴以前链接,谢谢) A 利用Windows函数实现对IE的History列表的读取和删除其中的某些项:
T 请问ASF文件头的字节数是几多?? Q 能提供它的数据结构更好? A 变长。最大64K字节。参考
T 多线程调度 Q 有n多的url 用一定数量的thread依照次序下载 比如5个 先下前5个 一个线程下载结束后 接着下载下面的 这样循环利用5个thread可以这样做吗?如果可以如何做(最好有代码参考)?如果不可以 怎么做? A Check my reply to an old post "继续多线程问题--我使用CEvent进行多线称同步!"
T 如何直接从Cobject类中派生新类! Q 我在按照一本参考书说的做一个图形类的应用程序,上面需要建立一个新类,新类要以CObject类为父类,但我在Class Wizard 选择基类的列表框中却找不到CObject,请高手不吝赐教! A
When you want to create a new class with classwizard, and you want to
derive a class not listed in MFC or ATL class list, use the "generic
class" option and type the name of you class. If you're lucky, the
right headers will be added, otherwise add them yourself
T 关于类似CHM文件的适用于IE的自定义协议的开发 Q 许多软件如chm的帮助可设计自己的协议供ie控件访问本程序提供的页面,如mk:@msitstore:i:/,请哪位提供一些这方面的参考资料(包括msdn中的大致位置) 我觉得用这种方式有很多用途,比如在程序中自带帮助信息就比较方便 A
T 在vb中能否通过向其他程序控件发送WM_GETCONTROLNAME消息得到这个控件的name Q 主要想实现在vb里区分其他程序窗体里同级、同标题、同类的控件。。。。。。。用其他方法都似乎不太保险 A WM_GETCONTROLNAME仅用于获得本进程内的Winform控件名称。对于其他应用程序,可以尝试获得窗口类信息。参考
T 请教:用VC6将DSP文件导出makefile文件,可以用 cmd命令行来实现吗?。 A 写一个导出mak的宏,然后调用msdev -ex MacroName
T 如何快速的删除NNN多的小文件? Q 由于项目需要会生成许多许多(上百万个8k左右大小的文件),在删除文件的时候遇到了问题,删的特别特别的慢,目前是使用DOS模式命令删除(因为在windows下删的更慢)。 是否有好的办法?谢了 A BOOL MoveFileEx(LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName, DWORD dwFlags);
T VC下如何进行UNICODE和ANSI字符串的转换~转换函数的用法~还有比较两个字符串大小的函数和用法 A
It is very handy to include atlconv.h and use the T2OLE and OLE2T
macros with USES_CONVERSION;, but you can still call
WideCharToMultiByte and MultiByteToWideChar directly.
T ASSERT_VALID(m_pViewActive)出错是怎么回事? Q SDI程序中调用DLL中的对话框结果弹出一个断言错来:wincore.cppline:884继续跟下去在CFrameWnd::AssertValid()中,ASSERT_VALID(m_pViewActive)在这出错了,DLL中还有函数,位图资源,如果不调用DLL中的对话框,则一切正常。 A
T [急!!!,请高手关注]如何在自己的应用程序里实现远程桌面? Q 想利用WIN32的API,但却不知道该怎样调,调哪些? 同时想把远程桌面连接的窗口嵌入自己设计的窗体里,请高手指点. A 远程桌面使用的是RDP协议。你可以根据这个协议自己实现客户端参考
T 如何使用VC来更改"工作组"或"域" Q 因需要大量的重复修改机器请教高手解决,我找不到具体的WIN接口函数.另:9X系列与NT系列是否有所不同? A VC中没有内建这样的功能,你需要调用WMI脚本。搜索Visual C++ 和WMI你就可以找到在Visual C++中如何调用WMI。 方案:更改 DNS 服务器和域在企业发生重大变革时(例如,合并、收购和重组),组织的 DNS 域层次结构可能会发生改变,因而可能必须对主机进行重新配置,才能让它们在新的结构内正常运行。
在此方案中,Fabrikam, Inc. 的 IT 部门将以前位于顶级域
fabrikam.com 中的客户端分配到不同的子域中:hr.fabrikam.com、it.fabrikam.com 和
ac.fabrikam.com。各个新的子域需要为包含的客户端配置一个新的 DNS 服务器搜索顺序。各个子域的主 DNS
服务器还将成为其他两个子域的备用服务器。
此脚本使用
Win32_NetworkAdapterConfiguration 方法 SetDNSDomain() 和
SetDNSServerSearchOrder(),而没有使用 EnableDNS()。EnableDNS()
需要两个其他可选参数(可以保留为空白);前面的两个方法可以准确地设置此示例所需的参数。如有必要,您可以轻松地扩展该脚本,使之使用
SetDynamicDNSRegistration() 方法来配置主机的动态注册设置。
例如,我们经常被问及“为什么 TechNet
的脚本中心里的‘加入计算机到域’脚本在 Windows 2000 中不能用?”回答是,因为在 Windows 2000 中的
Win32_ComputerSystem 类(它是在脚本中使用的 WMI 类)不支持 JoinDomainOrWorkGroup
方法。在内置于 Windows XP 和 Windows Server 2003 的 WMI
版本中,JoinDomainOrWorkGroup 方法被添加到 Win32_ComputerSystem 类中。
T 如何将CImage对象存储到复合文档中? Q 是不是要用这个函数? CImage::Save(IStream* pStream,REFGUID guidFileType)怎么用? A #include &gdiplus.h&using namespace G
T 请问,mfc里面,如何获得控制台所传出来的参数? Q 用控制台来启动应用程序,想在后面加两个参数,mfc工程该如何接收?请大家指教 A
ANSI版本的C++程序仍然可以使用标准C的main主函数入口参数argc和argv或者WinMain函数的lpCmdLine参数。但是,这些参
数都是LPSTR类型而不是LPTSTR类型,所以不能用于Unicode版本的程序。Unicode版本的程序可以使用GetCommandLine获
得命令行字符串,以及使用CommandLineToArgvW来获得argc和argv风格的数据。
MFC程序当然也是C++程序,所以上面的方法仍然有效。一般情况下,应用程序可
以访问CWinApp::m_lpCmdLine来处理参数。为了简化这个处理,MFC也提供了命令行处理过程的封装类
CCommandLineInfo,支持了标准的命令行开关的分析。更高级的命令行参数的处理可以参考MSJ 1999年10月号,Paul
DiLascia在C++Q&A专栏中描述的CCommandLineInfoEx类( )。它通过重载CCommandLineInfo ::ParseParam,之后保存分析的结果来提供自定义命令行开关分析方式的方法。
可以用这个类来解析命令行参数从CWinApp::m_lpCmdLine即可以获得
T 如何修改WMV文件的版权信息! Q 就是我自己编写的程序已经压缩成WMV了!没有版权限制!这时我需要一个程序可以把我自己的WMV文件的版权标题等信息进行任意修改! A 参考MetadataEdit示例(MSDN)
T 请问达人VC7里如何设置双机调试? FAQ rt A
T 求如何在VC里用跳转表的方式编译swich Q 我做了一个庞大的switch,case的值是0~255乱序,希望被编译成跳转表,否则效率太低了。但不知道有没有编译选项或指令可以达到这个目的。 A switch语句通常编译成比较高效的跳转表。在我看来唯一的通用的优化是将最常用的case语句放在前面以尽量避免在跳转时跨越内存块。对于非整型分支取值,也可以用std::map来做跳转,但是需要付出一定的性能。如果分支值属于常量的话,也可以把switch换成模板template&int I&class CASE {public:static inline void f() //default{ }};class CASE&value1& {public:static inline void f(){ }};class CASE&value2& {public:static inline void f(){}};CASE&I&::f();但是分支值一般都不是常量。另外一种方法是使用循环模板:template &template &int& class T, int I&struct Root{int run(int pos) const{const T&I&& ref = static_cast&const T&I&&&(*this);if (pos== I)return ref.getValue();return T&I-1&().run(pos); }};但是1 很多不标准的编译器,例如VC,不支持循环模板2 分支值越大,循环次数越多,函数调用次数越多。
如果CASE中的处理代码需要被重载,简单的方案就是使用虚函数表,但是在分支值取值范围很大的时候虚函数表可能过于庞大,这时候类似于MFC实现的有缓存的线性查找性能可能比较高一些。
T 如何能查看到MFC内部类的源码? A 1 新建一个MFC扩展DLL工程2 添加VC的安装目录下的MFC的源文件和头文件。如果你有兴趣,可以把ATL的文件也加上3 在类视图中选择需要访问的类或者函数
T 买了本vc书。打开里面例子出的问题 Q classview information will not avalible
看不到他的类的列表。这样的例子都有自己生成的类。我怎么才可以看类的列表呢? A 复制到硬盘去掉只读属性再打开
T 关于截屏的问题 Q 我最近做了一个远程监控的程序,其它的东西都做了差不多,也能流畅地看到远程机的桌面及应用程序窗口,但当远程机处于非桌面操作状态(如XP中切换用户时),则不能看到远程机的屏幕,有没有哪位高手知怎样截取这时的屏幕? A 用OpenInputDesktop获得当前桌面参考VNC的源代码
T 怎么样在我的程序运行时,屏蔽 Ctrl +pause Break ,谢谢 Q 同时屏蔽 Ctrl+Alt +z 之类的可以用 PreTranslateMessage 达到这种效果么?A 控制台程序使用SetConsoleCtrlHandler处理CTRL_BREAK_EVENTWindows下可以捕获VK_CANCEL。如果有必要的时候可以使用键盘钩子。
T 已有两年都没能解决的问题 Q 请问如何获取WINDOWS中正在运行的可视程序的标题与图标就像(ALT+TAB)的功能一样. A 参考TaskSwitchXP Pro 2.0用API函数EnumDesktopWindows可以获得所有的顶层窗口,然后你可以通过GetWindowLong来判断窗口是否可见,如果是的话,通过GetWindowIcon就可以获得窗体的图标局柄。
T 刚学汇编的一个程序问题 Q invoke GetCommandLine;invoke StdOut,addr eax //为什么这样不行呢?.if eax!=NULLinvoke MessageBox,NULL,eax,addr szCaption,MB_OK .endif1.是不是getcommandline反回的值在eax里.用messagebox就能行.为什么stdout不行呢?2.怎么得到参数的个数?我试着用if eax&2之类的,好像没什么作用.
A 栈顶是命令行参数的个数,而之前压入的则是命令行参数的指针。为了长文件名的考虑, 还需要检查首个有效字符是否为引号 ("), 是的话, 还需要向后配对.
Masm32 中预定义了些函数的, 如 ArgCl, ArgClC, GetCL 等. 具体的源码可以参看 M32lib 目录下的相关 asm 文件的, 分别是 ClArgs.asm, ClArgsc.asm 和 Getcl,asm
T Windows Media Player谁有这个控制的编程语法 Q s要求以下功能,请给于语法问题1 一首歌的总时间,静音,恢复暂停播放问题2 WindowsMediaPlayer1_EndOfStream(ByVal Result As Long)这个事件不是播放完一首歌后调用的事件吗?为什么在这个事件里面,写代码不响应 A
T 请问vc6.0是不是也有sp2的啊?哪里有down?打了补丁后如何看一个叫MSVCRT.DLL的版本? A
界面相关:
T 从CFileDialog派生自定义Open对话框的问题 Q 我要自定义一个open对话框,除了common filedialog,添加了一些control,同时使用了hook,在hook proc中有 WM_INITDIALOG的定义,那么请问添加的control在什么地方定义,比如说我要BOOL fdex_mfc_dlg::OnInitDialog(){CFileDialog::OnInitDialog();CListBox* pLB = (CListBox*)GetDlgItem(IDC_ENV);pLB-&InsertString(-1, "Current Project");//...pLB-&SetTopIndex(0);return TRUE;
// return TRUE unless you set the focus to a control// 异常: OCX 属性页应返回 FALSE}好像不起作用了!A 文件对话框上的控件在收到WM_INITDIALOG甚至是CDN_INITDONE的时候都还不存在。最简单的解决方法是使用自定义消息BOOL CMyOpenDlg::OnInitDialog(){
CFileDialog::OnInitDialog();
PostMessage(MYWM_POSTINIT,0,0);
return TRUE;}然后在MYWM_POSTINIT的处理函数中操作文件对话框上的控件。因为使用了PostMessage,所以这个消息在之前消息队列中所有消息得到处理之后才会被处理,这时候文件对话框已经初始化完毕了。
T 怎么样实现 CEditView 的某几行文字为不可编辑吗? Q 我的 View 想每次建立的时候,自动在前几行输出内置的 文字,但是不想用户能够编辑它,可以接着这些文字下面继续编辑,这个该怎么实现??A 用richedit2.0的话可以把文字块保护起来CFE_PROTECTEDChar an attempt to modify them will cause an EN_PROTECTED notification message.
T 如何让CEdit控件属性为Read Only, 但是背景为白色而不是灰色 Q as title A WM_CTLCOLOR消息HBRUSH CEditTest::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor){HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);pDC-&SetBkColor( RGB(255, 255, 255) ); // text bkgnd}
T CPropertySheet没有合适的默认构造函数 Q 使用CPropertySheet做属性页面时,跳出如此错误;请高手指点 A CPropertySheet不知道你会用什么做标题,所以要加这个参数来指定标题。你也可以重载CPropertySheet来自动加上标题。
T CListView继承的类中OnTimer事件为何不能定时执行? Q 程序基于MFC/SDI,CTestView继承于CListView。部分代码://OnTimer事件均定义了消息映射和响应声明,响应函数如下void CTestView::OnTimer(UINT nIDEvent){...CListCtrl& lc = GetListCtrl();CString szVCTime time_cur= CTime::GetCurrentTime();szValue.Format("%02d:%02d:%02d",time_before.GetHour(),time_before.GetMinute(),time_before.GetSecond());nItem =lc.InsertItem(0,szValue);...CListView::OnTimer(nIDEvent);}Timer事件在OnCreate(LPCREATESTRUCT lpCreateStruct)中SetTimer,在OnDestroy()中KillTimer
现象:程序运行开始时在CTestView添加了两行记录,接着就没反应点击ListCtrlItem会不定期地响应,时间间隔各不一样。
问题:(1)CTestView中关于ListCtrl的初始化或者Insert操作出错?但照搬到基于MFC/CDialog的程序中,一切正常(2)CTestView接收消息是否先经由CMainFrame处理?是否需要CMainFrame接收到消息再传递给CTestView?(3)OnTimer的执行为什么断断续续? A &CListView::OnTimer(nIDEvent)究竟干了些什么里面会调用KillTimer。所以如果nIDEvent是你自己的定时事件,就不要调用默认的处理过程。
T 关于richedit的重画Q
我想给richedit里的某一个词话下划线,可是我在OnPaint()里dc.drawtext(...)就不行了,画的时候那个光标会有轨迹,要手
动使窗体重画(如最小化),那些轨迹才会消失`而且背景变成窗体的背景色了``请问richedit重画`应该是怎样画呢?有画过的说一吓`我想画的下划线可能是波浪线或直线``但是是彩色的,有的人可能说那直接将该字符串变色,那它的下划线也是彩色``可是我现在是想字体不变色,下面的线是彩色的`A bUnderlineTypeCFU_CF1UNDERLINECFU_UNDERLINECFU_UNDERLINEDOTTEDCFU_UNDERLINEDOUBLECFU_UNDERLINENONECFU_UNDERLINEWORD
T 文档视图结构,怎样实现关闭程序的时候,删除一个指定的包含有若干文件的文件夹?在线等,谢谢 Q 此文件夹是在程序的运行过程中生成的用以装载程序所用到的一些临时文件(这些文件也是运行时生成的)当程序结束后希望删除文件夹及其内部的文件最好做到彻底删除(即不是转移到回收站中)打算在View类中实现应该重载哪个函数呢?应该怎样处理呢?在线等谢谢 A
When used to delete a file, SHFileOperation permanently deletes the
file unless you set the FOF_ALLOWUNDO flag in the fFlags member of the
SHFILEOPSTRUCT structure pointed to by lpFileOp. Setting that flag
sends the file to the Recycle Bin. If you want to delete a file and
guarantee that it is not placed in the Recycle Bin, use DeleteFile.
T 如何实现,在两个RichEdit编辑框中:用鼠标选中一个编辑框中的部分内容然后拖动到另一个编辑框? A
T 怎样在资源编辑器中调整对话框大小到需要的象素点 Q 在资源编辑器中,通过拉动可以调整对话框大小,在状态条下面还可以看到一个大小指示的宽和高,问题是那个宽高值不是实际象素,怎样才能让一个对话框在资源管理编辑器中调到到需要的象素点(不用写程序的那种)。 A
T 关于openfiledialog的问题 Q 我想做一个自定义的open file dialog,想显示我自定义的列就出问题了就是说在显示成detail的风格的时候,可以显示detail风格的,比如默认的大小,种类,更新日期现在我想去掉这些列,默认显示其他的列,也就是我自定义的列A 我不知道如何控制文件夹视图的列的选择。你可以自己实现一个基于ListView的文件选择对话框。
T 求救:View类或CDialog类文件无故被删!解决者送分100!! Q 各位大虾,我在用vc编程的时候,时常会出现这样的问题:1. 当为一新建的对话框创建一个类时,按照正常步骤填写类名,并且选择CDialog类的基类时,点击ok后,停了一阵子然后它就跳出说:"添加失败",不仅如此还连主程序的view类的cpp文件或者主程序的Dlg类的cpp文件都被删除了!!害得不得不要一切重头来过,实在是非常郁闷!2. 有时是当为对话框的一个控件如按钮在类向导里设置变量时,当填好变量名选好类型后,点ok,又是过了几秒钟后说添加失败,同时电脑居然把该对话框的cpp文件都给删除了!!3.有时是当为对话框的一个控件添加点击函数时,在类向导里,点击Add Function成功后借着点击edit code时,居然又说失败,同时自动把对话框的cpp文件删除了这究竟是怎么回事?真是太烦人了!因为这个原因我不知道重做了多少个程序---全部从头开始做啊!!郁闷!!!各位大虾帮忙看看这是什么问题啊?究竟是硬件问题,还是软件问题呢?该怎么解决呢?ps.应该不是中毒,因为我用最新的norton查了几次了,而且除了在vc的这个问题上,其他的都正常.A norton杀毒工具是典型的文件隔离扫描类型,在隔离时文件不可访问,致使旧版本的Visual Studio报告文件找不到。解决的办法就是关掉norton,或者升级Visual Studio
T VC7的IDE中Properties窗口是如何做出来的? Q VC7里的Properties窗口中的属性设置窗口是怎么做的?是用listview或者treeview控件吗?怎样使得其中每个属性对应右边的一个edit控件,可以让用户来进行输入? A
T 在单文档的对话框的子视图中如何获取主文档的指针 Q 我在单文档的视图中响应菜单消息创建一个非模式对话框,接着在对话框中的OnCreate()中创建了子框架,又在框架的OnCreate()中创建了子视图,请问在子视图ChildView中如何获得文档Doc的指针?MainFrame---&Doc----&View----&DLG-----&ChildFrame---&ChildView A 可以用成员变量来传递需要访问的对象的指针。响应菜单消息创建一个非模式对话框,这里可以把文档的指针保存到对话框的成员变量接着在对话框中的OnCreate()中创建了子框架,这里可以把文档的指针保存到子框架的成员变量又在框架的OnCreate()中创建了子视图,这里可以把文档的指针保存到子视图的成员变量解几何题的时候辅助线是要自己画的。
T 如何去掉TREE控件里的表MSysAccessStorage,MSysACEs,MSysObjects........,程序是老外写的。 Q 原程序地址: 贴出TREE控件的相关代码:bool CLeftView::PopulateTree() A
// Function that gets all table names & excludes System tables and viewsvoid OpenSchemaTables(){......
T 关于vc.net的几个问题。 Q 1、使用vc.net“项目”中.net项中建立的类库能不能使用MFC,如果能使用那么编译后还是不是托管模块?其中引用到的MFC库中类是不是也编译成托管模块2、使用vc.net“项目”中用MFC建立的应用程序在修改编译属性后编译为托管代码,那么这时程序的那一部分被编译为托管代码,还是全部被编译成托管的?这个程序能不能添加对程序集的引用? A 1 可以使用MFC,但是因为很多MFC类依赖于CWinApp进行的全局MFC数据的初始化,所以建议还是用MFC向导来生成程序2 MFC的DLL是非托管的,但是可以和托管代码一起工作。托管代码中当然可以引用程序集。3 混合了非托管代码的程序很可能较难不加修改的移植到其它平台,尤其是在非托管代码包含对特定操作系统的API调用的情况下。some of my blogs also discussed this topic:示例:在MFC程序中集成.Net中的控件MFC,欢乐与痛苦
T 平台调用问题,如何用C#模拟C++结构中的联合(C#调用C++DLL)?Q 参阅文档(写的很清楚,但我的还是出错)问题是这样的:在C++DLL的接口函数中要传递一个结构,此结构中包括一个联合,我用C#来写这个结构并模拟这个联合,但老出错,请大家帮忙!C++结构声明原型typedef struct cmppe_packetcmppe_struct cmppe_packet{cmppe_headpk_/*接收到的包头信息*///结构dpl_int32_/*表明解析该包的结果*/ //无符号INT型union{//联合cmppe_deliverpk_cmppe_login_resppk_login_cmppe_submit_resppk_submit_}pk_};我用C#写的模拟:[StructLayout(LayoutKind.Sequential)]public struct cmppe_packet{public cmppe_headpk_/*接收到的包头信息*///结构/*表明解析该包的结果*/ public pk_data_struct pk_}     /// &summary&/// C#结构实现联合的方法 cmppe_packet/// &/summary&[StructLayout(LayoutKind.Explicit, Size=1000)]//public struct pk_data_struct{[FieldOffset(0)]public cmppe_deliverpk_[FieldOffset(0)]public cmppe_login_resppk_login_[FieldOffset(0)]public cmppe_submit_resppk_submit_}作为参数传递此结构是用 REF 引用 类型的。
现在在执行时出现如下错误。
其他信息: 因为格式无效,未能从程序集 esp, Version=1.0., Culture=neutral, PublicKeyToken=null 中加载类型 esp.pk_data_struct。 A Interop and Unions将[ DllImport( "api.dll", CharSet=CharSet.Ansi)]public
static extern int cmpp_recv([MarshalAs(UnmanagedType.LPStruct)]
conn_desc conn , [MarshalAs(UnmanagedType.LPStruct)] cmppe_packet
cp,char is_break,ref int seq);//@@无符号char int更改为[ DllImport( "api.dll", CharSet=CharSet.Ansi)]public
static extern int cmpp_recv([MarshalAs(UnmanagedType.LPStruct)]
conn_desc conn , IntPtr cp,char is_break,ref int seq);//@@无符号char int
然后写下列函数:private int CmppRecv(conn_desc conn, cmppe_packet cp,char is_break,ref int seq){int strusize = System.Runtime.InteropServices.Marshal.SizeOf(cp.GetType());IntPtr pp = System.Runtime.InteropServices.Marshal.AllocHGlobal(strusize);byte[] ppp = new byte[strusize];int stat = esp.cmpp_recv(conn,pp,is_break,ref seq);//从ISMG服务器接收数据包,并对接收的数据包进行解析System.Runtime.InteropServices.Marshal.Copy(pp,ppp,0,strusize);System.Runtime.InteropServices.Marshal.PtrToStructure(pp,cp);System.Runtime.InteropServices.Marshal.FreeHGlobal(pp);}最后调用stat = esp.cmpp_recv(conn,cp,'0',ref aa);更改为stat=CmppRecv(conn,cp,'0',ref aa);即可。
T 如何用c++/cli继承自己的license类 Q 我想从system.componentmodel.license继承自己的类,但是,dispose总是不行,请大家给个建议!public ref class MyLicense : public License{public:MyLicese(LicenseProvider^ owner, String^ key){this-&owner =this-&key =}
// ~MyLicense(){} &-------------这两种都不行// virtual void Dispose() override {}
property String^ LicenseKey{virtual String^ get() override{return "";}}private:LicenseProvider^String^};
上面是我的源代码。我重载dispose确实没有什么用处,但是我不重载的话,我
的类也被认为成了abstract的了,因为基类license里的dispose是个纯虚的,我必须重载啊。不然我就没办法在我的
licenseprovider的getlicense函数里gcnew 我的license类了。 A public ref class R { public: !R() { Console::WriteLine( "I am the R::finalizer()!" ); } }; 在修订版语言设计中,析构函数被内部重命名为Dispose()方法,在派生类析构函数结束之后会自动调用基类析构函数。我不知道你重载Dispose方法有何特别处理。
建议重写基类,或者使用mc++语法编写你的派生类。
T 非托管代码(VC)中如何调用用托管代码编写的DLL?????? Q 1:如何在VC中区别DLL是用.Net写的还是其他语言写的2:非托管代码(VC)中如何调用用托管代码编写的DLL3:如何在根据路径动态加载某个DLL(这个DLL可能是用.Net vb vc delphi等不同语言写的第三方提供的)后,构造在上述DLL中定义的对象(通常是窗口,而且对象的类型是已知的,例如在C#中定义的某个Form的类名),然后显示他? A 托管和非托管的dll应该是可区分的,他们的Pe格式是不一样的在工程中加入托管代码支持,将工程改为托管和非托管混合程序。OLE控件可以用CWnd::CreateControl创建。.Net控件用.Net的反射。没有通用的方法。
T 高分求助--关于.net中多线程调试的问题 Q 原来VC6做的一段代码,现在用vs2003并加入托管扩展(/CLR)后一切都原以为一切搞定,编译运行看起来都正常。没想到在调试的时候没有办法用断点停留在子线程的代码上(原来在VC6是没有问题的!!):主程序中hThread = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)T_Child,NULL,0,&dwRet);其中T_Child 函数中设了断点(注:直接执行下来是没有问题,即程序本身没有问题)。程序在执行到断点的时候确实是中断了,但是总说没有可用于当前位置的代码(这代码明明就在断点设置的地方),然后我只能停留在汇编窗口,没法单步执行,设置的监视一个都不能用,一头雾水啊。。。。。 A If your code starts giving you that error while debugging, then do this:
- Add this line to the spot where you want to start debugging:System.Diagnostics.Debugger.Break();
- compile your program. Then run it
WITHOUT debugging, or by running the executable outside of VS. I don't
know if by just having VS installed, or if you need to have VS running,
but there will be a debugger listening to debugger calls.
- When that code hits that line, it will pop up a dialog asking you what you want to do, usually with these options:New instance of Microsoft CLR DebuggerNew instance of VS.NetExsting instance of VS.Net
- pick Microsoft CLR DebuggerNow you will be jumped to your code and can step through and everything.
NOTE: If you pick either of the VS.Net instances, you will still sometimes get the "source code not available" error!This method is what you'd have to do for debugging Windows Services since you can run them from the VS IDE.
It may happen when the debugger is
unwinding the stack. And since you (in fact, anyone) don't have access
to the Framework Source code, the debugger shows that message.
T VC6编写的扩展MFC的DLL,为什么用VC7调用不了?? Q 在VC6中编写的扩大展MFC DLL中有一成员函数,在VC7应用程序中,调用后,出错,文档加载不了,但在VC6可以正常运行,不知有哪位朋友有解决办法?还请多多帮忙,解决一下! A MFC的很多类的虚函数和数据成员的数目变了,CString甚至成了模板类,不要期望旧版本的扩展DLL可以拿来就用。最好是做成WIN32的动态库。扩展动态库一般只在MFC42支持的开发工具间使用。而vc7.0,MFC42支持不了。
T 在VC6.0的Enable profiling选项在VC7.0里面如何设置? A A previous reply:
That is correct, there is no profiler shipping as part of VC 7.0. You will need to use a third party product.
The reason for that is exactly as you state, what we shipped was not of sufficient quality and good third party products exist.
Ronald Laeremans Visual C++ compiler team
T 请问在VC.NET的MFC模式下开发的对话框程序如何使用ADO.NET?多谢!! Q 在.NET模式下可以用using ...OleDB那么在MFC模式下要些什么? A MFC和.NET不是互斥的参考
ActiveX相关
T 能不能将一个ie的dll插件转换成active X组件做到自动下载并注册 Q as title A 因为网页中一般不能直接运行可执行程序(如.EXE程序),所以如果要实现一些自定义的方法,一般通过编写ActiveX控件,然后在ActiveX控件中实现所需要的功能,最终在网页中调用该ActiveX。1.使用VB或者ATL工具来实现一个Active控件,在控件中向外暴露一个方法,该方法的功能为:首先将所要安装的程序下载到用户机器上,然后启动所下载的安装程序进行安装。2.在网页中调用该控件,在所需要处理事件中(如:onload,onclick等),调用上诉ActiveX控件的方法来实现安装。
网页中调用ActiveX控件的方法如下:&object ID=”CotrolID”
CLASSID=”clsid:XXX”
CODEBASE=”http://someserver.com/XXX.cab”&&/object&其中,ID:代表网页中该控件的ID,可以通过该ID来调用控件的方法。
CLASSID:唯一代表一个ActiveX控件,指明将使用哪个ActiveX控件。
CODEBASE:如果ActiveX控件还没安装在本机上,指明可以从何处进行安装。
T 如果将插入WORD的ActiveX控件对象持久化到WORD文档中? Q 需要知道相关的技术是什么?有了解的帮助指引一下! A
T 如何得到用 ATL 作的控件的窗口句柄,试了几个都无效,怎么回事? Q
这ATL编成还真费劲,我用vs7做了个ATL控件,同时要导入一个别的绘图用的dll,但是该dll中的库函数全都需要窗口句柄,我试了控件类中的
m_hWnd,m_hWndCD,GetWindow(HWND
*phwnd)成员得到的句柄都无效,把它们的数值想办法显示出来后,发现全是0,我又用m_spInPlaceSite-&GetWindow
(&hwndParent),得到了控件的父窗体句柄,但是控件本身的句柄还是没有办法得到,弄了一天了,没有结果,太郁闷了,望高手相救。 A windowless的控件没句柄(这是ATL Full Control的默认选项)创建控件的时候在属性页中选择不透明就可以了
T 一个ActiveX的小问题 Q 我想做一个Office下的ActiveX的控件,这个控件主要功能就是可以显示一张位图,不知道具体步骤是什么,可否给一点提示. A 用ATL向导创建一个DLL,插入一个full control,创建时添加stock的picture属性,然后改OnDraw 参考 ,
T "IInputObject” : 没有与该对象关联的 GUID ——网上下的VC6的ATL代码在vc7下报这个错是怎么回事? Q 是这句报错: COM_INTERFACE_ENTRY(IInputObject) A PRB: Error C2787 When Building a Project Using ATL 3.0
T 关于#import调用自动化接口的问题!!各位大侠一定要帮忙啊!!急 Q 我用的是#import "c:/windows/system32/opcdaauto.dll" no_namespace程序:try{IOPCAutoServerPtr myServer( __uuidof(IOPCAutoServer));}catch(_com_error e){ AfxMessageBox(e.ErrorMessage()); }跳出"没有注册类别“对话框
我已经用了regsvr32 c:/windows/system32/opcdaauto.dll
请问是什么问题啊????帮帮忙啊
A 类的接口ID和CLSID可以不一样的。用#import "c:/windows/system32/opcdaauto.dll" named_guid看看生成哪些CLSID。那就用CLSIDFromProgID获得CLSID看看,或者直接用_com_ptr的构造函数HRESULT IOPCAutoServerPtr myShr=myServer.CreateInstance( __uuidof(IOPCAutoServer));//这里要的是clsid不是iid,只要找到clsid即可!试试:HRESULT IOPCAutoServerPtr myShr=myServer.CreateInstance( __uuidof(OPCServer)); //估计就是它了,你的tlh给的不全只能猜测到这里了! T SOS!如何快速的把MFC的exe文件转化为ActiveX控件!有没有这样的工具
Q 如果能提供示范性代码最好,分数不够可以加,偶有的是分数! A
于对话框的程序比较简单。可以在控件中创建一个非模态对话框,在上面放想要的控件。微软知识库文章Q187988 PRB: ActiveX
Control Is the Parent Window of Modeless Dialog
描述了这样一个示例。codeguru文章Dialog frame as an ActiveX control (
)的评论里面有一些这种实现的常见问题解答。基于Doc/View的比较复杂一点,参考
数据库相关
T Access数据库函数问题 Q 使用Access数据库,用MS Access建一个查询Table1_View,SQL语句如下:SELECT MyName, StrReverse(MyName) AS ReMyName FROM Table1 ORDER BY StrReverse(MyName)
在MS Access中运行正常,可以打开Table1_View记录集,但要在C Builder中打开这个记录集时,返回错误信息:表达式中‘StrReverse’函数未定义。
请问是什么原因?如何解决? A DAO中不支持从外部直接访问内建函数。参考
T ■■数据库结果的排列显示问题■■
Q MS SQL中 如果 select * from A where aa like '%nn% or aa like 'mm' 是否有实现的办法 使得select的结果 按照 先 like '%nn% 的结果显示完再显示 like '%mm%'? A SELECT 客户.公司名称, 客户.联系人姓名, [联系人姓名] Like "*先生" AS 性别FROM 客户WHERE (((客户.联系人姓名) Like "*先生" Or (客户.联系人姓名) Like "*小姐"))ORDER BY [联系人姓名] Like "*先生";
T 想做个IE插件,屏蔽掉“浮动广告”,从何下手? Q 最关键的是如何实现屏蔽“浮动广告”用其它浏览器虽然可以屏蔽,但总觉得还是用IE顺手 A 把绝对定位的元素都隐藏但是这样会使得gmail、微软这样的网站也不能正常使用。
T 有个问题请教IE编程高手 Q 我用WebBrower控件,用IPersistStreamInit结构获取了当前网页的源文件,但是如果该网页是框架结构,就拿不到正确的源文件了,还有表单之类的,请教有什么解决方法吗??
另一个就是如何将页面上的文字信息全部得到,比如CTRA+A复制下来粘贴到记事本里的。 A I made a copy of some paragraphs from the second article here because blogspot is inaccessible in many Chinese networks.
Retrieving the HTML of the current selection If
you want to limit the HTML to just what a user has selected, instead of
the entire document, we can use the IHTMLXxx COM interfaces. The first
thing you need to do is get access to the IHTMLDocument interface for
the current document. IWebBrowser2 gives you access using it's Document
property. The Document property returns an IDispatch interface, so we
need to QueryInterface the IDispatch interface for an IHTMLDocument
interface, like so (raw C++):
IDispatch* pDocDisp = 0;HRESULT hr = pWebBrowser-&get_Document(&pDocDisp);
IHTMLDocument2* pDoc = 0;hr = pDocDisp-&QueryInterface(IID_IHTMLDocument2, (void**)&pDoc);if (SUCCEEDED(hr)) {
pDoc-&Release();}
pDocDisp-&Release();
The IHTMLXxx interfaces follow the
W3C DOM specification used for JavaScript very closely. If your
familiar with those objects, the IHTMLXxx interface will be easy to
grasp. In fact, if you know how to do something using JavaScript, you
can duplicate it your compiled code using the IHTMLXxx interfaces.
That said, you can get the current
selection as a IHTMLTxtRange from the document element. Once you have a
text range, you can retrieve the plain text or HTML text as shown
IHTMLDocument2* pDoc = ...;
IHTMLSelectionObject* pSelection = 0;HRESULT hr = pDoc-&get_selection(&pSelection);if (SUCCEEDED(hr)) {IDispatch* pDispRange = 0;hr = pSelection-&createRange(&pDispRange);if (SUCCEEDED(hr)) {IHTMLTxtRange* pTextRange = 0;hr = pDispRange-&QueryInterface(IID_IHTMLTxtRange, (void**)&pTextRange);if (SUCCEEDED(hr)) {CComBSTR sTpTextRange-&get_text(&sText);// orpTextRange-&get_htmlText(&sText);//...pTextRange-&Release();}pDispRange-&Release();}pSelection-&Release();}
pDoc-&Release();
T 获得IE上的内容问题 Q 比如象flashget,右键点一个链接,菜单中有用flashget下载,点击后就运行了flashget下载。我也想实现这样的功能,怎么把这个链接传递到我的程序里?VB实现netant的例子我看过了,要改注册表添加菜单我也会了,就是不知道该怎么把得到的链接传到vb.net程序中去,VB的例子到vb.net中该怎么用呢? A
T 程序中能否控制IE浏览器变更浏览地址?? Q 我在VC程序中通过ShellExcute或者WinExec打开了一个浏览器并转到某个地址。那能不能够在后面的程序中还是用此窗口来打开另外一个地址呢? A 比较简单的方法是参考的方法用CoCreateInstance创建一个浏览器对象
T IE儲存檔案的問題? Q 請問有沒有辦法做到當在IE網址列輸入文件下載地址(如)後不出現檔案儲存的詢問框,就自動下載文件到指定的路徑(如c:/test.exe)呢?註:一定要通過IE下載. A 在注册表里面关掉exe文件格式的下载提示就可以了,但是应用程序不应该引入这么大的系统安全威胁
T 在VB的ActiveX控件中,如何获取当前IE的地址信息?急!!!
Q rt A How To Retrieve the URL of a Web Page from an ActiveX Control
WebBrowser相关
T WebBrowser的BeforeNavigate2事件如何添加Header啊
【上篇】【下篇】

我要回帖

更多关于 怎样才能战胜被害妄想 的文章

 

随机推荐