Форум программистов, компьютерный форум CyberForum.ru

Незнаю как вставить файл из буфера обмена...надеюсь на помощь - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Написание интерпретируемого языка программирования http://www.cyberforum.ru/cpp-beginners/thread347523.html
Короче, я хочу овладеть языком Си и написать на нем свой интерпретируемый язык программирования %-) Но к сожалению, сейчас моих знаний не хватает даже на написание токенайзера, что меня не радует. Посоветуйте, какие задачи решать, какие алгоритмы реализовывать, что бы в конце-концов прийти к своей цели. П.С. Заранее хочу сказать, что готовые решения типа Флексов, Бизонов и т.д. предлогать не...
C++ Красно-чёрное дерево Здравствуйте! мне нужно создать красное-чёрное дерево...посоветуйте простой понятный учебник или код с объяснениями...заранее спасибо http://www.cyberforum.ru/cpp-beginners/thread347516.html
Перегрузка внешней функции операции "operator=" C++
1) Возможна ли перегрузка внешней функцией операции "operator="? Чтобы скажем выполнить нечто: int = объект 2) Компилятор (mingw) при попытки объявить перегрузку внешней функции - ругается что функция должна быть не статичной? Хотелось бы понять контекст этого ошибки, то есть функция "operator=" определяется как статическая?
C++ Непосредственная запись данных в файл до его закрытия
пока файл не закроешь после записи - новые данные там не появятся ( вроде кэширование windows в этом виновато, хз), чтоб "обновить" файл приходится переодически его просто закрывать и сразу открывать заново, - может есть альтернатива? (вроде write_file_now!() в обход кэширования?) надо чтоб другие могли читать содержимое файла, тк специально открываю его через _fsopen
C++ Аналог ExtFloodFill для GDI+ http://www.cyberforum.ru/cpp-beginners/thread347507.html
Добрый день! У меня вопрос по GDI+. В библиотеке GDI+ есть заливка определенных стандартных областей (GdipFillRectangle,GdipFillPolygon и пр.), то есть тех, размеры которых заранее определяются и передаются для заливки в функции. К примеру я нарисовал с помощью функций GdipDrawBezier что-то типа этого : http://www.cyberforum.ru/attachment.php?attachmentid=94226&stc=1&d=1314964244 Как...
C++ Использование кнопок на тулбаре в общем такие дела, я достал HWND тулбара и достал ID его кнопок (подопытными были QIP infium и DjVu ридер) теперь не могу че-либо сделать с кнопками, например я посылаю сообщение о нажатии - анимация нажатия есть, но самого нажатия не происходит. а когда пытаюсь получить инфо о кнопке , оно не достаётся... вот с этим то и прошу помочь. HWND hGlob=0; // Main Window HWND hGlobTB=0; //... подробнее

Показать сообщение отдельно
Mcray
0 / 0 / 0
Регистрация: 15.12.2010
Сообщений: 36
02.09.2011, 18:15     Незнаю как вставить файл из буфера обмена...надеюсь на помощь
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
//---------- Сама программа -----------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
#include <vcl\Clipbrd.hpp>
#include "Unit1.h"
#include "CopyFilesToClipboard.cpp"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
vector <AnsiString> ListFile;           //создаём масив
TClipboard *clip;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   ListFile.push_back("E:\\new  2.txt");   //запалняем
   CopyFilesToClipboard(ListFile);         //копируем в буфер :)
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
 
}
//---------------------------------------------------------------------------
//А вот файл копирования файла в буфер
//---------------------------------------------------------------------------
#ifndef COPYFFILES_TO_CLIPBOARD_CPP
#define COPYFFILES_TO_CLIPBOARD_CPP
//---------------------------------------------------------------------------
#define NO_WIN32_LEAN_AND_MEAN
#include <Clipbrd.hpp>
#include <vector>
#include <string>
#include "Unit1.h"
using namespace std;
//---------------------------------------------------------------------------
typedef struct _DROPFILES
{
    DWORD pFiles; // offset of file list
    POINT pt;     // drop point (coordinates depend on fNC)
    BOOL fNC;     // see below
    BOOL fWide;   // TRUE if file contains wide characters,
                  // FALSE otherwise
} DROPFILES, FAR * LPDROPFILES;
//---------------------------------------------------------------------------
bool CopyFilesToClipboard(vector <AnsiString> &ListFile)
{
   vector<AnsiString>::iterator It;
   //открываем буфер
   if(!OpenClipboard(Application->Handle)) return false;
   //очищаем буфер
   EmptyClipboard();
   //Определяем размер
   int SizeLine(1);
   for (It=ListFile.begin();It!=ListFile.end();++It)
      SizeLine+=(*It).Length()+1;
   //Выделяем память
   HGLOBAL  hGlobal = GlobalAlloc(GMEM_SHARE|GMEM_MOVEABLE|GMEM_ZEROINIT,
                                            sizeof(DROPFILES) + SizeLine);
   if (!hGlobal) return false;
   //Создаем структуру
   DROPFILES *MyDropFiles = (DROPFILES*)GlobalLock(hGlobal);
   //записываем данные в структуру
   SizeLine = MyDropFiles->pFiles = sizeof(DROPFILES);
   for (It=ListFile.begin();It!=ListFile.end();++It)
   {
      strcpy((char*)MyDropFiles + SizeLine, (*It).c_str());
      SizeLine+=(*It).Length()+1;
   }
   GlobalUnlock(hGlobal);
   //записываем данные в буфер
   if (!SetClipboardData(CF_HDROP, hGlobal)) return false;
   //закрываем буфер
   CloseClipboard();
   return true;
}
//---------------------------------------------------------------------------
#endif
А как из буфера незнаю Помогите пожалуйста.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru