using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace ConsoleApplication34
{
class Program
{
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
public struct internet_cache_entry_info
{
public int dwstructsize;
public IntPtr lpszsourceurlname;
public IntPtr lpszlocalfilename;
public int cacheentrytype;
public int dwusecount;
public int dwhitrate;
public int dwsizelow;
public int dwsizehigh;
public FILETIME lastmodifiedtime;
public FILETIME expiretime;
public FILETIME lastaccesstime;
public FILETIME lastsynctime;
public IntPtr lpheaderinfo;
public int dwheaderinfosize;
public IntPtr lpszfileextension;
public int dwexemptdelta;
}
[DllImport("wininet.dll", SetLastError = true, CharSet = CharSet.Auto)]
public static extern IntPtr FindFirstUrlCacheEntry([MarshalAs(UnmanagedType.LPTStr)] string urlsearchpattern, IntPtr lpfirstcacheentryinfo, ref int lpdwfirstcacheentryinfobuffersize);
[DllImport("wininet.dll", SetLastError = true, CharSet = CharSet.Auto)]
public static extern bool GetUrlCacheEntryInfo([MarshalAs(UnmanagedType.LPTStr)] string lpszurlname, IntPtr lpcacheentryinfo, ref int lpdwcacheentryinfobuffersize);
public static string getcatchfilename(string url)
{
int nneeded = 0, nbufsize = 0;
IntPtr buf = IntPtr.Zero;
FindFirstUrlCacheEntry(null, IntPtr.Zero, ref nneeded);
nbufsize = nneeded; buf = Marshal.AllocHGlobal(nbufsize);
internet_cache_entry_info cacheitem;
GetUrlCacheEntryInfo(url, buf, ref nneeded);
cacheitem = (internet_cache_entry_info)Marshal.PtrToStructure(buf, typeof(internet_cache_entry_info));
string res = Marshal.PtrToStringAuto(cacheitem.lpszlocalfilename);
return (res);
}
static void Main(string[] args)
{
string str = getcatchfilename("http://profile.csdn.net/jinjazz/picture/2.jpg");
Console.WriteLine(str);
Console.Read();
}
}
}
分享到:
相关推荐
php变量缓存到文件的函数 SAVE函数有用哦。php变量缓存到文件的函数 SAVE函数有用哦。php变量缓存到文件的函数 SAVE函数有用哦。php变量缓存到文件的函数 SAVE函数有用哦。php变量缓存到文件的函数 SAVE函数有用哦。...
C语言标准函数库详解 C语言标准函数库是C语言中提供的一组预定义的函数,用于实现各种常见的操作,如输入输出、数学运算、字符串处理、时间日期处理等。这些函数库是C语言的基础组件,掌握这些函数库的使用是C语言...
#### 三、文件处理函数:操作系统文件管理的核心 文件处理函数涵盖了从文件创建、读写到关闭的整个生命周期,是操作系统与文件系统交互的基础。关键函数有: - **CloseHandle/CreateFile/CreateFileMapping/...
根据提供的文件信息,以下是一份关于“ExcelAPI网络函数库开发指南”的知识点总结: Excel API 是一个以网络功能为基础的函数库,它允许开发者在 Excel 中通过编程实现数据获取、数据处理以及与网络服务的交互等...
要实现“点击左键获取当前鼠标选中的文件的路径”,我们主要依赖于以下两个Windows API函数: 1. `SHGetFileInfo()`:这是一个用于获取文件或文件夹信息的函数,包括图标、大小、属性等。通过设置参数,我们可以让...
通过API(应用程序编程接口)函数,我们可以获取到这些缓存文件的存储位置。 首先,理解API函数在编程中的作用至关重要。API是一组预定义的函数、常量和其他资源,开发者可以调用它们来实现特定的功能,如操作系统...
从执行体程序库中的CLLogger类可知,通过缓存要写入文件中的数据,能够提高读写磁盘的性能 请编写一个文件操作的封装类,其要求如下: 需要提供open/read/write/lseek/close等函数的封装函数 该类要提供数据缓存服务...
这个压缩包可能包含了如下的常见VB函数: 1. **字符串处理函数**: - `Len()`:返回字符串的长度。 - `Mid()`:从字符串中提取指定长度的子串。 - `Left()` 和 `Right()`:分别从字符串的左侧和右侧提取指定长度...
1. 加载库文件:首先在程序中导入库文件,通常通过`LoadLibrary`函数加载动态链接库。 2. 获取函数指针:然后使用`GetProcAddress`函数获取库中所需API函数的地址。 3. 初始化接口卡:调用`CanInit`等函数,设置好...
在Windows系统中,无论是可执行程序(EXE)、动态链接库(DLL)还是驱动程序(SYS),它们都遵循PE文件格式。下面将详细讨论PE文件结构以及解析过程。 1. **PE文件结构**: - **DOS头**:PE文件起始于一个简化的MS...
从执行体程序库中的CLLogger类可知,通过缓存要写入文件中的数据,能够提高读写磁盘的性能 请编写一个文件操作的封装类,其要求如下: 需要提供open/read/write/lseek/close等函数的封装函数 该类要提供数据缓存服务...
但为了获取文件大小,我们更倾向于使用`enumerateContents(of:)`,它可以同时获取文件信息和大小: ```swift var totalSize = 0 do { try FileManager.default.enumerateContents(at: cachesDirectory) { url, ...
本压缩包“易语言源码易语言取URL本地缓存地址源码.rar”包含了一个易语言编写的程序,该程序的核心功能是获取URL(统一资源定位符)在本地的缓存地址。在深入探讨这个知识点之前,我们先来了解一下易语言的基本概念...
在Scale函数库中,`scale.mwl`文件很可能是该库的主工作文件,它包含了Scale函数的定义和实现。`.mwl`文件是MicroWin,西门子S7-200编程软件使用的源代码文件格式。打开这个文件后,用户可以查看和编辑Scale函数的...
9. **文件操作**:和头文件中的函数,如open()打开文件,read()和write()读写文件,close()关闭文件,fstat()获取文件状态。 10. **目录操作**:头文件中的函数,如opendir()打开目录,readdir()读取目录条目,...
在VC++编程环境中,获取文件属性是一项常见的任务,这包括了解文件的创建时间、修改时间、访问时间,以及文件的权限信息,如只读、存档、隐藏和系统属性。以下是一个详细的步骤介绍和相关代码示例。 首先,我们需要...
以下是一个简单的示例代码片段,展示了如何使用这些API函数: ```cpp #include #include std::string getBrowserUrl(HWND hwnd) { char urlBuffer[512]; if (GetWindowText(hwnd, urlBuffer, sizeof(urlBuffer...
- `parse_url`函数:用于解析URL并返回其组成部分的关联数组。可以用来获取路径部分。 - `basename`函数:如上所述,用于从路径字符串中获取文件名。 - `pathinfo`函数:可以返回一个关联数组,包含文件名、目录名...
在VC++编程环境中,获取桌面文件及快捷方式列表是一个常见的任务,这通常涉及到Windows API的使用,特别是文件系统相关的函数。本项目通过提供的源码,实现了获取当前用户以及所有用户桌面上的文件和快捷方式的功能...
2. 连接服务器:使用`getaddrinfo()`获取服务器的地址信息,然后用`connect()`建立连接。 3. 发送HTTP请求:构造GET请求字符串,然后用`send()`发送。 4. 接收HTTP响应:用循环接收服务器返回的数据,直到连接关闭,...