Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 7 odgovora
  • 2.341 pregleda

Najnovija ↓

clipboard iz dll-a 20.10.2010. u 20:58 · pre 195 meseci #1
koristim f-je SetClipboardViewer() i ChangeClipboardChain().e sad kad ih pozivam iz aplikacije sve je u redu jar kao parametar stavim Self.Handle.medjutim sada mi je potrebno da napisem dll koji ce pozivati iste al nzm sta da stavim kao parametar?
hvala
Re: clipboard iz dll-a 21.10.2010. u 13:34 · pre 195 meseci #2
> koristim f-je SetClipboardViewer() i ChangeClipboardChain().e sad kad ih pozivam iz aplikacije sve je u redu jar kao parametar stavim Self.Handle.medjutim sada mi
> je potrebno da napisem dll koji ce pozivati iste al nzm sta da stavim kao parametar

Napravi novi HWND, možeš koristiti AllocateHWnd.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Re: clipboard iz dll-a 21.10.2010. u 14:36 · pre 195 meseci #3
niije mi jasno za sta sluzi taj TWndMethod,parametar od AllocateHwnd?jel moze neki primer?
hvala
Re: clipboard iz dll-a 21.10.2010. u 19:07 · pre 195 meseci #4
> niije mi jasno za sta sluzi taj TWndMethod,parametar od AllocateHwnd?jel moze neki primer?

Pogledaj Clipbrd.pas.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Re: clipboard iz dll-a 24.10.2010. u 19:30 · pre 195 meseci #5
kompajlira ga ali ne registruje nista..evo kod pa ako mozes da skontas u cemu je stvar?
Code:

uses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,Clipbrd,ShellApi, StdCtrls;

type
  TAllocWndTest = class(TObject)

  private
    FWndHandle : HWND;
    procedure WndProc(var Msg: TMessage);

  public
    constructor Create;
    destructor Destroy; override;
    property WindowHandle: HWND read FWndHandle;
  end;

var
  fNextViewer,hWndNext, Handler: HWND;
  FOnChange : TNotifyEvent;
  FAllocWin : TAllocWndTest;

constructor TAllocWndTest.Create;
begin
  FWndHandle := AllocateHWnd(WndProc);
end;

destructor TAllocWndTest.Destroy;
begin
  DeAllocateHWnd(FWndHandle);
  inherited Destroy;
end;

procedure TAllocWndTest.WndProc(var Msg: TMessage);
begin
  Msg.Result := DefWindowProc(FWndHandle, Msg.Msg, Msg.wParam, Msg.lParam);
end;

function GetAsHandle(Format: Word): THandle;
begin
  Clipboard.Open;
  try
    Result := GetClipboardData(Format);
  finally
    ClipBoard.Close;
  end;
end;

procedure WMChangeCBChain(var Msg: TMessage);
begin
  if HWND(Msg.WParam) = fNextViewer then
    fNextViewer := HWND(Msg.LParam)
  else if fNextViewer <> 0 then
    SendMessage(fNextViewer, WM_CHANGECBCHAIN,
      Msg.WParam, Msg.LParam);
end;

procedure WMDrawClipboard(var Msg: TMessage);
var
   f: THandle;
   buffer: Array [0..MAX_PATH] of Char;
   i, numFiles: Integer;
begin
  begin
if ClipBoard.HasFormat(CF_TEXT) then
  begin
    ShowMessage(Clipboard.AsText);
  end;
  if fNextViewer <> 0 then
    SendMessage(fNextViewer, WM_DRAWCLIPBOARD,
      Msg.WParam, Msg.LParam);
end;
end;

procedure RunClip; stdcall;
begin
  FAllocWin := TAllocWndTest.Create;
 fNextViewer := SetClipboardViewer(FAllocWin.WindowHandle);
end;

procedure StopClip; stdcall;
begin
  ChangeClipboardChain(FAllocWin.WindowHandle, fNextViewer);
  FreeAndNil(FAllocWin);
end;

exports
RunClip, StopClip;
end.
Re: clipboard iz dll-a 24.10.2010. u 20:40 · pre 195 meseci #6
> kompajlira ga ali ne registruje nista..evo kod pa ako mozes da skontas u cemu je stvar?

Ne vidim nigde da handluješ clipbrd poruke, imaš procedure ali se one nikada ne pozivaju. Takođe ne proveravaš da li su pozivi funkcija uopšte uspeli, SetClipboardViewer će vratiti 0 ako registracija nije uspela.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Re: clipboard iz dll-a 24.10.2010. u 23:32 · pre 195 meseci #7
Citat:
savkic: 
Ne vidim nigde da handluješ clipbrd poruke, imaš procedure ali se one nikada ne pozivaju

kako to da uradim?
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme