Sunday, February 05, 2012

Get Adobe Flash player

Blogs

Dates

Search

Page Tag Cloud

Minimize

Documents

Minimize
 TitleSize
PDSA TEMPLATE FOR WEIGHT HEIGHT98.54 KB

Comments

Re: Digital Microscope ($70) Replaces my Dermatoscope plus Canon EOS w Macro Lens & (~$4000)
I have no obtained a dig microscope following reading this. Works very well. Still takes some time to import pictures into software.
Re: Digital Microscope ($70) Replaces my Dermatoscope plus Canon EOS w Macro Lens & (~$4000)
We have now bought one to try as well. All docs in clinic have decided to get one after demoing it.
Re: Getting Growled at!
Hi Phil
DCP needs to be updated to the latest version for Growl. I have tested the MD3 and BP versions.

Other than that - I’m not sure what may be preventing Growl registering the DCP.
Perhaps firewall - the Growl app sends /receives messages via TCP, but I had no problem with growl and Norton Firewall . As it is on the local machine it should not be a problem.
Cheers
Re: Getting Growled at!
When Growl is running it doesn't notice the DCP starts up i.e. DCP is not registered with Growl. What may be blocking it?
Re: DCP Subscriptions - Soon available
Any update on how we can have non-doctors writing/contributing to care plans. Especially the AUSDRISK assessments!! At the moment, the nurses are doing AUSDRISK, but it is not being recorded in Doctor's Control Panel, and so the risk of unnecessary repetition is high.
Re: DCP Subscriptions - Soon available
Any update on how we can have non-doctors writing/contributing to care plans. Especially the AUSDRISK assessments!! At the moment, the nurses are doing AUSDRISK, but it is not being recorded in Doctor's Control Panel, and so the risk of unnecessary repetition is high.
Re: DCP Subscriptions - Soon available
please i would like to get more information about the subscription, how much it costs per year and how can i subscribe
thanks
UPDATE 2010
The k550 was retired.
I have now changed all printers over to HP 5400 dt models at the surgery. All have CISS. No problems with any of them.I was able to hunt around and find the superceded K5400 models at a rediculously CHEAP price $70-$100 at officeworks (scrounged all the stores in Victoria). I would have bought 10 at that price. Even with $130 for each CISS it is cheap.Total running cost for surgery is about $100 per year. Down from $1000+. Plus no inconvenience of replacing cartridges. I have two in my office plus a small epson for envelopes.
Re: DCP Subscriptions - Soon available
please email me

Medicine And Software

Mar 19

Written by: admin
Thursday, March 19, 2009  RssIcon

 

The execute Command is “OPEN[ExternalID]”
Where ExternalID is the external ID of the Patient
Cheers

 

// To Use --> Create new MD3DDEClient and Call Open, then Execute then Close.

using System;

using System.Collections.Generic;

using System.Text;

 

namespace MD3DDELink

{

    using System;

    using System.Runtime.InteropServices;

    using System.Threading;

    using DDELibrary;

 

    ///

    /// Summary description for DDEClient.

    ///

    public class MD3DDEClient : IDisposable

    {

        #region Delegates

 

        private delegate IntPtr DDECallback(TransactionType uType, int uFmt, IntPtr hConv, IntPtr hsz1, IntPtr hsz2, IntPtr hdata, IntPtr data1, IntPtr data2);

 

        #endregion

 

        #region DllImports

 

        [DllImport("user32.dll", EntryPoint = "DdeClientTransaction", CharSet = CharSet.Auto)]

        private static extern IntPtr DdeClientTransactionString(string pData, int cbData, IntPtr hConv, IntPtr hszItem, ClipboardFormats wFmt, TransactionType wType, int dwTimeout,

                                                                int pdwResult);

 

        [DllImport("user32.dll")]

        private static extern IntPtr DdeConnect(int idInst, IntPtr hszService, IntPtr hszTopic, IntPtr pCC);

 

        [DllImport("user32.dll", CharSet = CharSet.Unicode)]

        private static extern IntPtr DdeCreateStringHandleW(int idInst, string psz, int iCodePage);

 

        [DllImport("user32.dll")]

        private static extern int DdeDisconnect(IntPtr hc);

 

        [DllImport("user32.dll")]

        private static extern void DdeFreeDataHandle(IntPtr data);

 

        [DllImport("user32.dll")]

        private static extern int DdeFreeStringHandle(int idInst, IntPtr hsz);

 

        [DllImport("user32.dll")]

        private static extern DDEErrors DdeGetLastError(int idInst);

 

        [DllImport("user32.dll")]

        private static extern int DdeInitializeW(ref int id, DDECallback cb, int afcmd, int ulres);

 

        [DllImport("user32.dll")]

        private static extern int DdeUninitialize(int id);

 

        #endregion

 

        #region Fields

 

 

        private IntPtr _ChannelID = IntPtr.Zero;

        private int _InstanceID;

        private bool _LastTimeout;

 

        #endregion

 

        #region Constructor

 

        public MD3DDEClient()

        {

            DdeInitializeW(ref this._InstanceID, this.UselessDDECallback, 0x00008000 | 0x003c0000 | 0x00000010, 0);

 

            if (this._InstanceID == 0)

            {

                throw new Exception("DdeInitialize failed!");

            }

 

 

        }

 

        #endregion

 

        #region Public Properties

 

        public bool Opened

        {

            get { return this._ChannelID != IntPtr.Zero; }

        }

 

        public bool LastTimeout

        {

            get { return this._LastTimeout; }

        }

 

        #endregion

 

        #region Public Methods

 

        public void Close()

        {

            if (this._ChannelID != IntPtr.Zero)

            {

                DdeDisconnect(this._ChannelID);

                this._ChannelID = IntPtr.Zero;

            }

        }

 

        public bool Execute(string command, int timeout)

        {

            if (!this.Opened)

            {

                return false;

            }

 

            this._LastTimeout = false;

            do

            {

                IntPtr da = DdeClientTransactionString(command, command.Length * 2 + 2, this._ChannelID, IntPtr.Zero, 0, TransactionType.XTYP_EXECUTE, timeout, 0);

                if (da == IntPtr.Zero)

                {

                    DDEErrors e = DdeGetLastError(this._InstanceID);

                    if (e == DDEErrors.BUSY)

                    {

                        Thread.Sleep(100);

                        continue;

                    }

                    else if (e == DDEErrors.EXECACKTIMEOUT)

                    {

                        this._LastTimeout = true;

                        break;

                    }

                    else

                    {

                        break;

                    }

                }

                else

                {

                    DdeFreeDataHandle(da);

                    return true;

                }

            }

            while (true);

 

            return false;

        }

 

        public bool Open(string Service,string Topic)

        {

 

 

            IntPtr ipService = DdeCreateStringHandleW(this._InstanceID, "MDW", 1200);

            IntPtr ipTopic = DdeCreateStringHandleW(this._InstanceID, "PATIENT", 1200);

 

            this._ChannelID = DdeConnect(this._InstanceID, ipService, ipTopic, new IntPtr(0));

 

            DdeFreeStringHandle(this._InstanceID, ipService);

            DdeFreeStringHandle(this._InstanceID, ipTopic);

 

            return this._ChannelID != IntPtr.Zero;        }

 

        #endregion

 

        #region Methods

 

        private IntPtr UselessDDECallback(TransactionType uType, int uFmt, IntPtr hConv, IntPtr hsz1, IntPtr hsz2, IntPtr hdata, IntPtr data1, IntPtr data2)

        {

            return IntPtr.Zero;

        }

 

        #endregion

 

        #region IDisposable Members

 

        public void Dispose()

        {

            this.Close();

 

            if (this._InstanceID != 0)

            {

                DdeUninitialize(this._InstanceID);

                this._InstanceID = 0;

            }

        }

 

        #endregion

    }


}

 

 

internal enum ClipboardFormats

    {

        CF_NONE = 0,

        CF_TEXT = 1,

        CF_BITMAP = 2,

        CF_METAFILEPICT = 3,

        CF_UNICODETEXT = 13

    }

    internal enum DDEErrors

    {

        NOTPROCESSED = 0x4009,

        NOERROR = 0,

        BUSY = 0x4001,

        EXECACKTIMEOUT = 0x4005,

        POKEACKTIMEOUT = 0x400b,

        DATAACKTIMEOUT = 0x4002

    }

    internal enum TransactionType

    {

        XTYP_REGISTER = 0x00A0 | 0x8000 | 0x0002,

        XTYP_UNREGISTER = 0x00D0 | 0x8000 | 0x0002,

        XTYP_ADVDATA = 0x0010 | 0x4000,

        XTYP_XACT_COMPLETE = 0x0080 | 0x8000,

        XTYP_DISCONNECT = 0x00C0 | 0x8000 | 0x0002,

        XTYP_EXECUTE = 0x0050 | 0x4000,

        XTYP_REQUEST = 0x00B0 | 0x2000,

        XTYP_POKE = 0x0090 | 0x4000

    }

 

Tags:
Categories:

Tag List Return

Copyright (c) 2012 Practice Software Utilities