Dll创建链接
你好, 我正在尝试使用 loadlibrary api 编写一个可在另一个应用程序中使用的 dll 文件. 在我的 .h 文件中的 dll 文件中,我编写了以下代码 #include #如果定义了DLL_EXPORT#define DECLDIR __declspec(dllexport)#别的#define DECLDIR __declspec(dllimport)#万一DECLDIR void ExecuteExternalFile(int count, ...) 并在我的 cpp 文件中 #include "stdafx.h"#include #include “puttycmddll.h"#include #define DLL_EXPORT//#define DECLDIR __declspec(dllexport)void ExecuteExternalFile(int count, ...){
110 2022-07-19
编程技术问答社区
最小化应用程序时进度条工作不正常
大家好, 我正在使用 Microsoft Visual C++ 8 进行开发. 我正在将 72 张图片加载到应用程序中. 我正在尝试在我的过程进行时显示进度条.即加载图像,在此过程中,最小化当前应用程序并最大化进度条. 这不能正常工作,意味着应用程序显示一个空白区域. 我在谷歌上得到了一些信息.实现 BackGroundWorker 线程来解决这个问题. 请帮我在VC++中实现线程. 提前致谢. 解决方案 这是一篇很好的文章,讨论了 UI 应用程序中的线程: 使用工作线程[^] -PaulH 你好,保罗·海尔, 谢谢你的回复.. 我将尝试实现 Worker 线程,但我对此并不陌生.. 如果你知道 VC++ 中的实现,请帮助我.. 我将发布我的实现. 你能帮我在VC++中实现后台工作者吗? 进度条实现: 我采用了一个新对话框,为此创建了一个新类并在对话框上放置了一个进度条控件. 以下代码被插
130 2022-07-19
编程技术问答社区
获取计算机域sid
您好,我想在不使用lookupaccountname的情况下获取计算机域sid 问题是如果在域控制器关闭时计算机启动它会失败. 即使机器断开连接或域控制器关闭,我也想获取域 sid. 它是否存储或缓存在注册表中的任何位置,因为即使计算机关闭,我也可以登录域,因为用户被缓存......所以我认为机器的域 sid 也缓存在某个地方. 有没有可以给我域sid的api. 我希望它可以在 winxp 和 win7 及更高版本上运行. 解决方案 ifndef UNICODE #define UNICODE #endif #pragma 注释(lib,“netapi32.lib") #include #include #include int wmain(int argc, wchar_t *argv[]) { DWORD dwLevel = 102; LPWKSTA_INFO_102 pB
192 2022-07-19
编程技术问答社区
如何将CString转换为char数组
如何将CString转换为char数组 struct ar{char 值[10];};函数(CString 数据){ar.值=data;} 解决方案 1.CString::GetBuffer 2. (char*)LPCTSTR(your CString var) 其他一些解决方案有时会给我一些麻烦,有时会截断一些 CString,但这个很简单 &它按预期工作! {请注意 sprintf 中的大写 %S} CString z(_T("我爱CString!\r\n"));char sz[100];sprintf(sz, "%S", z); 试试看 :) : void 函数(const CString&cszData){使用转换;char* pchTmp(T2A(cszData));strcpy_s(ar.value, _countof(ar.value), pchTmp);}
912 2022-07-19
编程技术问答社区
从NTFS驱动器读取$mft文件
你好, 对于我正在协助的项目,我需要打开 $MFT(实际文件)并计算其 MD5. Windows 确实承认它的存在(即创建文件到 \\.\c:\$mft 有效)但任何尝试读取它都会返回访问被拒绝错误. 使用 FSCTL_GET_RETRIEVAL_POINTERS 尝试了一种不同的方法,该调用有效,但我找不到任何关于如何一次遍历一个集群的文件的代码示例. 一个 NTFS 解析器库[^] 是一个很棒的项目,它实际上可以做我想做的事,但它使用 GPL 许可证,所以我不能直接从它上面取下代码. 另外,我认为无论如何使用它可能有点矫枉过正. 欢迎任何信息. 谢谢. 解决方案 MFT(实际文件)并计算其MD5. Windows 确实承认它的存在(即创建文件到 \\.\c:\ mft 有效)但任何尝试读取它都会返回访问被拒绝错误. 使用 FSCTL_GET_RETRIEVAL_POINTERS 尝试了一种不同的方法,该调用有效,但我找不到任何关于如何一次遍历一个集群的文件
910 2022-07-19
编程技术问答社区
如何将字符串^转换为字符数组
我想把文本框的值转换成字符数组,所以请帮助我实际上文本框->文本将返回字符串^所以如何将它转换成字符数组 在此先感谢 解决方案 您可以使用 StringToHGlobalAnsi()[^] 方法.请参阅此方法文档中的示例,它完全进行了这种转换. 或者,CString 类提供了一个构造函数,它接受 System::String^ 类型的参数.:) 问候 PtrToStringChars 会这样做的.
268 2022-07-19
编程技术问答社区
在SDI中改变焦点
大家好, 在我的 SDI 应用程序中,我有一个向视图发送字符串的对话框.当我的图表走出屏幕时,我需要滚动它,那时(如果打开对话框)我需要关闭或给对话框“确定"以滚动视图. 有没有解决方案: 1)我们可以在对话框打开的情况下启用视图. 2)最小化对话框. 感谢任何帮助. Shiva.. 解决方案 你能把你的对话框改成无模式吗 像 VS 中的 Find&Replace 对话框一样吗?:)
106 2022-07-19
编程技术问答社区
com nmake错误LNK2001、LNK1120、U1077
你好, 作为将 32 位项目迁移到 64 位的一部分,我必须构建一个只有 .idl 文件的项目.我对 COM 编程不是很熟悉. 构建在 32 位中运行良好,但在 64 位构建中出现以下错误.(安装 64 位编译器后在 32 位上构建是骨干) 1) 错误 1 错误 LNK2001: unresolved external symbol basedataobj_ProxyFileInfo C:\workspace\cominterfaces\basedataobj_dlldata.obj 1 2) 错误 2致命error LNK1120: 1 未解析的外部 C:\workspace\cominterfaces\basedataobjps.dll 3) 错误 3致命error U1077: '"C:\Program Files\Microsoft Visual Studio 8\VC\bin\x86_amd64\link.EXE"' : 返回码 '0x460' NMAKE
430 2022-07-19
编程技术问答社区
类型从浮点转换为无符号字符*
我在这段代码中遇到的问题是当我尝试调用 WriteHeadAndBuffer(kwdId,sizeof(float),(unsigned char*)&f); 在下面的代码中,我没有得到正确的值(不知道它是 unicode 还是垃圾)在类型转换 (unsigned char*)&f 之后. 是否可以像这样将 float 类型转换为 unsigned char* ... 我用的是vs2008. void CQ3DStreamFile::Write(const 无符号 long kwdId,const char* 关键字,float f){if (!CheckStream(kOpenedWrite))返回;if (m_Binary){WriteHeadAndBuffer(kwdId,sizeof(float),(无符号 char*)&f);}其他{doWriteIndent();fprintf(m_File,"%s\t%s\n",keyword,STRFLOAT(f));}}
926 2022-07-19
编程技术问答社区
如何在SDI中访问弹出菜单数据
大家好, 我有一个 SDI 视图应用程序,因为我在 RButtonDown 中显示了一个自定义弹出菜单.现在我的问题是,我可以访问该菜单中的数据,这意味着我需要从列表中获取选定的数据(弹出菜单)和把它放在视图中.我需要一些帮助.. Shiva.. 解决方案 你的意思是所选项目的标题(字符串)吗?:) 好的. 资源.h #define IDS_RED 10000 #define IDS_GREEN 10001 #define IDS_BLUE 10002 #define IDR_POPUP_COLOR 20000 你的app.rc STRINGTABLE IDS_RED "Red" IDS_GREEN "Green" IDS_BLUE "Blue" BEGIN END IDR_POPUP_COLOR MENU BEGIN PO
100 2022-07-19
编程技术问答社区
从CScrollView向CFormView发送消息
大家好, 在我的 SDI 应用程序中,View 有两个窗格(CScrollView、CFormView),而且我正在使用 CSplitterWnd 拆分 Window.现在我需要从表单发送一个字符串到 view.以前我使用以下代码来获取视图从对话框中, CFrameWnd* pFrame = (CFrameWnd*)AfxGetMainWnd(); CView* pCombo1 = pFrame->GetActiveView(); 但这与对话框和视图之间的通信正常工作,是否需要更改这些行才能从表单中获取视图, 需要你的指导, Shiva., 解决方案 另见:) : CWnd* CSplitterWnd::GetPane(int iRow, int iCol) const; 当您的表单视图尝试向滚动视图发送消息时,表单视图很可能是活动视图 - 这就是您的消息出错的原因地点. 我做了一个使用大量视图的应用程序 - 有时在拆分器中,有时不在.如
152 2022-07-19
编程技术问答社区
如何使用c++编写HTTPS客户端。
我知道我们可以在 VC 中使用 CHttpFile 来编写 HTTP 客户端.我想用 cpp 写一个 HTTPS 客户端.谁能帮帮我? 解决方案 你可以用Wininet 请看这篇文章[^] 了解更多信息
1250 2022-07-19
编程技术问答社区
SDI应用程序中的按钮
大家好, 我想在我的 SDI 应用程序中澄清一件事.我在 SDI 中有一个按钮.我知道在基于对话框的应用程序中执行操作很容易,但是是否可以在 SDI 中单击按钮时产生事件.我在 SDI 中创建了一个按钮,如下所示, CButton *pButton; pButton = new CButton; //OnInitialUpdate() pButton->Create("&Sub",WS_VISIBLE,CRect(782,682,806,716),this,0x302); 如何对按钮单击进行操作(如更改椭圆颜色、背景颜色)?. Shiva.. 解决方案 试试看 :) // resource.h #define IDC_YOUR_BTN 0x302 // yourview.cpp BEGIN_MESSAGE_MAP(CYourView, CBaseOfYourView) ON_COMMAND(IDC_YOUR_BTN, OnYourButtonClick
124 2022-07-19
编程技术问答社区
如何在MFC/ATL中写入时锁定/解锁文本文件?
你好; 我有一个用于基于测验的字符串比较的 MFC 应用程序,该应用程序需要用户输入.此用户输入在应用程序执行期间写入文本文件.一旦应用程序使用密码终止,我希望此文件被锁定.换句话说,玩测验的用户应该无法在玩测验后打开文件.这就像对于每个问题,字符串应该附加在下一行并且文件被锁定,当下一行要写入时,文件写入被解锁并且写入字符串然后被锁定. 是否有一些可能的解决方案. 解决方案 ufareed 写道:有没有一些可能的解决方案. 尝试考虑不同的方法. 不使用文本文件,而是使用其他文件格式并加密数据怎么样?无需尝试使用机器的文件系统玩棘手的游戏,并实现您明显的真实目标,即阻止用户修改他过去的答案. ufareed 写道:该文件格式是什么?.docx?? 我没有想到特定的第 3 方格式. 我想到的一种可能性是某些数据库允许您创建加密数据库.我相信 MS Access 和 SQLite 都有这样的能力. 我在想的另一件事就是发明你自己的.以二进制模式
162 2022-07-19
编程技术问答社区
在使用VC 9.0的PC上运行基于VC8.0的MFC构建时出现问题
我使用 VS2005 (Windows XP) 在发布模式下构建了一个 MFC 应用程序,但是当我在使用 VS2008 的 PC (Windows 7) 上运行此 exe 时,它​​无法运行.它给出了这个错误: 应用程序无法启动,因为它并排配置不正确.请查看应用程序事件日志或使用命令行 sxstrace.exe 工具了解更多详细信息. 可能是什么原因? 另外,在没有安装某些版本的 Visual Studio 的 XP/Windows 7 的 PC 上运行 MFC 应用程序通常有什么要求? 期待您的建议. 解决方案 我认为您必须将 VC++ 2005 运行时可再发行组件安装到目标计算机.您可以从 http://www.microsoft.com/downloads/details.aspx?familyid=32bc1bee-a3f9-4c13-9c99-220b62a191ee&displaylang=en 我知道 VC++ 2005 再分发包是在没有 VS
170 2022-07-19
编程技术问答社区
如何从vc++在outlook中添加额外的菜单项?
如何在 vc++ 的 Outlook 中添加一个额外的菜单项?如果我在outlook中右键单击邮件,就会出现回复,replyall..等选项, 1) 我必须插入我的自定义菜单项添加到我的数据库选项, 2) 点击这个应该会弹出一个窗口,并从邮件中获取信息并推送到数据库中. 解决方案 您的问题没有快速答案.MAPI 是一个复杂的 API.没有多少人愿意去学习它.我需要使用它已经有好几年了. 您可能想从这里开始,Outlook 2010:MAPI 参考. 然后从 Microsoft 下载 SDK 并找到与您想要完成的任务类似的示例,并根据您的需要进行修改.
146 2022-07-19
编程技术问答社区
在其他计算机上运行VC++应用程序。
嗨 我用vs2005写了一个vc++程序,想在其他电脑上运行.我的程序有两个部分:GUI 和 DLL 当我在其他计算机上运行程序时,出现了一些错误,例如“Could Not Find Module, dll not found ...". 我安装了vcredist.和目标机器上的windowsinstaller3.1和dotnetfx,但存在错误. 请帮帮我.:( 解决方案 除非你使用 C++/CLI,否则你不需要安装 .net.如果你需要我们的帮助,你需要告诉我们实际的错误消息,所以我们知道它找不到什么,并解释为什么你认为它在那里(它是在寻找 MFC,它是在寻找你写的 dll,还是什么?) 你好, 感谢您的回复. 我的程序使用了 Direct3D,当我安装 DXRedist 时.问题解决了. 谢谢.
232 2022-07-19
编程技术问答社区
在dhtml对话框中为退出框创建子类
我有 dhtml 对话框 我想对编辑框进行分类. 如何实现? 解决方案 嵌入式浏览器窗口没有子窗口 将它们中的任何一个子类化,- Spy++ 说 :)
74 2022-07-19
编程技术问答社区
如何使用VC检测远程系统防火墙是否打开++
如何使用VC++检测远程系统防火墙是开启还是关闭 解决方案 如果你坐在internet边看,你很有可能会永远不知道它是否已正确配置. 许多面向互联网的地址/端口不会响应任何 ping 请求等,或承认存在.如果他们确实确认了,那只是向潜在的黑客宣传那里有“东西". 例如,访问 http://www.grc.com/[^] 按照指向 ShieldsUp 的链接并输入您的互联网 IP. 首先, DaveAuld 有一个很好的答案.如果通过互联网访问计算机,则其访问很可能会受到路由器或网关的限制. 但是,如果计算机通过调制解调器连接,直接链接到互联网(许多大学都是这种情况)或在您家中的本地网络和您懒得去看的隔壁房间中,那么您可以考虑使用代码来查找. 然后你遇到了下一个障碍:没有明确的方法来判断是否有防火墙在运行,他们不会做广告或任何事情,而且有很多不同的行为方式不同,但他们会拒绝你访问一些其他情况下通常可用的功能. 几乎所有防火墙都会阻止回显请求(ping),
140 2022-07-19
编程技术问答社区