2k系统中可以这样的,不知道98是不是可以!
在窗体中加入combobox和两个button
你自己TRY!
我测试通过!procedure TForm1.Button1Click(Sender: TObject);
begin
  ComboBox1.Items := Printer.Printers; {populates ComboBox}
  ComboBox1.ItemIndex := Printer.PrinterIndex; {sets display to current printer}
end;procedure TForm1.Button2Click(Sender: TObject);
var
  Device: array[0..255] of Char;
  Driver: array[0..255] of char;
  Port: array[0..255] of char;
  s : array[0..255] of Char;
  hDeviceMode: THandle;begin  Printer.PrinterIndex := ComboBox1.ItemIndex;
  Printer.GetPrinter (Device, Driver, Port, hDeviceMode);
  StrCopy (s, Device);
  StrCat (s, ',');
  StrCat (s, Driver);
  StrCat (s, ',');
  StrCat (s, Port);
  WriteProfileString ('windows', 'device', s);
  StrCopy (s, 'windows');
  SendMessage (HWND_BROADCAST, WM_WININICHANGE, 0, LongInt(@s));end;