#include #include void CopyFileToClipboard(const char* filePath) { if (OpenClipboard(NULL)) { EmptyClipboard(); HGLOBAL hMem = GlobalAlloc(GMEM_MOVEABLE, strlen(filePath) + 1); if (hMem != NULL) { char* pBuf = (char*)GlobalLock(hMem); if (pBuf != NULL) { strcpy_s(pBuf, strlen(filePath) + 1, filePath); GlobalUnlock(hMem); SetClipboardData(CF_TEXT, hMem); } } CloseClipboard(); } } void PasteFileFromClipboard() { if (IsClipboardFormatAvailable(CF_TEXT)) { if (OpenClipboard(NULL)) { HANDLE hData = GetClipboardData(CF_TEXT); if (hData != NULL) { char* pBuf = (char*)GlobalLock(hData); if (pBuf != NULL) { FILE* file; if (fopen_s(&file, pBuf, "r") == 0) { char buffer[1024]; while (fgets(buffer, sizeof(buffer), file) != NULL) { printf("%s", buffer); } fclose(file); } else { printf("Failed to open the file.\n"); } GlobalUnlock(hData); } } CloseClipboard(); } } else { printf("CF_TEXT format not available in clipboard.\n"); } } int main() { // クリップボードにファイルのパスをコピー const char* filePath = "C:\\Users\\SEEDAGX\\source\\repos\\Clipboard\\Clipboard\\Clipboard.c"; CopyFileToClipboard(filePath); // クリップボードからファイルの内容を取得してコンソールに表示 PasteFileFromClipboard(); return 0; }