自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (6)
  • 收藏
  • 关注

原创 C++ 文件压缩

//路径里不能有空格void CRARDlg::OnWinrar() { CString des,temp,path,rarpath; GetDlgItem(IDC_PATH)->GetWindowText(path); if(path.IsEmpty()) { MessageBox("请输入文件名字"); return ; } rarpath.Format("%s.rar",path.Left(path.ReverseFind('.'))); t..

2021-05-24 06:25:04 613

原创 C++ 设置文件隐藏属性

void CSetHiddenDlg::OnSet() { CString path; m_path.GetWindowText(path); CFileStatus status; CFile::GetStatus(path,status); //获取原属性 status.m_attribute |= 0x02; //追加隐藏属性 CFile::SetStatus(path,status); //设置新属性 }

2021-05-24 06:24:47 906

原创 C++ 获取文件的属性

void CFileStatusDlg::OnOpenFile() { m_hidden.SetCheck(0); m_readonly.SetCheck(0); m_archive.SetCheck(0); m_normal.SetCheck(0); m_system.SetCheck(0); m_filedir.SetCheck(0); CFileDialog log(TRUE,"文件","*.*",OFN_HIDEREADONLY,"FILE(*.*)|*.*||",NULL); .

2021-05-24 06:24:33 711

原创 C++ 获取当前路径

void CGetCurrentDirectoryDlg::OnGet() { char buf[256]=""; DWORD dw; dw = GetCurrentDirectory(sizeof(buf),buf); if(dw == 0) { MessageBox("获取路径失败"); return; } else m_path.SetWindowText(buf);}

2021-05-24 06:24:21 486

原创 C++ c函数sprintf将不同类型的数组组成字符串

char str[100]; char* p = "辛丑"; char* t = "子"; int mon = 1; int day = 1; sprintf(str, "%s 年 %d 月 %d 日 %s时", p, mon, day, t);

2021-05-24 06:24:09 183

原创 C++ CFile类是以二进制形式读写文件

void CReadWriteDlg::OnRead() { CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, "All Files(*.TXT)|*.TXT||",AfxGetMainWnd()); //构造"文件打开"对话框 CString strPath,strText=""; //声明变量 if (dlg.DoModal() == IDOK) //判断是否按下"打开"按钮 .

2021-05-24 06:23:53 1035 2

原创 C++ C函数 判断文件是否存在

void CIsExistDlg::OnJudge() { CString path, name, pathName; m_path.GetWindowText(path); //获取路径 m_fileName.GetWindowText(name); //获取文件名 if(path.Right(1)!='\\') { pathName.Format("%s\\%s",path,name); } else { pathName.Format("%s%s",path,name);.

2021-05-24 06:23:41 129

原创 C++ 指定目录查找文件

void CFindFileDlg::OnAdd() { BROWSEINFO bi; //定义BROWSEINFO结构体 char buffer[MAX_PATH]; ZeroMemory(buffer,MAX_PATH); bi.hwndOwner=GetSafeHwnd(); bi.pidlRoot=NULL; bi.pszDisplayName=buffer; bi.lpszTitle="选择一个文件夹"; bi.ulFlags=.

2021-05-24 06:23:13 809

原创 C++ 列举文件夹下的所有文件

oid CEnumFileDlg::OnEnum() { BROWSEINFO bi; char buffer[MAX_PATH]; ZeroMemory(buffer,MAX_PATH); bi.hwndOwner=GetSafeHwnd(); bi.pidlRoot=NULL; bi.pszDisplayName=buffer; bi.lpszTitle="选择一个文件夹"; bi.ulFlags=BIF_EDITBOX; bi.lp.

2021-05-24 06:22:58 437

原创 C++ 删除文件

void CDeleteMFileDlg::OnDelete() { int count=m_filelist.GetItemCount(); for(int i=0;i<count;i++) { ::DeleteFile(m_filelist.GetItemText(i,0)); } AfxMessageBox("删除成功"); m_filelist.DeleteAllItems();}

2021-05-24 06:22:32 946

原创 C++ 移动文件

void CMoveFIleDlg::OnMove() { BROWSEINFO bi; char buffer[MAX_PATH]; ZeroMemory(buffer,MAX_PATH); bi.hwndOwner=GetSafeHwnd(); bi.pidlRoot=NULL; bi.pszDisplayName=buffer; bi.lpszTitle="选择一个文件夹"; bi.ulFlags=BIF_EDITBOX; bi...

2021-05-23 18:41:34 1317

原创 C++ 文件不存在创建,存在则追加

CFile file("D:\\1.txt", CFile::modeCreate | CFile::modeNoTruncate); file.SeekToEnd(); file.Write("12345", strlen("12345"));

2021-05-23 18:38:17 1566

原创 C++在复制文件的过程中显示进度条

void CFileCopyDlg::OnPut() { if(strname.IsEmpty()) return; BROWSEINFO bi; char buffer[MAX_PATH]; ZeroMemory(buffer,MAX_PATH); bi.hwndOwner=GetSafeHwnd(); bi.pidlRoot=NULL; bi.pszDisplayName=buffer; bi.lpszTitle="选择一个文件夹"; .

2021-05-23 07:14:09 775

原创 C++ 使用CFile类实现文件的复制

void CCopyFileDlg::OnCopy() { CFile *readfile,*writefile; DWORD readlen,filelen,poslen; CString strsrc,strdes; char buf[512]; GetDlgItem(IDC_EDSRC)->GetWindowText(strsrc); //获取原文件名 GetDlgItem(IDC_EDDES)->GetWindowText(strdes); //获取目标文件名 rea.

2021-05-23 07:00:54 362

原创 C++ 通过API函数CopyFile复制文件

void CFileDemoDlg::OnBnClickedButton1(){ CString szSrc, szDest; GetDlgItemText(IDC_EDIT_SRC, szSrc); GetDlgItemText(IDC_EDIT_DEST, szDest); if (CopyFile(szSrc,szDest,true)) { MessageBox("成功"); } else { MessageBox("失败"); }}

2021-05-23 06:56:19 576

原创 C++拖拽文件到对话框

设置对话框属性接受文件属性为truevoid CFileDemoDlg::OnDropFiles(HDROP hDropInfo){ // TODO: 在此添加消息处理程序代码和/或调用默认值 int ires; char str[32]; ires = DragQueryFile(hDropInfo, 0xffffffff, NULL, 0); //获取拖动文件的个数 for (int i = 0; i < ires; i++) { DragQueryFile(hDropI.

2021-05-23 06:50:27 365

原创 C++使用GetOpenFileName选择文件

void CFilterDlg::OnButton1() { OPENFILENAME ofn; char* filter = "doc\0*.doc\0xls\0*.xls\0ppt\0*.ppt\0all\0*.*\0\0"; ZeroMemory(&ofn,sizeof(ofn)); ofn.lStructSize=sizeof(ofn); ofn.hwndOwner=this->GetSafeHwnd(); ofn.lpstrFilter=filter; //文件过.

2021-05-23 06:41:45 1260

原创 C++ 使用CFileDialog选择多个文件

void CFileDemoDlg::OnBnClickedButton1(){ CFileDialog log(TRUE, "文件", "*.*", OFN_HIDEREADONLY | OFN_ALLOWMULTISELECT, "File(*.*)|*.*||", NULL); if (log.DoModal()==IDOK) { POSITION pos = log.GetStartPosition(); while (pos!=NULL) { CString fileN.

2021-05-23 06:35:47 933

原创 c++ mfc和c库函数打开文件

​//MFC //CFile file; //if (file.Open("D:\\1.txt", CFile::modeRead)) //{ // MessageBox("打开成功"); //} //else //{ // MessageBox("打开失败"); //} //C库函数打开 FILE* fp; fp = fopen("D:\\1.txt", "r"); if (fp) { MessageBox("打开成功"); } else { Message.

2021-05-23 06:28:50 138

原创 c++ API和MFC创建文件

void CFileDemoDlg::OnBnClickedButton1(){ //API HANDLE handle = CreateFile("D:\\1.txt", 0, FILE_SHARE_READ, NULL, CREATE_ALWAYS, 0, NULL); if (handle == INVALID_HANDLE_VALUE) { MessageBox("创建失败"); } //MFC CFile file("D:\\1.txt", CFile::modeCreat.

2021-05-23 06:17:51 158

原创 C++ MDI创建浏览器

1 新建MDI应用程序,取消选择文档视图结构2 删除CChildView及相关包含3 通过类向导创建MFC类,继承CHtmlView#pragma once#include <afxhtml.h>#ifdef _WIN32_WCE#error "Windows CE 不支持 CHtmlView。"#endif // CBrowseView HTML 视图class CBrowseView : public CHtmlView{ DECLARE_DYNCREAT

2021-05-16 19:54:29 366

原创 C++ SDI创建记事本

1 新建SDI,取消文档视图结构2 删除CChildView3 通过向导添加CMainView继承CEditView 注意必须添加ENCHANGE消息映射,才能正常工作#pragma once// CMainView 视图class CMainView : public CEditView{ DECLARE_DYNCREATE(CMainView)protected: CMainView(); // 动态创建所使用的受保护的构造函数 virtual ~

2021-05-16 19:01:41 315

原创 C++ OutLook样式分割视图

1 新建SDI,取消文档视图结构2 删除CChildView3 必须通过向导创建MFC视图类继承CTreeView#pragma once#include <afxcview.h>// CLeftView 视图class CLeftView : public CTreeView{ DECLARE_DYNCREATE(CLeftView)protected: CLeftView(); // 动态创建所使用的受保护的构造函数 virtual ~

2021-05-16 15:40:16 142

原创 C++ 无文档创建分割视图

1 新建SDI项目,取消文档视图结构选项2 删除CChildView类,及相关include,编译通过3 必须在类向导中添加MFC类,继承CTreeView#pragma once#include <afxcview.h>// CLeftView 视图class CLeftView : public CTreeView{ DECLARE_DYNCREATE(CLeftView)protected: CLeftView(); // 动态创建所使用

2021-05-16 14:04:31 193

原创 C++ 无文档视图的SDI程序

1 新建MFC程序,选择单文档视图,并取消选择文档视图结构2 默认CMainFrame建的视图是CChildView,这是个普通的视图,屏蔽掉下面的代码int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)里面的// 创建一个视图以占用框架的工作区 /*if (!m_wndView.Create(nullptr, nullptr, AFX_WS_DEFAULT_VIEW, CRect(0, 0, 0, 0), this, AFX_I

2021-05-16 06:55:08 328

原创 C++ 注销关机重启

void CDemoDlg::OnBnClickedButtonLogoff(){ // TODO: 在此添加控件通知处理程序代码 if(IDNO == MessageBox(_T("肯定要注销吗?"),_T("Demo"),MB_YESNO)) { return; } //打开进程令牌 HANDLE hToken; if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hT.

2021-05-16 06:34:41 297

原创 C++ 获取系统度量

void CDemoDlg::OnBnClickedButtonSm(){ // TODO: 在此添加控件通知处理程序代码 CListBox* pListBox = (CListBox*)GetDlgItem(IDC_LIST); pListBox->ResetContent(); CString strText; strText.Format(_T("屏幕大小: %d x %d"),GetSystemMetrics(SM_CXSCREEN),GetSy.

2021-05-16 06:34:32 173

原创 C++注册表的访问

void CDemoDlg::OnBnClickedButtonCpu(){ // TODO: 在此添加控件通知处理程序代码 long lRet; HKEY hKey; TCHAR tchData[64]; DWORD dwSize; lRet = RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T("Hardware\\Description\\System\\CentralProcessor\\0"), 0, KEY_QUERY_VALUE, &am.

2021-05-16 06:34:24 159

原创 C++ 自定义消息两种方式

#define WM_MY_DEFINED_MSG (WM_USER + 101)#define MY_REGISTERED_MSG_STR _T("MY_MSG_STRING")CDemoDlg::CDemoDlg(CWnd* pParent /*=NULL*/) : CDialogEx(CDemoDlg::IDD, pParent){ m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); WM_MY_REGISTERED_MSG = R.

2021-05-15 18:50:57 691

原创 C++ 发送消息

void CDemoDlg::OnBnClickedButton1(){ // TODO: 在此添加控件通知处理程序代码 SetDlgItemText(IDC_EDT_INPUT,_T(""));}void CDemoDlg::OnBnClickedButton2(){ SetDlgItemText(IDC_EDT_INPUT,_T(""));}BOOL CDemoDlg::OnEraseBkgnd(CDC* pDC){ // TODO: 在此添加消息处理程序代码和/或调用默认.

2021-05-15 18:46:06 563

原创 C++ 跨应用程序发送消息

void CDemoDlg::OnLButtonDown(UINT nFlags, CPoint point){ // TODO: 在此添加消息处理程序代码和/或调用默认值 if(point.x >= m_rtCtrl.left && point.x <= m_rtCtrl.right || point.y >= m_rtCtrl.top && point.y <= m_rtCtrl.bottom) { m_bCapturing = .

2021-05-15 18:40:49 376

原创 C++ 窗口操作

void CDemoDlg::OnBnClickedButton1(){ // TODO: 在此添加控件通知处理程序代码 SendMessage(WM_SYSCOMMAND,SC_MAXIMIZE,0);}void CDemoDlg::OnBnClickedButton2(){ // TODO: 在此添加控件通知处理程序代码 SendMessage(WM_SYSCOMMAND,SC_MINIMIZE,0);}void CDemoDlg::OnBnClickedButton3().

2021-05-15 18:38:24 737

原创 c++ 窗口指针

void CDemoDlg::OnBnClickedButton1(){ // TODO: 在此添加控件通知处理程序代码 HWND hWnd = GetSafeHwnd(); CWnd* pWnd = CWnd::FromHandle(hWnd); CString s; s.Format(_T("pWnd = 0x%X\nthis = 0x%X\n"), pWnd, this); AfxMessageBox(s);}void CDemoDlg::OnBnClickedButton2(.

2021-05-15 18:36:33 110

原创 C++ CAnimateCtrl(动画控件)使用

void CDemoDlg::OnBnClickedButton1(){ // TODO: 在此添加控件通知处理程序代码 CFileDialog dlg(TRUE,NULL,NULL,OFN_FILEMUSTEXIST,_T("*.bmp|*.bmp||"),this); if(dlg.DoModal() == IDOK) { HBITMAP phBmp = (HBITMAP)LoadImage(NULL,dlg.GetPathName(),IMAGE_BITMAP,0,0,LR_LOADF.

2021-05-15 18:33:00 235

原创 C++ 字体对话框和颜色对话框

void CDemoDlg::OnFormatFont(){ // TODO: 在此添加命令处理程序代码 CHARFORMAT cf = {0}; cf.cbSize = sizeof(cf); m_edtContent.GetSelectionCharFormat(cf); CFontDialog dlg(cf); if(dlg.DoModal() == IDOK) { dlg.GetCharFormat(cf); m_edtContent.SetSelectionCharFo.

2021-05-15 17:46:29 244

原创 C++ 文件对话框的使用

void CDemoDlg::OnFileOpen(){ // TODO: 在此添加命令处理程序代码 CFileDialog dlg(TRUE, NULL, NULL, OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST, _T("文本文件(*.txt)|*.txt|所有文件(*.*)|*.*||"), this); dlg.m_ofn.lpstrInitialDir = _T("C:\\"); if(dlg.DoModal() == IDOK) { A.

2021-05-15 17:42:57 289

原创 C++ 访问控件的七种方式

void CDemoDlg::OnBnClickedButton1(){ // TODO: 在此添加控件通知处理程序代码 int num1, num2, num3; TCHAR ch1[12], ch2[12], ch3[12]; GetDlgItem(IDC_EDIT1)->GetWindowText(ch1, 12); GetDlgItem(IDC_EDIT2)->GetWindowText(ch2, 12); num1 = _ttoi(ch1); num2 = _tt.

2021-05-15 17:42:48 285

原创 c++ 工厂模式

#include <iostream>using namespace std;class Fruit{public: virtual void sayname() = 0;};class Banana : public Fruit{public: void sayname() { cout << "我是香蕉" << endl; }};class Apple : public Fruit{public: void sa.

2021-05-15 17:42:40 86

原创 c++ 项目太大的处理方法

设置显示所有文件和文件夹,.vs下面的ipch文件夹有可能非常大,删掉即可,其他不可以删

2021-05-14 14:30:33 602

原创 C++ 显示两种对话框

void CDemoDlg::OnBnClickedButton1(){ // TODO: 在此添加控件通知处理程序代码 CFirstDlg dlg; dlg.DoModal();}void CDemoDlg::OnBnClickedButton2(){ // TODO: 在此添加控件通知处理程序代码 CSecondDlg *pDlg = new CSecondDlg; pDlg->Create(IDD_SECOND_DIALOG,this); pDlg->Sho.

2021-05-08 15:21:34 261

Android 4高级编程(第3版)(完整书签).zip

Android 4高级编程第三版 带有完整书签,高清,很好用哦

2019-06-14

ASP.NET MVC 5高级编程 第5版(中文版带书签)

第1章入门 1.1ASP.NETMVC简介 1.1.1ASP.NETMVC如何适应ASP.NET 1.1.2MVC模式简介 1.1.3MVC在Web框架中的应用 1.1.4ASP.NETMVC5的发展历程 1.1.5ASP.NETMVC4概述 1.1.6开源发布 1.2ASP.NETMVC5概述 1.2.1OneASP.NET 1.2.2新的Web项目体验 1.2.3ASP.NETIdentity 1.2.4Bootstrap模板 1.2.5特性路由 1.2.6ASP.NET基架 1.2.7身份验证过滤器 1.2.8过滤器重写 1.3安装MVC5和创建应用程序 1.3.1ASP.NETMVC5的软件需求 1.3.2安装ASP.NETMVC5 1.3.3创建ASP.NETMVC5应用程序 1.3.4NewASP.NETProject对话框 1.4ASP.NETMVC应用程序的结构 1.4.1ASP.NETMVC和约定 1.4.2约定优于配置 1.4.3约定简化通信 1.5小结 第2章控制器 2.1控制器的角色 2.2示例应用程序:MVCMusicStore 2.3控制器基础 2.3.1简单示例:HomeController 2.3.2创建 第一个控制器 2.3.3控制器操作中的参数 2.4小结 第3章视图 3.1视图的作用 3.2视图的基础知识 3.3理解视图约定 3.4强类型视图 3.4.1ViewBag的不足 3.4.2理解ViewBag、ViewData和ViewDataDictionary 3.5视图模型 3.6添加视图 3.7Razor视图引擎 3.7.1Razor的概念 3.7.2代码表达式 3.7.3HTML编码 3.7.4代码块 3.7.5Razor语法示例 3.7.6布局 3.7.7ViewStart 3.8指定部分视图 3.9小结 第4章模型 4.1为MVCMusicStore建模 4.2为商店管理器构造基架 4.2.1基架的含义 4.2.2基架和实体框架 4.2.3执行基架模板 4.2.4执行基架代码 4.3编辑专辑 4.3.1创建编辑专辑的资源 4.3.2响应编辑时的POST请求 4.4模型绑定 4.4.1DefaultModelBinder 4.4.2显式模型绑定 4.5小结 第5章表单和HTML辅助方法 5.1表单的使用 5.1.1action和method特性 5.1.2GET方法还是POST方法 5.2HTML辅助方法 5.2.1自动编码 5.2.2辅助方法的使用 5.2.3HTML辅助方法的工作原理 5.2.4设置专辑编辑表单 5.2.5添加输入元素 5.2.6辅助方法、模型和视图数据 5.2.7强类型辅助方法 5.2.8辅助方法和模型元数据 5.2.9模板辅助方法 5.2.10辅助方法和ModelState 5.3其他输入辅助方法 5.3.1Html.Hidden 5.3.2Html.Password 5.3.3Html.RadioButton 5.3.4Html.CheckBox 5.4渲染辅助方法 5.4.1Html.ActionLink和Html.RouteLink 5.4.2URL辅助方法 5.4.3Html.Partial和Html.RenderPartial 5.4.4Html.Action和Html.RenderAction 5.5小结 第6章数据注解和验证 6.1为验证注解订单 6.1.1验证注解的使用 6.1.2自定义错误提示消息及其本地化 6.1.3注解的后台原理 6.1.4控制器操作和验证错误 6.2自定义验证逻辑 6.2.1自定义注解 6.2.2IValidatableObject 6.3显示和编辑注解 6.3.1Display 6.3.2ScaffoldColumn 6.3.3DisplayFormat 6.3.4ReadOnly 6.3.5DataType 6.3.6UIHint 6.3.7HiddenInput 6.4小结 第7章成员资格、授权和安全性 7.1安全性:无趣、但极其重要 7.2使用Authorize特性登录 7.2.1保护控制器操作 7.2.2Authorize特性在表单身份验证和AccountController控制器中的用法 7.2.3WindowsAuthentication 7.3要求角色成员使用Authorize特性 7.4扩展用户身份 7.4.1存储额外的用户资料数据 7.4.2持久化控制 7.4.3管理用户和角色 7.5通过OAuth和OpenID的外部登录 7.5.1注册外部登录提供器 7.5.2配置OpenID提供器 7.5.3配置OAuth提供器 7.5.4外部登录的安全性 7.6Web应用程序中的安全向量 7.6.1威胁:跨站脚本 7.6.2威胁:跨站请求伪造 7.6.3威胁:cookie盗窃 7.6.4威胁:重复提交 7.6.5威胁:开放重定向 7.7适当的错误报告和堆栈跟踪 7.7.1使用配置转换 7.7.2在生产环境中使用Retail部署配置 7.7.3使用专门的错误日志系统 7.8安全回顾和有用资源 7.9小结 第8章Ajax 第9章路由 第10章NuGet 第11章ASP.NETWebAPI 第12章应用AngularJS构建单页面应用程序 第13章依赖注入 第14章单元测试 第15章扩展ASP.NETMVC 第16章高级主题 第17章ASP.NETMVC实战:构建NuGet.org网站 17.11小结 附录AASP.NETMVC5.1

2018-07-09

ASP.NET 3.5动态网站开发基础教程源文件

ASP.NET 3.5动态网站开发基础教程源文件

2014-01-23

ASP.NET 3.5动态网站开发基础教程PPT

ASP.NET 3.5动态网站开发基础教程PPT

2014-01-23

21天学通C#所有源代码

21天学通C#源代码

2014-01-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除